AI 博客

Agents API 卖给你的是那套 harness——连同压缩

OpenAI 在 9 月 10 日开放了 Agents API 公测,把那套托管的 Codex harness——会话、子智能体编排、恢复与上下文压缩——放到了一次 API 调用后面,除 token 与容器外不另收费。值得争论的是压缩这一步:它正是那个会悄悄改写"智能体到底在做什么"的变换,而如今它跑在一个你无法钉住、无法比对、也无法回滚的版本上。你采用它的那一刻,你的评测数字就不再描述一套你能控制的系统。

作者 智能体 AI 维基 23 分钟读完

OpenAI 在 9 月 10 日向所有人开放的这套托管 harness,负责运行智能体循环里唯一会改写"智能体究竟在做什么"的那一步——上下文压缩——而它所跑的版本号,你永远看不到。Agents API 里其余的一切,都只是你本来也能自己搭的便利。压缩才是你交出去的那一块,也正是你的评测一直在默默当作常量的那一块。

速览

这次公测把一次智能体部署切成三个归属区,而这个切法,与过去两年托管运行时产品所划的那一条并不相同。

区谁在跑里面有什么能钉住版本吗?
能力 你 你的工具、你的 MCP 服务器、你的提示词、你的数据访问。 能——那是你的代码。
Harness OpenAI 会话生命周期、子智能体编排、失败恢复、上下文压缩。 不能。
执行 OpenAI、合作方,或你自己 智能体写文件、跑命令所在的那个沙箱。 能——供应商与镜像由你选。
Three ownership zones in an Agents API deployment Three vertical zones. On the left, Capability, owned by you: tools, MCP servers, prompts and data access. In the centre, drawn as a solid accent block, the Harness owned by OpenAI: session lifecycle, subagent orchestration, recovery and context compaction, labelled as carrying no version you can pin. On the right, Execution: a sandbox that may be OpenAI-hosted, supplied by one of nine partners, or run on your own infrastructure. Arrows run from the harness out to the capability zone and back, and from the harness to the execution zone. Who runs which part of the loop Yours OpenAI's Your choice Capability Your tools Your MCP servers Your prompts Your data access Versioned in your repo Diffable, revertible Harness Session lifecycle Subagent orchestration Failure recovery Context compaction No version you can pin No diff, no rollback Execution OpenAI-hosted, or one of nine partners, or your own VPC Blaxel · Cloudflare · Daytona DigitalOcean · E2B · Modal Oracle · Runloop · Vercel The step that rewrites the objective Compaction paraphrases the transcript — including the sentence stating the goal — every time the window fills. It runs inside the accent block, on a version you never see.
三个区里有两个仍然是你的。位于中间的那个,是会对你的上下文做变换的那个。

究竟发布了什么

2026 年 9 月 10 日,OpenAI 把 Agents API 推入公测。它的卖点是:一次调用,就跑起 Codex 与 ChatGPT for Work 背后的同一套托管 harness——可跨轮次续作的持久会话、流式进度、你自己的工具与 MCP 服务器、子智能体协同、会话逼近窗口上限时对早先上下文的自动压缩,以及某一步失败后的恢复。

执行则被刻意解绑。所谓 Environment——智能体跑代码、改文件、读输出的那个可选沙箱——可以由 OpenAI 托管、由你自有基础设施提供,也可以从九家合作方中选取:Blaxel、Cloudflare、Daytona、DigitalOcean、E2B、Modal、Oracle、Runloop、Vercel。

公测期内,Agents API 本身不收费。你付的是模型 token、工具,以及——若使用托管沙箱——容器时长:按内存档位以每二十分钟会话计价,符合条件的会话按分钟计费、五分钟起步。

有一点值得分清,因为名字太容易撞车:Agents API session、Agents SDK session、Responses conversation 与 sandbox,是四种不同的资源。Responses API 是你拿来拼出一个循环的原语;Agents API 就是那个循环本身。

终于有人把循环卖出来了

Where the agent loop runs, across three generations of product Three columns. Roll your own: you write the loop and own compaction, and every version in the stack can be pinned. Managed agent runtimes such as AgentCore, Foundry and Vertex AI Agent Engine: they sell identity, memory, a tool gateway and traces around a loop you still write yourself. The Agents API: OpenAI writes and runs the loop, and you supply tools and choose where code executes. Who writes the control loop Roll your own You write the loop. You own the compaction prompt and its policy. Managed runtimes Identity, memory, gateway, traces — sold around a loop you still write. Agents API OpenAI writes and runs the loop. You supply tools and pick the sandbox. Version tuple Version tuple Version tuple Model, prompt, harness, judge — all pinnable. All pinnable; the ring services carry SLAs. One slot reads "current", permanently.
上一代托管产品卖的是循环周围的一切。这一代卖的是循环本身。

