当前位置:首页 > 每日看点

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?

卡卷网1年前 (2024-12-12)每日看点313

花了亿点时间实际测试了一下 ChatGPT Canvas,略微有点失望的,再加上 GPT-4o 最近降智导致工具调用不稳定,感觉一些交互逻辑并不像想象中那么顺畅。

Canvas 强调的是人和 AI 协作完成对长文本的编辑、修改等任务。目前测试下来的主要结论:

  • Python 代码运行是通过浏览器本地 WASM 实现的,而非云端沙盒,区别在于可以发送网络请求,但同时也有其他性能限制。
  • 长文本编辑的体验比以前强很多,但还是不像 Notion AI 那样自然且符合操作直觉,现在的编辑修改还是没有脱离对话的形式。

官方今天的演示里提到了三点更新:

  • Canvas 正式向全体用户开放(免费用户也可用)
  • Canvas 中可以运行 Python 代码
  • Canvas 支持自定义 GPTs

更新之后的 ChatGPT 中不再有单独的GPT-4o with Canvas(beta)模型选择,而是直接整合到了GPT-4o的模型中。[1]o1o1-mini目前不支持 Canvas。

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第1张

接下来按照我自己关心的顺序写几项测试结果吧。

Canvas 的页面构成

进入 Canvas 之后,页面主要会分成两部分,即左侧栏的对话区和右侧的文本/代码编辑区。右下角会提供一些快捷方式(比如提供建议、代码审查等),右上角是功能键,比如版本比较、撤回、复制、运行代码等。

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第2张

Canvas 的触发条件

要测试 Canvas 的触发条件,就要理解 Canvas 的设计目的。Canvas 作为一项「画布」功能,其主要目的是为了优化用户对长文本的交互体验。也就是说,如果用户本身是为了一问一答的对话而来,其实没必要用到 Canvas;只有当用户需要对 ChatGPT 生成的内容进行反复修改时,画布才有意义。

Canvas 的触发逻辑和 ChatGPT 其他工具(比如搜索、画图)一样,如果不明确指定的话,会由 AI 自动判定是否需要调用。

这一点在 System Prompt 对 Canvas 的工具描述中也可以找到:Creates a new textdoc to display in the canvas. ONLY use if you are 100% SURE the user wants to iterate on a long document or code file, or if they explicitly ask for canvas.(仅在你完全确认用户希望编辑长文档或代码文件,或者明确要求使用画布时,才应使用此功能。)

所以目前 ChatGPT Canvas 的触发方式有几种:

第一,由 AI 根据对话内容自行判定是否触发(可以在对话内容中明确指定「通过 Canvas 打开」,或者「不要打开 Canvas」)。

第二,直接使用官方对话工具箱中的 Canvas:

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第3张

第三,大概是为了进一步优化用户体验,现在只要在 ChatGPT 对话框中输入的文本需要换行显示(也就是超过两行内容,可以是普通文本,也可以是代码),对话框右上角就会出现「在 Canvas 中打开」的按钮:

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第4张

Update 以下:如果你通过以上方式都不能打开 Canvas,就说明你的 GPT-4o 降智不能正常调用工具(不能识图或生成图片、不能分析文件),这个 BUG 临时的解决办法是「先用 o1 模型上传一张照片并提问,然后在同一个对话中,切换回 GPT-4o 模型去调用工具」

ChatGPT Canvas vs ChatGPT Code Interpreter / Claude Artifacts

作为程序员,我自然最关心所谓能运行 Python 代码的功能。所以我们先来测试写代码、运行代码的功能。

首先一点是,如果你已经有完整的代码,直接粘贴到对话框展开 Canvas 就可以运行,而且此时如果你不对代码提问的话,实际上并没有和 ChatGPT 发生对话(也不会有对话记录)。

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第5张

究其原因,Canvas 运行 Python 代码是通过浏览器的 Emscripten WebAssembly 功能实现,运行代码使用的是本地电脑的能力

