一句话总结
Canvas 是 ChatGPT 的分屏编辑器:文档或代码文件在右边的面板里,聊天留在左边。选中一段文字或一个函数,对着选区提要求,模型就只改那一块,而不是把整段回复重新生成一遍。它给每份文档保留版本历史,还有一个红/绿的”显示改动”对比视图。截至 2026 年 6 月,Canvas 在所有套餐上都能用(Free、Go、Plus、Pro、Team、Enterprise、Edu),覆盖网页端、Windows/macOS 桌面应用和手机端。先在聊天里起稿,草稿值得留下时再切到 Canvas,并且永远从选区开始改。
这篇讲什么
在聊天窗口里改一篇 1200 字的稿子是折磨。每轮模型都把整篇重写一遍,你根本看不出哪段变了,真正想盯的那段还会被后面的对话滚走。Canvas 改变了这件事的形态:文档变成右边一个一直在的对象,你可以对模型说”只改这一段”,它不会再把整篇拿去重生。
这篇适合那种在 ChatGPT 里写稿或重构、被纯聊天模式撞墙撞烦了的人。它会讲清楚 Canvas 到底怎么打开、怎么把修改限定住让模型别再碰你没选的段落、版本历史怎么工作,以及内置快捷操作里哪些值得用。
这篇适合谁看
打磨稿子的写作者、重构 200 行函数的工程师、来回迭代一页纸的 PM,以及任何已经在 ChatGPT 和 Google Doc 之间来回复制粘贴十几次的人。一个经验法则:如果你的产出只有一段,就留在聊天里;如果产出超过半页、还要改三轮以上,就切到 Canvas。
什么时候适合用
- 改 400 字以上的稿子,想做段落级编辑而不是整篇重写。
- 重构一段代码,需要函数签名在多轮里保持稳定。
- 任何想对比版本的任务,因为 Canvas 给每份文档都留版本历史。
- 和模型一起搭结构:先列大纲,再按节扩写,整个过程大纲不丢。
怎么打开 Canvas(四种方式)
ChatGPT 检测到长文档或编码任务时会自动打开 Canvas,但自动判断并不稳,所以知道怎么手动强开很有用。截至 2026 年 6 月,有四种可靠方式:
- 在输入框里输入
/canvas,或者直接说:“用 canvas 打开这个” / “开一个代码 canvas”。 - 点输入栏里的工具图标(那个像一盒小物件的图标),选 Canvas。
- 把一段文字或代码粘进输入框,用输入框右上角出现的 open in canvas 快捷入口。
- 指着某条已有的回复,让模型”把你上一条消息用 canvas 打开”。
一开始就想清楚这是写作 Canvas 还是代码 Canvas。代码模式会露出开发者快捷操作(审查、加日志、加注释、修 bug、转语言);写作模式会露出长度和阅读难度的调节。进 Canvas 之前先把参考资料备齐,进了文档视图,再贴大块参考材料就比较别扭。
选对模型
截至 2026 年 6 月,ChatGPT 默认是 GPT-5.5,模型选择器里有 Instant、Thinking、Pro 三档。在 Canvas 里:
| 任务 | 模型 / 模式 | 为什么 |
|---|---|---|
| 结构性重写、长文重组 | GPT-5.5 Thinking | 大改时能多保留一些周围上下文 |
| 常规段落和代码编辑 | GPT-5.5 Instant | 快,且对选区边界保持得不错 |
| 快速语法/语气润色 | GPT-5.5 Instant | 润词没必要花推理 token |
| 长文件里的深度重构 | GPT-5.5 Pro(Pro 套餐) | 应付顽固重构时的应用内上下文余量最大 |
Plus 的应用内上下文大约相当于 320 页;完整的 100 万 token 应用内上下文只在 200 美元的 Pro 档才有。如果一份 Canvas 文档长到改动开始跨边界溢出,问题在文档而不在模型,把它拆开。
具体步骤
-
**先在聊天里起稿。**大纲和粗稿在聊天里搞定,这里扔掉一版几乎不花成本。
-
草稿值得留下时切到 Canvas:
把这版草稿用 canvas 打开,我要按段落改。 -
选中(高亮)你想改的那段,再对选区提要求。也可以点行内的批注图标,整块抓下来:
把这一段精简约 30%。保留"1200 字稿子"那个例子。 不要碰前后的段落。 -
代码 Canvas,明确写出函数边界:
把 parseTransactions 这个函数从两次循环改成一次。 签名和返回类型不变。 不要碰它下面的辅助函数。 -
**用版本历史对比。**文档顶部的箭头可以逐版回退;点 **显示改动(Show changes)**图标,删除显示成红色、新增显示成绿色。一版改丢了重要东西,就回滚到上一版,别让模型”凭印象”补回来。
-
把终稿复制出去到你真正要发的文档里。Canvas 没有批注线索、没有 track changes 审阅流、也没有实时协作,别把它当成要交付的源文件。
内置快捷操作,哪些配得上一用
Canvas 自带一组预设快捷按钮。大多数看情况,少数几个是真有用。
写作快捷操作
| 快捷操作 | 作用 | 结论 |
|---|---|---|
| Suggest edits | 批注式的行内建议,可逐条采纳 | 审别人的稿子时有用 |
| Adjust length | 从最短到最长的滑块 | 方便,但限定范围的 prompt 控制更细 |
| Reading level | 从幼儿园到研究生的滑块 | 把一篇说明改投给不同读者时好用 |
| Add final polish | 语法、清晰度、一致性扫一遍 | 当收尾可以,别当主力编辑 |
| Add emojis | 在文中撒表情符号 | 正式文案直接跳过 |
代码快捷操作
| 快捷操作 | 作用 | 结论 |
|---|---|---|
| Review code | 对逻辑和性能给行内建议 | 最有用的代码快捷操作 |
| Add logs | 插入打印/日志语句 | 准备调试时方便 |
| Add comments | 给代码加注释 | 省着用,注释过多就是噪音 |
| Fix bugs | 检测并修补问题代码 | 之后一定要重新跑,别盲信 |
| Port to a language | 转成 JavaScript、TypeScript、Python、Java、C++ 或 PHP | 当初稿翻译可以,别当成最终移植 |
一份让 Canvas 修改保持外科手术式的 prompt
只修改高亮的那段文字。约束:
- 周围段落不要动。
- 保留例子、数字,以及紧接着这段的下一句的句式。
- 如果一处修改必须牵扯到邻近段落,先停下来问我,
不要自己动。
这是用 Canvas 最有效的一个改进,能显著减少模型”好心”重写你没想动的段落。
完成后检查
- 打开 显示改动 读 diff。如果你看不出改了什么,说明改的范围太大了。
- 重读被改段落的前后两段,Canvas 会偷偷把改动溢出到边界外。
- 代码跑一下。内嵌的审查替代不了实际执行。
- 确认链接、引用、数字还在。这些东西在 Canvas 里比在纯聊天里更容易掉。
怎么复用这套流程
- 存一份
canvas-edit-prompts.md,把最常用的 5 条选区 prompt 写下来:精简、扩写、调语气、加例子、核这段事实。 - 重复出现的文档类型(周报、release notes、复盘)准备一份起步 Canvas 模板,每次复制再改,不要每次空白起步。
- 代码重构按文件各开一个 Canvas。跨文件重构是 Canvas 上下文开始漏的地方。
容易踩的坑
- **还没草稿就直接进 Canvas。**空白文档模式起的稿比聊天模式更糟。
- **不选中就直接改。**无范围的 prompt 会重写整篇,悄悄丢掉你想留的东西。
- **把 Canvas 当字处理器用。**没有批注线索、没有 track changes、没有真正的协作。改完复制到 Docs 或 Notion。
- **拿润色的心态去做结构性改动。**大重组用 GPT-5.5 Thinking;Instant 在重度编辑时保留的上下文更少。
- **不看版本历史。**两轮前那句好句子丢了,直接回滚,别让模型”回想一下”。
- **把 4000 字的文档塞进去还指望段落级编辑稳定工作。**Canvas 在超长文档上会退化,拆开做。
FAQ
- Canvas 免费吗?:免费。截至 2026 年 6 月,Canvas 在所有 ChatGPT 套餐上都能用(含 Free),覆盖网页端、Windows 和 macOS 桌面应用以及手机端。更高的套餐主要是给你更强的模型和更多应用内上下文,而不是解锁 Canvas 本身。
- 它不自动切的时候怎么打开 Canvas?:在输入框里输入
/canvas,点工具图标选 Canvas,或者粘贴文字后用”open in canvas”快捷入口。都不行就看 Canvas 打不开。 - 能直接把文件导入 Canvas 吗?:把正文粘进去、让模型格式化是更稳的路子。文件直接进 Canvas 不稳定,所以建议粘内容,而不是指望上传后自动在编辑器里打开。
- 为什么我没选的那段也被改了?:通常是 prompt 提到了周围上下文,模型就把它当成可以动的了。重新提,明确写”不要动其他段落”,并且从选区开始改。
- 版本历史怎么工作?:每次编辑就是一版。用顶部的箭头逐版回退,用 显示改动(Show changes) 图标看红/绿 diff。回滚是无损的,随时可以再往前走。
- Canvas 处理机密内容安全吗?:它遵循和 ChatGPT 其他地方一样的数据政策,所以看你套餐的数据控制设置。聊天里不敢贴的,Canvas 里也别贴。