一个月前,对托管智能体平台最诚实的一句总结是:它们没有一家会把循环卖给你。AgentCore、Foundry、Vertex AI Agent Engine 与 Cloudflare Agents 各自卖的,是环绕在一个仍需你亲手编写的控制循环之外的一圈服务——身份、记忆、工具网关、追踪、持久执行——而它们不卖循环,并不是出于拘谨。循环正是厂商的主张变成你的行为的地方,没人愿意扛下这份归属。

Agents API 扛下了。这是一项货真价实的产品决定,而且确实省掉了实打实的工作:会话持久化、重试、子智能体扇出,以及"第四十步模型返回了一堆垃圾怎么办"这一长尾,都是团队会反复重写、且往往写得不好的东西。凡是写过两次智能体循环的人都知道,第二次并没有更好,只是更"自己"而已。

但循环并不是一个非有即无的整块。它是一串步骤,而这些步骤在"会多大程度上改变正在运行的东西之含义"上,差别极大。重试策略是个旋钮。流式是管道。子智能体扇出是一种你能从外部推理的架构,因为你看得见子智能体的输入与输出。压缩这三样都不是。

压缩是会改写目标的那一步

任何长跑的智能体终将超出自己的窗口,而每一种实现给出的答案都是某种有损重写:把更早的轮次总结掉、丢掉看起来已用尽的工具结果、保留看起来还承重的部分。本站的上下文压缩页面把它当成一个记忆层级问题来处理,这也是通行的框定方式。这个框定说轻了。

压缩是循环里唯一一个会重写智能体自述其任务的步骤。目标是以文本形式进入对话记录的。压缩之后,它变成了那段文本的一次转述——由一个模型产出,依据的是一段不是你写的总结提示词。在一次长会话里这么来上四次,智能体追的就是你那条指令的第四代复述了——它追得很称职、很笃定,而对照的验收标准已经没人能还原。

这正是目标漂移背后的首要机制,而漂移恰恰是那种能从结果评估里活下来的失败:最终产物是对智能体最后在问的那个问题的一个好答案。你没法靠给结果打分抓到它,因为就其自身的口径而言,结果是好的。抓它的办法,是把目标钉在对话记录之外、并逐字重新注入——而这是一件你对"自己的"压缩步骤才做得了的事。

具体的检验方式:把一次长会话的对话记录翻到压缩触发的那一处,找出陈述目标的那一句。如果它是一句转述而不是你原本的字符串,你就有一个漂移面。如果你连翻到那一处都做不到,你就有一个量不了的漂移面。

所以,对一套托管 harness 该问的问题不是"它的压缩好不好",而是:它变了的时候,我看得出来吗?harness 版本不是模型版本。它可以在某个周二上线、把中位情形改好,同时挪动你的智能体在长尾上的行为——也就是压缩真正会触发的那些会话——而你日志里没有任何一个标识符会跟着变。你手上的每一个评测分数,都隐含着一个由模型版本、提示词版本、harness 版本与裁判版本构成的元组,而上线与版本管理这整套纪律存在的意义,就是让这个元组保持显式。公测交给你的这个元组,有一格被永久标成了"当前"。

这些都不意味着这个产品是个错误。它意味着这是一笔有明确价格的交易,而这个价格,是从你归因一次回归的能力里扣的。下个月通过率掉了四个点时,候选解释有:你的提示词、你的工具、模型,以及第四样你既查不了、钉不住、也回滚不了的东西。

harness 是免费的,而这正是提示

Hosted sandbox price per twenty-minute session by memory tier Horizontal bar chart with four bars. One gigabyte costs three cents per twenty-minute session, four gigabytes twelve cents, sixteen gigabytes forty-eight cents, and sixty-four gigabytes one dollar and ninety-two cents. Bar lengths scale linearly with memory, so the price is a flat rate of roughly three cents per gigabyte per session. USD per 20-minute container session 1 GB $0.03 4 GB $0.12 16 GB $0.48 64 GB $1.92 $0.48 $0.96 $1.44 $1.92 Flat ~$0.03 per GB per session. Eligible sessions bill per minute, five-minute minimum.
容器时长是 Agents API 新增的唯一一项账单。harness 本身定价为零。

把这套定价当成一份设计声明来读,而不是当成打折。容器档位随内存线性增长——约合每 GB 每二十分钟会话三美分——而按分钟计费、五分钟起步,正面回应了"沙箱大部分时间是闲着的"这一质疑。这一部分拿捏得好。