而以前的 ChatGPT Code Interpreter(后来改名为 Advanced Data Analyst)使用的则是 OpenAI 提供的云端沙盒。

所以你会发现 Canvas 中的代码是能够发起网络请求的,而 Code Interpreter 则因为云端沙盒的限制不能使用网络功能。

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第6张

这一点也很容易验证,比如,你可以让 ChatGPT 自己写一段测试当前环境硬件配置和网络的代码然后自己运行:

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第7张

出 BUG 了正好让 ChatGPT 自己 Fix 一下:

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第8张

而如果在 Data Analyst(数据分析 GPT)中去测试硬件环境,就会得到类似#1 SMP Sun Jan 10 15:06:54 PST 2016 的云端沙盒结果:

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第9张

Canvas 编程时可以使用的快捷方式:

  • 添加日志:插入打印语句以帮助调试和跟踪执行过程。
  • 添加注释:添加注释以解释代码并提高可读性。
  • 修复 bug:检测并重写有问题的代码以解决错误。
  • 移植到其他语言:将代码翻译为 JavaScript、Python、Java、TypeScript、C++ 或 PHP 等语言。
  • 代码审查:提供内联建议以优化和改进代码。

至于和 Claude Artifacts 的比较,其实并不是同一种东西。ChatGPT 这个代码运行主要还是延续了当初 Code Interpreter 的一贯作用,主要是服务于 Python 代码、数据分析作图之类;而 Claude 则是倾向于渲染前端,起到一个 HTML/SVG 代码所见即所得的作用。

之前有人扒出 ChatGPT Canvas 也打算实现类似的 webview 功能,不过目前版本显然还没做。

交互式编辑文本

除了代码编辑和运行外,Canvas 的本职其实是文本编辑,而且这里的文本编辑框甚至提供了一些简单的 Markdown 样式,比如加粗、斜体和三级标题。

写作文档时可以使用的快捷方式:

  • 建议修改:ChatGPT 将添加内联建议,以改进您的写作。
  • 调整长度:缩短或扩展文档的长度。
  • 调整阅读水平:调整阅读水平,从幼儿园到研究生水平。
  • 添加最终润色:检查语法、清晰度和一致性。
  • 添加表情符号:替换单词为表情符号,或为额外的强调和色彩添加表情符号。

比如这里的写作建议,GPT-4o 会审查全文后给出一些具体句子的修改建议:

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第10张

如果对其中一条建议 Apply,ChatGPT 就会单独重写这一段话,点击右上角的 Show changes,就会看到类似于 git diff 的效果:

OpenAI 正式开放 Canvas,支持 Python 编码,可整合到定制 GPT 中,有哪些亮点?  第11张

Canvas in GPTs

emmm,咋说呢,GPTs 整体上半死不活,没能像想象中的自定义 Agent 那般功能强大,所以有没有 Canvas 影响也不大,还不如赶紧把 o1 模型支持 Canvas 和 GPTs,毕竟现在写代码都主要靠 o1 了,最强的模型不能搭配最好的工具,差点意思。

总之,和 10 月推出的 Canvas 相比,这次就多了 Python 代码运行和免费用户可用,感觉放在 12 天的发布里有点凑数了。不过,Canvas 继续朝着「人和 AI 协作」的方向,路子肯定是对的,希望能继续优化交互体验吧。

参考:

OpenAI 重磅发布交互界面 canvas,让 ChatGPT 成为写作和编程利器,带来影响有多大?

最后附上 Canvas 部分的 System Prompt,顺便一提,这一版 System Prompt 和 10 月份 Beta 版的相比简略了非常多,不知道是功能更稳定了,还是着急发布先去掉了一些功能:

