Update avaliable. Click RELOAD to update.
📱 安装应用到主屏幕,获得更好体验
目录

Anthropic 把评估做成了产品:Outcomes 背后的真实故事

1. 你写过这个循环

18 个月前,当你第一次把 Claude Agent 部署到生产环境时,你写了一个评估标准(rubric)、写了一个评分器(grader)、写了评分器说”不通过”时的重试逻辑。你写了一个 while not satisfied 循环。

2026 年 5 月 6 日,Anthropic 在 Code with Claude San Francisco 上把这个循环做成了 API 端点,取名为 Outcomes

这是新闻。下面的故事更大——Outcomes 是 Anthropic 决定出售的第一个”马具层”(harness layer)。

2. 四项发布

Anthropic 在 5 月 6 日向 Managed Agents 发布了四项内容,没有新模型:

功能状态作用
Outcomes公开 Beta评估循环即服务
Multi-Agent Orchestration公开 Beta多 Agent 编排
Webhooks公开 Beta生命周期钩子
Dreams研究预览跨会话记忆整合

媒体焦点在 Dreams 上——能让 Agent 在会话之间整合记忆,在 Harvey 上的任务完成率提升了六倍。但架构意义最深的是 Outcomes。

3. Outcomes 是什么

评估标准(rubric)是一个 Markdown 文档。你描述”成功”长什么样。Agent 做工作。当 Agent 认为完成时,一个独立的 Claude 实例接收输出、读取你的 rubric、评估质量——在它自己的上下文窗口里运行。

关键设计:评分器不看到 Agent 的推理过程。 它不看 Agent 走了哪些工具调用路径。它只看到最终输出和 rubric。这防止了评分器被 Agent 的”看起来很有道理但其实是错的”推理影响。

循环默认最多跑三次,上限二十次。你可以写 rubric 来指定每次迭代是放松还是收紧标准。

Outcomes 在旧架构中对应的是 500 行代码。在 Managed Agents 中对应的是四行 API 调用和一份 Markdown 文件。

五个状态:

状态含义
satisfied发布
needs_revision指出问题,再来一次
max_iterations_reached尝试次数耗尽
failed评分器无法评估
error系统错误

性能数据:

4. 真正的故事:4 月 8 日的架构重构

5 月 6 日的发布不是路线图——路线图已经在 4 月 8 日发布了。5 月 6 日是”税收”:四个依赖同一个底层重构的功能,各自收一次费。

4 月 8 日,Anthropic 发布了一篇工程博客《Scaling Managed Agents: Decoupling the brain from the hands》。几乎没人引用它。它不发布任何功能。它描述 Managed Agents 如何围绕三个原语重建:

Session(会话) 只追加的事件日志。通过 getEvents() 读取,emitEvent() 写入。工具调用、结果、模型响应、用户消息都在一个持久化的日志里。你可以把 session 看作 Agent 活动的完整审计轨迹。

Brain(大脑) Claude 本身 + 调用 Claude 并路由工具调用的 harness 循环。从 harness 角度看,brain 故意无状态——恢复就是打开另一个 brain,读取同一个 session。如果第一个 brain 崩溃了,第二个 brain 可以从 session 日志的断点处接上。

Hands(手) 实际执行代码的沙箱、MCP 服务器、工具。从 brain 角度看,所有 hands 长得一样:execute(name, input) → string。无论底下是 Python 解释器、bash shell 还是外部 API,brain 不关心。

Anthropic 用 Unix 的 read()/write() 做类比——跨硬件代际工作的抽象层。效果:首次 token 时间 p50 下降 60%,p95 下降 90%+

为什么这个重构对 Outcomes 重要

在旧的耦合架构中,评估循环是你的问题——因为没有共享的基础设施来挂第二个评估器。Agent 的 brain 把 session 保存在内存里。工具调用和模型响应用同一个进程处理。

4 月 8 日的解耦改变了这一切。session 是持久化且可查询的。两个 brain 可以读同一个 session。 一个是 Worker。第二个隔离的 brain 是 Grader。

这就是 Outcomes 的机械原理:第二个 brain 接入你的 session 日志,通过你定义的 rubric 来评分。 Grader 读取 Worker 的输出,打分,把结果写回 session。Worker 在下一轮迭代中读取 feedback。

5. 马具层正在被拆解

5 月 6 日发布的是四个层的拆解。每一项曾经都是你的代码:

产品你之前做的
验证Outcomeswhile not satisfied 评估循环
记忆Dreams定时 cron 任务总结会话
编排Multi-Agentasyncio 调度器 + 自定义分发表
生命周期Webhooks轮询 API 检查任务完成

每个 harness 层都变成可以单独购买的产品。你不再构建它们——你组合它们。

这就是为什么 Outcomes 最先发布——在四个中,验证是最干净的提取层。记忆有策略和审计复杂性。编排有成本控制复杂性。Webhooks 有兼容性复杂性。验证只有:rubric → API → 结果。

6. 你该怎么做

文章给出三个具体建议,按杠杆排序:

停止写评估循环,开始写 rubric

Outcomes 处理循环、评分器、迭代上限、结构化反馈、重试逻辑、可观测性。你的工作变成定义成功标准。一个 Markdown 文件比 500 行 Python 容易维护得多。

停止构建记忆整理管道,开始调度 Dreams

大多数运行小时级或天级任务的团队都有自建的记忆层——六个月后成了负债。没有人愿意维护那段代码,但每个人都依赖它。

停止运行编排器,开始定义子 Agent 规格

如果你的 Agent 已经在协调并行工作,你有一个编排器。它可能用 asyncio、有自定义调度表、两年前加上的——你已经忘了它怎么工作的。

7. 诚实的权衡

建议采用顺序

Outcomes 先上——最高的杠杆,最低的承诺。一个 Markdown 文件加一个 API 调用。可以在单个工作流上试点,随时可以回退。

应该继续自己写的部分: rubric、Agent 模板、工具定义、prompt、业务逻辑——一切编码”你的产品做什么”的东西,而不是”你的产品底层怎么做”的东西。

8. 观点

这篇文章最有价值的洞察不是 Outcomes 本身,而是”马具层正在变成 SKU”这个观察。回想过去一年 Anthropic 的工程投入——Claude Code、Claude Agent SDK、Managed Agents——全都在做同一件事:把每个生产 Agent 底下的那层基础设施,从你的代码库搬进他们的产品目录。

这不是一个功能加了价格标签。是每个生产 Agent 底下的那层代码,从你的代码库转移到了 Anthropic 的产品目录。

正确做法不是全部迁移。正确做法是删代码:停止写评估循环,开始写 rubric。

原始资料

版权所有,本作品采用知识共享署名-非商业性使用 3.0 未本地化版本许可协议进行许可。转载请注明出处:https://www.wangjun.dev//2026/05/anthropic-outcomes-verification-becoming-sku/