与此同时,harness 不要钱,其成本由 token 支付。这层对齐值得直说:一套压缩得更晚、保留更多历史、或重试更频繁的 harness,会让你多付钱、也让厂商多赚钱,而没有任何一项账单条目会让你察觉。这不是指控——激进的压缩同样会拖垮质量,所以激励并非单向——但它正是"一个免费组件在推理上从来不免费"的原因。唯一的防线,是一个由你自己算出来的数字:每完成一项任务所耗的 token,按 harness 变更逐次跟踪。这与智能体单位经济要求的是同一套纪律,而几乎没人会把它用在一个自己都不知道"原来有版本"的组件上。

九家沙箱合作方不是慷慨

被解绑的执行层,是这次发布里结构上最有意思的一项选择,而它与这条新闻显而易见的读法正好相反。一家要把栈收拢的厂商,会自己托管沙箱、到此为止。OpenAI 却点名了九家沙箱供应商,还允许你自带基础设施。

原因在于,受监管的异议都住在算力那一层。数据驻留、网络出口、VPC 对等、审计员追问某个文件是写在哪个司法辖区的——这些才是会把企业合同拖住的对话,而它们问的全是代码在哪里跑,不是谁下令让它跑。把这一层交给合作方,既拆掉了阻碍,又留住了真正拉开差距的那一层。

这也就告诉了你 OpenAI 认为哪一项才是耐用资产,而它与基准文献的结论一致。过去一年的智能体评测反复抵达同一个令人不适的发现:被测出的智能体性能里,有很大一份属于脚手架而非模型——把 harness 算进去的分数与开放轨迹语料都落在了这里。如果性能由脚手架承载,那脚手架就是产品。Agents API 就是这条论点被做成了一个端点。

什么时候值得接下这笔交易

处境用托管 harness留着自己的循环
会话短,几乎不触发压缩 用——有风险的那一步几乎不会发生。 只有在你已经搭好了的情况下。
长时自主运行,时长以小时计 仅在你能自己做目标重注入时。 留着——这里的压缩策略是一项产品决定。
你用评测套件卡发布 仅在你同时钉住一条金丝雀并频繁重设基线时。 留着——你需要那个版本元组是完整的。
受监管数据,驻留要求严 用,配自有或合作方沙箱。 只有在 harness 也必须留在境内时。
你在做原型 当然用。 不必。

如果你要采用它,头一周有三件事值得做,而且都不贵。把你的目标放在一个 harness 转述不到的地方——做成一个智能体必须调用才能重读验收标准的工具就行,因为工具结果会在每一个窗口里新鲜抵达。留一条冻结的场景每天重跑,模型与提示词固定,这样一次无声的 harness 变更,就会表现为你能控制的那条线上出现一次无从解释的位移。再从第一天起就记录每完成一项任务所耗的 token,因为对一个你读不懂其行为的组件,这条序列是你能拿到的唯一早期预警。

退出这个问题,要在采用之前答,而不是在事故当中答:离开长什么样?退出一套托管智能体运行时基本上是个数据引力问题,而这里的引力很特别——被扣住的不是你的数据,是你的标定。工具一个下午就能搬走。"我的智能体在第三个小时会怎么表现"这份认识,搬不走。

常见问题

Agents API 是 Responses API 的替代品吗?

不是。Responses API 是你拼装成循环的原语;Agents API 替你跑那个循环。两者是各有各的会话对象的独立资源,建在 Responses 上的智能体不会自动变成一个 Agents API 智能体。

用 Agents API 是否意味着我的代码跑在 OpenAI 的基础设施上?

不一定。执行是解绑的:你可以用 OpenAI 托管沙箱、用九家具名合作方之一(含 Cloudflare、E2B、Modal、Vercel),也可以用自有基础设施。但无论如何,harness 都跑在 OpenAI——那才是你挪不走的那一块。

为什么单挑压缩来说,而不是整套 harness?

因为其余步骤从外部是可观测的。你看得见一次重试重试了什么、一个子智能体被要求做什么。压缩重写的是对话记录本身,包括陈述目标的那一句,所以它的影响恰恰在最要紧的那些运行里是隐形的。

公测定价实际会让我付多少?

照旧是模型 token 与工具,外加使用 OpenAI 沙箱时的托管容器时长——按内存档位以每二十分钟会话计价,符合条件的会话按分钟计费、五分钟起步。公测期内 API 本身不另行收费。

我已经在跑自己的循环了,还有理由切换吗?

子智能体编排与会话持久化是实打实的工作量,如果你这两块不牢靠,这笔交易可能划算。但别在你同时也在换模型或改提示词的那个季度切换——你会丧失对接下来发生的任何事做归因的能力。

延伸阅读

本站相关:

信息来源: