AI Agent 评估体系完全指南:Anthropic 的实战经验

Anthropic 工程团队分享的构建 AI Agent 评估系统的最佳实践,涵盖评估结构、评分方法、不同类型 Agent 的评估策略,以及从零到一构建评估体系的具体路线图。

好的评估体系让团队能更有信心地发布 AI Agent。没有评估,你只能在生产环境里发现问题——修一个故障又引发另一个,陷入被动循环。评估让问题在影响用户之前就变得可见。

这篇文章整理自 Anthropic 工程团队的分享。


为什么要搞评估?

刚开始构建 Agent 的时候,手动测试、内部试用、直觉判断,靠这些能走很远。评估看起来反而像是拖慢发布的额外负担。

但当 Agent 进入生产环境开始规模化,这套模式就会崩溃。

崩溃点通常长这样:用户报告 Agent 在改动后"感觉变差了",但除了猜测,你没有任何方法验证。没有评估,调试只能是被动的——等投诉、手动复现、修 bug、祈祷没有其他地方退化。

有评估的好处

Claude Code 的例子:一开始靠内外部用户反馈快速迭代,后来加了评估——先针对简洁性和文件编辑这些窄领域,然后扩展到更复杂的行为比如过度工程化。这些评估帮助识别问题、指导改进,产品和研究能对齐。


核心概念

一个评估就是对 AI 系统的测试:给 AI 一个输入,对输出应用评分逻辑来衡量成功。

几个术语:

术语什么意思
任务 (Task)带有定义输入和成功标准的单个测试
试验 (Trial)对任务的单次尝试,因为模型输出会变化,需要跑多次
评分器 (Grader)对 Agent 某方面性能打分的逻辑
记录 (Transcript)试验的完整记录,包括输出、工具调用、推理等
结果 (Outcome)试验结束时环境的最终状态

Agent 评估比单轮评估复杂得多:Agent 跨多个回合用工具、会修改环境状态、错误可能传播累积。前沿模型还经常找到超越静态评估限制的创造性解决方案。

有个有意思的例子:Opus 4.5 在解决一个预订航班的问题时,发现了政策里的一个漏洞。它"未通过"书面评估,但实际上给用户想出了更好的方案。


评分器类型

Agent 评估通常结合三种评分器:

基于代码的评分器

确定性输出,完全可重现,执行速度快,成本低。适合单元测试、状态验证、格式检查。

基于模型的评分器

灵活处理开放式任务,能捕捉细微差别,可扩展。方法包括基于评分准则打分、自然语言断言、成对比较、多评委共识。挑战是非确定性,比代码更贵,需要跟人工评分校准。

人工评分器

黄金标准质量,匹配专家判断,用于校准模型评分器。挑战是贵且慢。


能力评估 vs 回归评估

能力评估问的是:"这个 Agent 能做好什么?"

应该从低通过率开始,针对 Agent 难以完成的任务,给团队一个需要攀登的高峰。

回归评估问的是:"Agent 还能处理它以前能处理的任务吗?"

应该有接近 100% 的通过率。分数下降意味着有问题需要修复。

演进路径:高通过率的能力评估可以"毕业"成为回归套件。曾经衡量"我们能做到吗"的任务变成衡量"我们还能可靠地做到吗"。


不同类型 Agent 怎么评估

编码 Agent

核心方法是确定性测试 + LLM 准则评估 + 静态分析 + 状态检查 + 工具调用追踪。

关键基准:SWE-bench Verified(给 Agent GitHub issue,跑测试套件评分),Terminal-Bench(端到端技术任务,比如从源码构建 Linux 内核)。

对话 Agent

交互本身的质量就是评估内容的一部分。多维度成功:工单是否解决(状态检查)+ 是否在 10 轮内完成(记录约束)+ 语气是否合适(LLM 准则)。

研究 Agent

挑战在于专家可能对综合是否全面存在分歧,参考内容不断变化,更长更开放的输出为错误创造更多空间。

策略:事实依据检查(声明得到检索源支持)、覆盖率检查(好答案必须包含的关键事实)、来源质量检查(来源是权威的)。