## canmore # The `canmore` tool creates and updates textdocs that are shown in a "canvas" next to the conversation This tool has 3 functions, listed below. ## `canmore.create_textdoc` Creates a new textdoc to display in the canvas. ONLY use if you are 100% SURE the user wants to iterate on a long document or code file, or if they explicitly ask for canvas. Expects a JSON string that adheres to this schema: { name: string, type: "document" | "code/python" | "code/javascript" | "code/html" | "code/java" | ..., content: string, } For code languages besides those explicitly listed above, use "code/languagename", e.g. "code/cpp" or "code/typescript". ## `canmore.update_textdoc` Updates the current textdoc. Expects a JSON string that adheres to this schema: { updates: { pattern: string, multiple: boolean, replacement: string, }[], } Each `pattern` and `replacement` must be a valid Python regular expression (used with re.finditer) and replacement string (used with re.Match.expand). ALWAYS REWRITE CODE TEXTDOCS (type="code/*") USING A SINGLE UPDATE WITH ".*" FOR THE PATTERN. Document textdocs (type="document") should typically be rewritten using ".*", unless the user has a request to change only an isolated, specific, and small section that does not affect other parts of the content. ## `canmore.comment_textdoc` Comments on the current textdoc. Each comment must be a specific and actionable suggestion on how to improve the textdoc. For higher level feedback, reply in the chat. Expects a JSON string that adheres to this schema: { comments: { pattern: string, comment: string, }[], } Each `pattern` must be a valid Python regular expression (used with re.search).

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2024/12/3972.html

分享给朋友:

相关文章

小米14 Pro和Redmi K70Pro怎么选?

小米14 Pro和Redmi K70Pro怎么选?

两款手机都使用了最新的骁龙8Gen3旗舰芯片,性能都是顶级,但是两款手机定位不同,卖点不同,红米K70 Pro定位主打性能的旗舰入门手机,小米14Pro定位旗舰中高端手机。具体根据个人需求与预算来选择: 两款手机的相同、相似点:都使用了骁龙…

电视上哪个软件可以免费看电视直播?

电视上哪个软件可以免费看电视直播?

今天给大家推荐8款免费电视端直播看剧软件,感兴趣的朋友可以下载试一试! 1、超级ITV 6.04免费看电视直播,央视卫视高清秒播,还有电影电视剧少儿体育等。 2、小鲸电视 1.3.1小鲸电视是一款智能电视应用,集成了多个内容来源,包括腾讯视…

在 Istio、Linkerd 和 Cilium 之间,哪种服务网格在性能上表现最佳?

在 Istio、Linkerd 和 Cilium 之间,哪种服务网格在性能上表现最佳?

在讨论服务网格之前,先理解一下为什么我们需要它。现代微服务架构意味着将应用拆分为多个小型、独立的服务,这些服务可以独立开发、部署和扩展。然而,服务之间的通信和管理成了巨大的挑战,例如如何保证安全的通信、负载均衡、监控与可观测性等。服务网格…

荣耀magic 7 首发的应该都收到货了,感觉怎么样?

8号入手magic7,跟mate40pro比。 优点:1、电池真耐用,充电块,华为电池也是新换的但是明显荣耀耐用;2、系统明显快多了,mate40pro下半年开始卡的不行,实在受不了了。3、声音、震动效果提升明显,指纹反应灵敏很多。 缺点:…

为什么雷军身上没有酒色财气?

武大建校130周年时,雷军向母校个人捐款13亿。 在2023年8月14日晚上七点,雷总在国家会议中心举行的进行第四次年度演讲「成长」: 全篇都在谈成长、梦想,这么多年了,始终做到了知行合一,我相信酒色财气可能真不是他所追求的,一直追求的就像…

为什么小公司留不住人?

为什么小公司留不住人?

我估计,整个知乎,可能没有比我公司再小得了,。。 正对面就是我唯一的一个员工的工位。 为啥留不住人。因为那些留不住人的老板,太拿自己当回事。 大公司靠制度。小公司靠人情。 我这儿的业务,因为全都是线上,所以员工来不来坐班都不重要。 天太…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。