Agent Evaluation
智能体评估用于测试 AI 智能体能否正确、可靠地完成多步任务,并通过多次试验对最终结果和执行记录进行评分。
智能体评估是检验AI 智能体能否正确、可靠、安全地完成多步骤任务,并将成本控制在可接受范围内的实践。智能体会在受控环境中尝试每项任务,评估器则检查最终结果(例如数据库中是否确实已发放退款),以及促成该结果的消息和工具调用记录。智能体评估与普通模型评估有三点不同:输出是一系列会改变环境状态的操作;同一个智能体可能这次成功、下次失败;围绕模型构建的智能体运行框架,包括提示词、工具和记忆规则,对结果的影响可能与更换模型一样大。
智能体评估的工作原理#
Anthropic 的AI 智能体评估指南采用了大多数团队通用的一套术语。任务是一个输入和成功标准明确的测试。试验是对任务的一次尝试;由于智能体的行为会因运行而异,每个任务会进行多次试验。记录也称为轨迹或执行路径,会记录每个输出、工具调用和中间结果;结果则是环境的最终状态。评估器会对每次试验打分,分为三类:
- 基于代码的评估器:以确定性方式检查结果和记录,例如测试套件是否通过、记录是否存在,或是否调用了禁用工具。它们速度快、成本低且可复现。
- 基于模型的评估器:LLM会根据评分标准为记录打分,适合评估语气,或答案是否有检索证据支持等特质。由于这类评估器可能与智能体有相同的盲点,因此需要根据人工标签进行校准。
- 人工评估器:领域专家审查样本、解决分歧,并提供用于校准模型评估器的标签。
智能体评估的衡量内容#
- 任务成功:环境是否进入所需状态。检查环境状态而非智能体的最终消息,可以发现智能体声称成功却并未真正完成任务的情况,这是一种幻觉。
- 可靠性:智能体在重复试验、改写请求和工具故障情况下,能否始终成功。
- 执行轨迹质量:智能体是否选择了正确的工具、传入了有效参数,并避免了过程中无用或高风险的步骤。
- 安全性与策略合规性:智能体是否遵守权限、拒绝违反策略的请求、在执行重大操作前征求同意,以及抵御输入中植入的提示注入。
- 成本与延迟:每个已完成任务消耗的 token 数、工具调用次数和实际耗时,这些指标决定了可用的智能体是否适合在生产环境中负担得起。
使用 pass@k 和 pass^k 衡量可靠性#
两项指标可概括多次试验的结果。pass@k 由 OpenAI 2021 年关于代码生成的 Codex 论文推广,表示 k 次尝试中至少有一次成功的概率,适用于有人或测试可以从中挑选最佳答案的任务。pass^k 于 2024 年随 τ-bench 基准提出,表示 k 次尝试全部成功的概率,适用于每次都必须正确响应客户的智能体。若某个任务进行了 n 次试验,其中 c 次成功,则可使用二项式系数估算这两项指标,再对所有任务取平均:
from math import comb
# Graded outcomes of 8 trials per task (1 = the final environment state was correct)
trials = {
"cancel_order": [1, 1, 1, 1, 1, 1, 1, 1],
"change_flight": [1, 1, 0, 1, 1, 1, 0, 1],
"refund_with_coupon": [1, 0, 0, 1, 0, 1, 0, 0],
}
for k in (1, 4, 8):
# pass@k: at least one of k trials succeeds; pass^k: all k trials succeed
pass_at_k = sum(1 - comb(len(t) - sum(t), k) / comb(len(t), k) for t in trials.values()) / len(trials)
pass_hat_k = sum(comb(sum(t), k) / comb(len(t), k) for t in trials.values()) / len(trials)
print(f"k={k}: pass@k={pass_at_k:.2f} pass^k={pass_hat_k:.2f}")当 k=1 时,两项指标都为 0.71,即平均成功率。当 k=8 时,pass@k 达到 1.00,因为每项任务至少成功过一次;pass^k 则降至 0.33,因为只有一项任务在八次试验中全部成功。τ-bench 在实践中也发现了同样的差距:2024 年表现最好的函数调用智能体(例如 GPT-4o)解决其零售和航空客户服务任务的比例不到一半,而它们在零售任务上的 pass^8 低于 25%。
智能体基准与相关术语#
公开基准覆盖了主要的智能体类型。SWE-bench 使用 2,294 个真实 GitHub 问题评估智能体编程;WebArena 使用自托管网站上的 812 项任务评估网络智能体;OSWorld 使用 369 项桌面任务评估计算机使用智能体,而人类在这些任务上的成功率为 72.36%;GAIA 则使用 466 道通用助理问题进行评估,人类答对率为 92%,而 2023 年发布时,配备插件的 GPT-4 答对率为 15%。团队会将这些基准与内部测试集搭配使用,通常会构建一个包含自家产品任务及预期结果的黄金数据集,因为公开基准可能泄漏到训练数据中,而且很少与产品使用的工具相匹配。智能体评估还与三种相关实践有所交集:
- 模型评估:在固定数据集上为单个模型的输出打分,例如用平均精度均值(mAP)评估检测器。它评估的是智能体的某个组件。
- 可观测性:记录智能体在生产环境中的行为。评估则会根据通过标准检查这些记录或测试运行。
- AI 红队测试:通过对抗性测试寻找新的失效问题。发现的问题会成为评估套件中的回归测试任务。
最有效的测试套件会从生产环境中的失效案例中不断扩展,视觉智能体也会对其感知步骤采用相同的循环。在 Ultralytics Platform 智能体中,“收集不确定检测”模板会将数据集图像输入已部署的检测器(例如经过微调的 YOLO26 模型),并将至少包含一个检测结果、且其置信度处于例如 0.25 至 0.5 之间的每张图像复制到审核数据集中;随后由人工标注这些疑难案例,将其用作新的测试数据和训练数据。