计算机使用 Agent

需要在真实或沙箱环境跑 Agent,检查是否达到预期结果,做后端状态验证(确认订单确实下了,不只是确认页面出现了)。


处理非确定性

Agent 行为在运行之间会变化,两个关键指标:

pass@k:Agent 在 k 次尝试中至少获得一个正确解决方案的可能性。适合"有一个成功就够"的工具。

pass^k:所有 k 次试验都成功的概率。如果每次试验成功率是 75%,跑 3 次全部通过的概率是 (0.75)³ ≈ 42%。适合面向用户的 Agent,用户期望每次都可靠。


从零到一的路线图

第 0 步:尽早开始

不需要几百个任务才开始。20-50 个从真实失败中提取的简单任务就是很好的起点。

早期 Agent 开发中,每次系统变更通常有清晰可见的影响,大效应量意味着小样本量就够了。

第 1 步:从手动测试开始

从你开发时运行的手动检查开始——每次发布前验证的行为,用户尝试的常见任务,bug 追踪器,支持队列。

第 2 步:写明确的任务和参考解决方案

好任务的标准:两个领域专家独立评判会得出相同的通过/失败结论。

任务规范里的模糊性会变成指标里的噪音。评分器检查的一切都应该在任务描述里明确。

重要提示:用前沿模型时,多次试验 0% 通过率通常是任务有问题的信号,不一定是 Agent 无能。

第 3 步:构建平衡的问题集

测试行为应该发生和不应该发生的情况。单边评估会导致单边优化。

例子:为 Claude.ai 构建网络搜索评估时,挑战是防止模型在不该搜索时搜索,同时保持它在适当时进行广泛研究的能力。团队构建了两个方向的评估:应该搜索的查询和应该从现有知识回答的查询。

第 4 步:构建健壮的评估框架

环境隔离:每次试验从干净环境开始。避免运行间不必要的共享状态。

第 5 步:周到地设计评分器

推荐顺序:尽可能用确定性评分器 → 必要时用 LLM 评分器 → 谨慎用人工评分器。

关键原则:

第 6 步:检查记录

你不知道评分器是否工作良好,除非你阅读许多试验的记录和成绩。失败应该看起来公平,清楚 Agent 做错了什么。

阅读记录是验证评估在衡量真正重要内容的方式。

第 7 步:监控能力评估饱和

100% 的评估追踪回归但不提供改进信号。

Qodo 的例子:最初对 Opus 4.5 印象不深,因为他们的一次性编码评估没捕捉到更长更复杂任务的收益。后来开发了新的 Agent 评估框架,才看清楚进步。

第 8 步:长期维护

评估套件是需要持续关注和明确所有权才能保持有用的活文档。

最有效的方法:建立专门的评估团队拥有核心基础设施,领域专家和产品团队贡献大多数任务并自己运行评估。让最接近产品需求和用户的人定义成功。


评估与其他方法的配合

评估只是理解 Agent 性能的众多方式之一:

方法优势最佳时机
自动化评估更快迭代、完全可重现预发布、CI/CD
生产监控揭示真实用户行为发布后
A/B 测试衡量实际用户结果重大变更验证
用户反馈带有真实用户例子持续
手动记录审查建立对失败模式的直觉持续
系统性人工评估黄金标准质量判断校准 LLM 评分器

最有效的团队结合这些方法——自动化评估用于快速迭代,生产监控用于真相,定期人工审查用于校准。就像瑞士奶酪模型,多层防护。


总结

没有评估的团队陷入被动循环——修一个失败,创造另一个,无法区分真正的回归和噪音。

早期投资评估的团队发现相反的情况:失败变成测试用例,测试用例防止回归,指标取代猜测。

核心原则:

  1. 尽早开始,不要等完美的套件
  2. 来源于真实失败
  3. 定义明确的成功标准
  4. 结合多种评分器类型
  5. 确保问题足够难
  6. 迭代提高信噪比
  7. 阅读记录

延伸阅读

查看原文