OpenAI Atlas 工程团队:我们如何构建 OWL,我们基于 ChatGPT 的浏览器 Atlas 背后的新架构
为了纠正大家都认为 ChatGPT Atlas 是 Chromium 的套壳,ChatGPT Atlas 工程团队编写本文来说明 ChatGPT Atlas 的底层有很多创新之处。虽然 Atlas 使用的是 Chromium,但它的构建方式与通常的 Chromium 不同。 Atlas 浏览器的核心创新在于其独特的 OWL 架构,该架构通过将 Chromium 引擎作为一个独立的服务层运行,从而与主应用程序进程分离。这种解耦设计不仅解决了传统浏览器架构在性能和用户体验上的瓶颈,还为实现复杂的 Agent (智能体) 功能和快速的产品迭代奠定了坚实的基础。它使得 Atlas 能够同时利用 Chromium 强大的网络兼容性与现代原生框架 (SwiftUI, AppKit) 带来的流畅体验。 关键细节 背景与挑战 产品目标: 团队希望创造一款能将 ChatGPT 作为网络“副驾驶”的浏览器,拥有即时启动、支持数百个标签页而不影响性能,以及丰富的动画和视觉效果。 技术选型: Chromium 因其先进的引擎、强大的安全模型和无与伦比的网络兼容性,成为自然的选择。 架构难题: 直接使用或修改 Chromium 的标准架构难以实现上述产品目标,特别是快速启动和高性能。同时,深度修改 Chromium 会导致后续版本更新和维护变得极其困难和耗时。 解决方案:OWL 架构 核心思想: OWL (OpenAI’s Web Layer) 是 OpenAI 的解决方案。它将 Chromium 的浏览器进程从 Atlas 主应用进程中剥离出来,使其成为一个独立的后台服务。 工作模式: Atlas 应用作为 OWL Client (客户端),而 Chromium 进程作为 OWL Host (主机)。两者通过 Chromium 自家的消息传递系统 Mojo 进行通信 (IPC)。 OWL 带来的优势 应用更简洁: Atlas 的用户界面几乎完全由 SwiftUI 和 AppKit 构建,代码库更清晰、技术栈更统一。 启动更快速: Chromium 在后台异步启动,用户界面几乎可以瞬间加载。 隔离性更强: Chromium 引擎的卡顿或崩溃不会影响 Atlas 主应用的稳定性。 维护更容易: 由于 Atlas 没有构建在 Chromium 的开源 UI 之上,与上游 Chromium 的代码差异更小,便于维护和升级。 迭代更迅速: 大多数工程师无需在本地编译 Chromium (耗时数小时),而是使用预编译的 OWL 二进制文件,使 Atlas 的构建时间从数小时缩短到几分钟。 针对 Agent 功能的特殊设计 渲染: 为了让 AI 模型能看到完整的页面上下文,Atlas 会将下拉菜单等在主窗口外渲染的 UI 元素重新组合到主页面图像中。 输入: Agent 生成的输入事件会直接发送到渲染器,而不是通过拥有更高权限的浏览器层,以保证沙箱安全边界。 数据隔离: Agent 浏览可以在临时的“登出”环境中运行。它使用 Chromium 的 StoragePartition 基础架构创建隔离的内存存储,确保每个 Agent 会话都是全新的,会话结束后所有数据都会被丢弃。 原文:我们如何构建OWL:我们基于ChatGPT的浏览器Atlas背后的新架构 作者:Ken Rockot,技术团队成员;Ben Goodger,ChatGPT Atlas工程主管...