OpenAI的托管代理API:托管沙箱与自托管执行
OpenAI的托管代理系统在公共测试版中的运作方式:托管型Linux工作空间、自托管执行服务器、上下文压缩、工具搜索以及子代理。
来源: Inside OpenAI’s New Agents API: Hosted Sandboxes, Self-Hosting, and the Codex Harness Behind Them
智能体诞生前的准备工作
任何开发过自主智能体的人都知道,其中很大一部分工作其实与智能体的实际功能并无关联。在实现复杂的逻辑之前,团队必须先编写执行循环、存储对话状态、决定下一步使用哪个工具、处理故障、随着会话增多而压缩上下文信息,同时还要为代码运行和文件操作提供安全的环境。只有完成这些准备工作后,真正的任务才能开始处理。
目前处于公开测试阶段的OpenAI托管智能体服务旨在减轻这些负担。开发者无需再为编排框架添加额外的模型接口,而是可以直接使用专为智能体设计的托管运行时环境。整个任务仅需四个参数即可描述:任务内容、模型、可用工具以及工作环境。平台会负责处理其中大部分运行所需的基础设施工作。
其底层的引擎值得关注。OpenAI正在将其编码智能体Codex背后的框架转变为供外部开发者使用的基础设施。它远不止是聊天或补全API上的简单层:它负责协调智能体执行重复步骤、决定工具使用、管理不断扩展的会话并执行操作,还能同时协调多个智能体共同处理问题的不同部分。
这样一来,项目的起点就发生了变化。团队无需在项目初期重新构建让智能体运行的机制,而可以直接更接近应用层面开始工作。那些让智能体能够运行、行动、恢复和协调的功能,如今都变成了可管理的服务。
该管理框架涵盖的内容
推出该产品的核心理念是:可靠智能体的大多数需求都是通用的,而非特定于某款产品的。无论面临何种业务问题,智能体都需要记录会话中发生的内容、将下一步操作与合适的工具匹配的方法、处理超出上下文窗口范围的对话的方案,以及将大型任务拆分为独立部分的手段。这些其实都是早已得到解决的问题,而每家公司都用自己的代码重新实现这些功能,只会浪费本应用于产品开发的时间。
将相关逻辑集中到统一的托管框架中,能为开发者提供一个可基于此进行开发的基础,无需他们自行构建。该框架负责管理模型循环:上下文被传递给模型,模型给出决策结果后会被执行,其输出则作为新的输入返回。它还会保存会话状态,避免长时间任务丢失之前的进展。当会话数据接近模型处理能力上限时,它会自动压缩上下文。同时,它会筛选出当前重要的工具定义,避免模型被无关选项干扰。
选择智能体的工作环境
在定义了任务、模型和工具之后,还剩下一个决定需要做出:执行应在何处进行?此处服务提供了真正的选择空间,而这两种路径之间的权衡在配置过程中比其他任何因素都更为重要。
托管工作空间
在第一种方案中,OpenAI会为每个会话创建一个完整的Linux工作环境并使其运行。Python、Node.js以及常见的命令行工具都已预装,这样代理就可以有地方执行代码、处理文件并生成结果,而开发者无需操心虚拟机、容器镜像或部署流程。完成的任务其输出可以被转换为不可更改的工件,这对于那些希望获得某次运行所产生的结果的永久、不可变更记录的团队来说非常有用。
由于 OpenAI 负责从创建到销毁的资源配置及沙箱生命周期管理,这种方案非常适合快速部署。那些希望快速启用智能体、无需经过数天的内部基础设施审批或编写部署脚本的团队,通过将会话指向 OpenAI 的计算资源能够大幅提升效率。此外,它也适用于负载波动较大的场景——智能体的运行频率可能随时变化,而团队又不想自行处理扩展逻辑。选择此方案只需定义一个用于指定托管类型的环境块,以及一个用于存放功能文件的目录即可。
"environment": {
"type": "openai_hosted",
"capability_directories": ["/workspace/capabilities/skills"]
}
自托管执行
第二种方式是将执行任务放在开发者拥有的基础设施上,可以是容器、虚拟机,或是第三方提供商提供的远程沙箱。在该环境中有一个名为执行服务器的组件,它通过 WebSocket 与 OpenAI 建立连接。指令通过该链接从管理平台发送过来,执行服务器会在开发者的机器上运行 Shell 操作并处理本地模型上下文协议相关的交互,之后再将结果传回。
其中一个安全设计十分值得注意:该连接使用专门为这一目的生成的受限密钥,因此范围更广的应用级 API 密钥无需存在于执行环境中。即便执行环境遭到入侵,攻击者也只能获取权限范围小于完整应用密钥的凭证。
自托管让团队能够更大程度地掌控所使用的计算资源、访问私有网络的方式以及数据的存储位置。那些受监管的组织,以及需要其代理程序访问公网无法触及的内部系统的团队,通常都需要这种控制能力。然而,控制权也带来了诸多工作:团队需负责环境的隔离与安全补丁更新、负载下的扩展能力、会话结束后的监控与清理工作。而将编排任务交由其他地方处理,则可以避免处理这些繁琐事务。
无论怎样,OpenAI 仍保留的内容
人们很容易认为,自托管执行意味着智能体完全在公司的内部环境中运行,首次调用模型后就与 OpenAI 断开联系。但这种想法是错误的。即便采用自托管方式,OpenAI 依然负责运行控制框架以及决定智能体每一步操作顺序的模型端调度系统。只有执行层会发生变化,也就是实际的命令处理、文件操作和计算任务。无论团队选择哪种环境,推理循环、会话管理以及协调逻辑都仍在 OpenAI 的端侧。
长会话与庞大的工具库
任何稍复杂的智能体很快就会遇到两个问题:其一,会话内容超出模型的上下文窗口限制;其二,工具库过于庞大,每次请求都发送所有工具定义会消耗大量令牌并降低模型运行速度。而托管式控制框架可以解决这两个问题。
在长时间会话中,当对话接近容量上限时,系统会自动压缩之前的上下文,保留智能体仍需要的信息,丢弃那些已无关紧要的内容。这样一来,无需手动编写总结或截断逻辑,工作流就能跨越多个上下文窗口。
对于需要大量工具的任务,一种名为“工具搜索”的功能只会加载当前步骤相关的定义,从而减少标记使用量和成本,同时帮助保持模型的缓存完整。在合适的工具加载完成后,还有一个配套功能可实现程序化的工具调用。智能体可以并行发起多个调用,串联相关操作,并通过代码筛选或合并结果,确保只有有用信息进入模型的上下文。面对海量数据时,这一优势尤为显著,因为智能体无需遍历所有原始结果来查找那为数不多的相关事实。
该配置列出了代理模块中的工具,其中包括一个MCP服务器条目。
"agent": {
"tools": [
{
"type": "mcp",
"server_label": "internal_docs",
"transport": {
"type": "http",
"server_url": "https://docs.example.com/mcp"
}
}
]
}
多个智能体共同完成一项任务
或许最令人称奇的功能就是对多个智能体并行处理同一任务的原生支持。开发者无需让单个智能体逐步解决复杂问题,而是可以启用多智能体功能,让框架将任务拆分成多个独立部分,每个部分由拥有独立上下文的子智能体负责处理。
每个子智能体都专注于特定的任务环节,无需同时处理整个任务,而负责协调的主智能体则监督整个流程并将各部分结果整合为最终答案。在研究、大规模分析或需要分多个独立流程进行的编码工作中,这种结构能够显著缩短完成时间,而且无需额外设计用于管理并发智能体的协调层。
要启用此功能,只需在智能体配置中设置相关标志,同时选择合适的模型即可。
"agent": {
"model": "gpt-6-astra",
"multi_agent": {
"enabled": true,
"max_concurrent_subagents": 3
}
}
哪种路径适合哪支团队
这两种执行路径恰好对应两套不同的优先级。那些将速度置于首位、不愿考虑计算资源问题的团队,适合使用托管式沙箱。而那些正在验证新代理方案,或希望无需为基础设施预算纠结就能立即启动项目的人,更可能选择托管方案,从而节省更多的开发时间。
当需求超出共享型通用沙箱的承载能力时,自托管才更有意义。例如,代理需要访问的私有网络、包含专用工具的定制化机器镜像、特定的GPU配置等专用计算环境,以及要求数据不得流出特定司法管辖区或网络的限制性规定。在这些情况下,额外的运营责任只是确保工作正确完成的必要代价。
谁应该等待
并非所有团队都必须急于采用这种方案。如果现有的基于SDK的流程能够稳定运行、妥善处理重试情况,且对维护人员来说几乎不会带来额外负担,那么就没有太多理由进行迁移。仅仅因为存在托管替代方案就更换现有的可行系统,往往只会增加风险而无法带来相应的收益。
当会话状态管理、重试处理以及故障恢复逻辑成为真正的性能瓶颈时,情况就有所不同了。将这些任务交给已经能够处理它们且随着模型更新而不断优化的托管服务,就能为那些真正能提升产品差异化的功能释放出大量资源。
一个实用的准则:将那些无需掌控的部分交由他人处理,而牢牢掌握对业务至关重要的部分。这在部署拓扑、敏感数据处理以及确保代理程序具有稳定可预测的运行行为方面尤为重要。团队中没人愿意负责管理的基础设施应当被委派出去,而那些决定产品可靠性或公司合规性要求的方面则不应如此。
开放的基础架构
这一特性为该版本增添了可信度:该工具基于开源框架构建。OpenAI在托管服务中负责运行和维护生产环境版本,而其底层代码仍可公开查看。任何想了解模型循环、工具选择及子代理协调机制运作方式的人都可以直接阅读相关逻辑代码,无需查阅文档。这种开放性弥补了完全托管型云服务通常具有的封闭性,有助于团队信任用于处理生产任务的系统。
定价与测试版状态
公开测试版向所有开发者开放,常规使用无需额外订阅费用。费用根据每次会话使用的令牌数量及其调用的工具来计算,遵循底层模型已设定的标准定价。由于开发者的反馈将持续影响该服务向全面可用阶段的演进,早期采用者应做好在未来几个月内服务行为、默认设置及功能可能发生变化的准备。
基于目前用于Codex的框架构建的托管型Agents API,显著降低了团队在让自主智能体完成实际工作之前需要搭建的基础设施规模。通过提供完全托管的环境以及仍由中央系统进行管理的自托管方案,OpenAI让开发者能够根据自身情况选择合适的方案,而非强制所有人使用同一部署模式。
采用这一方案的考量其实可以归结为一个适用于任何新基础设施层的问题:它能否消除那些没人愿意承担的工作,同时让团队始终掌控定义产品的核心要素?
相关阅读
- 实用笔记:新的MCP是无状态的——深入解析2026–07–28协议 — 该实用笔记的详细操作指南,涵盖合同、检查机制以及适用于采用该模式的团队的即插即用代码模块。