理解ChatGPT的工作原理
Understanding ChatGPT Work
OpenAI 于 7 月 9 日发布 ChatGPT Work,包含云端版(Work Cloud)与桌面版(Work Local)两种形态,仅向每月 20 美元及以上订阅用户开放。Work Cloud 提供可访问互联网的代码执行环境、无头 Chrome 浏览器、跨会话持久化文件系统、ChatGPT Sites 部署及子代理功能,支持 GPT-5.6 Sol/Luna/Terra 与 GPT-5.5 模型选择。作者 Simon Willison 通过实验验证了其功能,并指出安全性与文档透明度问题。
OpenAI 于 7 月 9 日发布了 ChatGPT Work,此后一直在快速迭代。这是一个极其令人困惑但又非常强大的产品。以下是我目前对它的理解。ChatGPT Work 实际上是两个产品。更有趣的版本是运行在云端的那个,可以通过 chatgpt.com 或 ChatGPT 移动应用访问。我们暂且称之为 Work Cloud。如果你安装 ChatGPT 桌面应用——也就是之前叫 Codex 的那个应用——你会获得一个名为 ChatGPT Work 的功能,它可以直接访问你电脑上的文件并运行程序。我们称之为 Work Local。这个版本感觉更像是普通 Codex 的换皮,目的是让非软件开发者不那么望而生畏。本文其余部分我将只讨论 Work Cloud。Work 仅限付费订阅用户使用。目前,ChatGPT Work(两种版本)仅向每月 20 美元及以上的订阅用户开放。免费用户和每月 8 美元的 Go 用户无法使用。Work 拥有 Chat 所不具备的功能。访问 Work 的界面是一个标签选择器,将其作为 Chat 的替代选项呈现:
显而易见的问题是,我什么时候该用 Chat,什么时候该用 Work?OpenAI 对此的官方回答是:当你想要一个答案、解释、头脑风暴或简短草稿时,使用 Chat。当你希望 ChatGPT 完成一个具有明确结果的任务时,使用 ChatGPT Work,例如简报、演示文稿、分析、定期更新、工作流或可供你审阅和使用的文件。我觉得这个回答几乎毫无用处,因为多年来我一直在用普通的 ChatGPT Chat 处理所有这些任务类型!那么更好的问题是,Work 有哪些 Chat 所没有的功能?经过大量实验,我认为我基本弄清楚了:
- 可以选择使用 Luna 和 Terra 替代 Sol
- 一个可访问互联网的代码执行环境
- 一个无头 Chrome 浏览器
- 会话之间共享的持久化文件系统
- 发布 ChatGPT Sites 的能力
- 使用 Sol、Luna 和 Terra 运行子代理会话的能力
- 定时提示自动化(可能 ChatGPT Chat 也有)
模型选择
在 Work 中,你可以选择 GPT-5.6 Sol、Luna 或 Terra,每种都有 Light、Medium、High、Extra High、Max 或 Ultra 推理级别。你也可以选择 GPT-5.5,级别为 Light、Medium、High 或 Extra High。这些看起来与 OpenAI API 提供的模型相同。Chat 提供了不同的选择:5.6 Instant、Medium、High、Extra High 和 Pro(实际上 Extra High 和 Pro 仅限每月 100 美元以上的订阅用户使用——每月 20 美元的订阅用户最高只能用到 High)。它没有说明这些是 Luna、Terra 还是 Sol(我猜是 Sol?)。5.6 Pro 似乎是 Chat 独有的,在 Work 中没有对应版本。我目前从使用 Codex 的经验来看,Ultra 是一种特殊模式,它更倾向于将任务委派给子代理。我相信 ChatGPT Work 会话会从你的 Codex 配额中计费,而 ChatGPT Chat 会话则有自己独立的配额。这可能有助于解释模型可用性的差异。
可访问互联网的代码执行!
作为 Code Interpreter 模式的长期粉丝——该模式由 OpenAI 在 2023 年首创——这对我来说是 ChatGPT Work (Cloud) 迄今为止最令人兴奋的功能。代码执行环境现在可以与互联网的其余部分通信了!ChatGPT Chat 无法做到这一点——如果你要求它安装额外的软件包或与网站或 API 交互,该访问将被容器代理阻止。(奇怪的是,在一月份它曾获得安装软件包的能力,但现在似乎不再起作用了。我希望他们有更好的更新日志!)Claude 的等效容器自去年九月推出以来就允许受限的互联网访问。Claude 可以从 PYPI 和 NPM 安装软件包,并从 GitHub 克隆仓库。但仅此而已:允许的域名列表非常短。ChatGPT Work 允许的远不止这些。它可以配置为特定的允许域名列表,但默认似乎是全部开放。这使得 Work 成为一个极其有用的工具。你可以让它克隆 GitHub 仓库,安装它们的依赖项,然后使用它们与网络上的其他部分交互!
一个完整的无头 Chrome 浏览器
ChatGPT Work 的另一个杀手级功能是浏览器工具。ChatGPT Work 可以启动一个完整的 Chrome 实例,加载网站,填写表单,并截取屏幕截图。
如果某个网站需要登录,浏览器可以提示你接管,输入密码和 2FA 代码,而无需将这些凭据通过模型本身进行往返传输。它甚至可以对已加载页面的 DOM 运行 JavaScript。我提示:在你的浏览器中加载 simonwillison.net,并使用 JavaScript 提取标题。ChatGPT Work 启动了一个浏览器实例并运行了代码:
await tab.playwright.evaluate(() => {
return Array.from(document.querySelectorAll("h1,h2,h3,h4,h5,h6"), heading => ({
level: heading.tagName.toLowerCase(),
text: heading.innerText.trim().replace(/\s+/g, " "),
id: heading.id || null
}));
});
这感觉很像我的 shot-scraper javascript 工具,只是现在我可以在手机上使用它了!
一个持久化、共享的文件系统
ChatGPT Chat 为每个聊天会话提供一个全新的文件系统。这些文件无法从任何其他会话访问。在 ChatGPT Work 中,每个会话都有自己的临时文件夹——命名为类似 /workspace/scratch/e00a0a017944 这样的路径——但每个文件夹都会跨会话持久化,因此你可以访问之前聊天中的文件。我现在在 /workspace/scratch 中有 171 个文件夹!据我所知,那个 /workspace 卷挂载到了所有当前正在运行的 Work 会话——一个会话中的文件编辑可以立即被其他会话看到。不过,它们似乎不共享相同的进程空间,一个会话中运行的 localhost 服务器无法从另一个会话访问。
ChatGPT Sites
ChatGPT Work 能够使用 Cloudflare Workers 构建和部署整个网站。这些网站可以包含 HTML 和 JavaScript,也可以运行服务器端功能,包括基于 Cloudflare D1 和 R2 的有状态功能。以下是我用这个功能构建的一个简单网站:london-pelicans-in-her-piety.simonw.chatgpt.site。我的提示是:找出伦敦所有有“虔诚的鹈鹕”图案的地方,然后将其转换为 JSON 文件,并围绕它们构建一个 ChatGPT Sites 网站(“虔诚的鹈鹕”是一种迷人的中世纪基督教意象——一旦你了解了它们,你会发现它们无处不在。)这些网站默认对创建它们的用户私有,但你可以将其设为公开,并且(在团队计划中)与其他特定个人共享。
使用 Sol、Luna 和 Terra 的子代理
关于这一点没什么好说的。ChatGPT Chat 无法运行子代理。ChatGPT Work 可以。这绝对是一个高级用户功能:如果你正在运行一个可以从多个并行代理协同工作中受益的复杂项目,Work 可以做到。
定时提示自动化
另一个似乎在某个时候从普通 ChatGPT 迁移到 ChatGPT Work 的功能。你可以这样提示 ChatGPT Work:每天早上 8 点运行搜索,看看 Waymo 是否宣布了半月湾的发布日期。这将安排一个提示按该频率运行。这些提示可以决定没有发生什么有趣的事情,或者它们可以决定通知你一些新信息。更新:实际上这似乎在 ChatGPT Chat 中也能用。但这里仍然值得一提,因为它可以与其他 ChatGPT Work 专属功能结合使用。例如,你可以设置一个定时任务,每小时更新一个 ChatGPT Site。
这安全吗?
我目前面临的一个开放问题是这一切有多安全。我的“致命三要素”模型警告了任何将私有数据访问、暴露于不可信内容以及将窃取信息传回攻击者的途径相结合的代理系统所固有的风险。ChatGPT Work 将这三者结合在了一起!我希望听到 OpenAI 更多关于他们如何保护 ChatGPT Work 会话免受 prompt injection 攻击的信息。我预计他们的答案是与 Codex 相同的自动审查机制。
OpenAI 本可以让这变得不那么令人困惑
弄清楚这一切花费的精力远超应有。我认为这里有两个关键问题:
- OpenAI 用 Work 的用途来解释它,而不是它实际做什么
- OpenAI 仍然坚持隐藏其系统提示和工具描述
如果 ChatGPT Work 的文档包含了代理使用的确切系统提示和工具描述,我就不需要写这篇文章了。
标签:ai, openai, generative-ai, chatgpt, llms, code-interpreter, lethal-trifecta, general-agents