Claude Artifacts的复制?OpenAI发布ChatGPT协作新组件:Canvas,让你与ChatGPT共同处理写作与编程问题!
在写作和编程中,使用 ChatGPT 帮助用户处理各种复杂任务已变得越来越普遍。然而,这个过程中仍然存在一些挑战,比如上下文追踪不够连贯、实时反馈不足,以及在编程时难以精确地处理错误或优化代码。为此,OpenAI发布了一个新的特新:Canvas,它是为了解决上述问题而设计的一个全新工具,集成了写作、编程和实时协作的功能。

OpenAI Canvas功能诞生的背景
在2024年6月份,Anthropic发布Claude Sonnet 3.5的时候,也发布了一个非常不错的特性:Artifacts,即当你使用Claude模型生成代码、文本、网站设计的时候,Artifacts会出现一个动态工作区,用户可以实时查看、编辑和构建Claude生成的结果!这个特性受到了非常多用户的喜欢,甚至被许多人称为大语言模型交互新范式!
一个季度后的今天,OpenAI也推出了自家的“Artifacts”,称为Canvas,其核心功能与Artifacts非常接近,它提供了一个 可视化界面,使用户能够以更直观的方式与 ChatGPT 互动,特别是在代码编写和长文档处理方面。
当前,ChatGPT使用中的不够高效的地方包括:
上下文管理不清晰
在复杂的写作或编码过程中,用户常常需要保持大量的上下文。虽然 ChatGPT 已经能够在对话中保持一定的上下文,但在处理长篇文章或复杂代码时,仍然可能会遗忘某些关键细节,导致生成的内容不准确或与预期不符。缺乏可视化的实时协作
编程和写作的过程往往需要来回调整、修改,但传统的 ChatGPT 互动界面主要基于文本输入和输出,缺少一种直观的、类似代码编辑器的环境来快速调整内容。编程错误处理和优化的效率问题
虽然 ChatGPT 已经具备较强的编程能力,但在处理复杂项目时,仍然有时会遗漏细微的错误,或者在优化代码上不够高效。编程者往往希望有一种能够实时查看代码运行效果、捕捉错误并进行修正的功能。
如果在写作和编程的时候,独立出一个单独的区域,用户和大模型可以共同对这单独的区域进行协作编辑、共同完善那也必将大幅提升用户使用的体验。之前,Anthropic给的答案是Artifacts,而如今OpenAI也交出了自己的答卷:Canvas。
OpenAI Canvas功能简介
OpenAI的Canvas是一个独立的区域,可以是我们想要协作的博客内容,也可以是希望处理的代码片段。这个内容独立之后可以让GPT能够更好地理解我们当前要处理的上下文环境和任务目标。
你也可以单独控制这个内容的某一部分去询问ChatGPT或者是手动修改这部分内容。这种情况下,ChatGPT可以更好地作为评阅人或者编程的reviewer来帮助我们提升任务效果。
OpenAI Canvas处理文本内容
当前,OpenAI Canvas主要针对两个场景有特别的优化,分别是写作辅助和编程。
在写作辅助中,OpenAI Canvas可以帮助我们完成如下任务:
- 编辑建议:对写作的内容提供行内编辑建议和反馈。
- 长度调整:调整文档长度,可以让它更长或者更短。
- 更改内容以适应阅读者的水平:调整内容的风格,以适应不同年龄段的阅读对象,从幼儿园到大学生。
- 增加最终润色能力:对语法、描述清晰度、一致性进行检测
- 添加emojis标签:为相关内容增加标签符合。
下图是选中某一区域后,让ChatGPT修改其中的标题部分:

OpenAI Canvas处理编程内容
对于编程任务,Canvas 提供了类似于 IDE(集成开发环境)的功能。用户可以直接在 Canvas 中编写、运行和调试代码。无论是 代码错误排查、注释补充 还是 代码翻译,Canvas 都能高效地提供实时建议,并帮助优化代码结构。
Canvas 允许用户在不同的编程语言和写作风格之间快速切换。例如,在编写代码时,你可以选择将代码从 Python 转换为 JavaScript,或者直接添加详细注释。这种多语言支持大大提高了跨平台开发的效率。
下图是ChatGPT Canvas完成编程任务的截图,左侧是传统的对话框,右侧是编程结果。你也可以在右侧代码中选中一部分,继续用ChatGPT处理。


具体来说,OpenAI Canvas可以做如下编程任务:
代码评阅:可以提供行内级别的编程建议
增加日志:可以插入打印日志,帮助调试和理解代码
增加注释:为代码提供注释
修复bugs:删除并重写有问题的代码以修复错误
编程语言转换:可以将代码转成JavaScript、TypeScript、Python、Java、C++或者PHP。
欢迎大家关注DataLearner官方微信,接受最新的AI技术推送
