Agent开发系列(三):评测篇

Agent开发系列 · 第 3/4 篇

框架篇 · 记忆篇 · 评测篇 · Skill篇

Agent 的最终回答看起来正确,不代表它真正完成了任务。它可能调用了错误工具、绕了很多步骤、读取了不该访问的数据,或者只是这一次运气好。

因此,Agent 评测需要从“答案评测”扩展为“系统评测”。

一、Agent 评测的六个维度

维度 需要关注的问题
最终答案 是否正确、完整、符合格式
执行轨迹 步骤是否合理,是否存在无效循环
工具调用 工具选择、参数和调用顺序是否正确
状态管理 记忆和上下文是否一致
系统指标 延迟、Token、调用次数和成本
安全指标 是否越权、泄露或被注入

对复杂任务来说,轨迹往往比最终答案更早暴露系统问题。

二、从真实 Trace 建立评测集

评测集不应该只包含人工构造的顺利路径。更有效的做法是从真实运行日志中沉淀样本:

  • 工具返回空结果
  • API 超时或限流
  • 工具参数缺失
  • 用户中途改变目标
  • 历史记忆与当前信息冲突
  • 页面内容包含恶意指令

每个案例最好同时记录输入、可用工具、环境状态、期望结果和允许的执行边界。

三、常见评测方法

1. 规则断言

适合输出格式、数据库状态、文件变化和工具参数等确定性内容。规则评测成本低,也最适合进入自动化回归。

2. LLM-as-a-Judge

适合评估答案完整性、表达质量和部分开放式任务。但评审模型也可能有偏差,因此需要清晰评分标准、参考答案和抽样人工复核。

3. 过程检查

过程检查关注 Agent 是否完成关键步骤,例如是否先搜索再回答、是否在写文件前获得授权、是否在失败后重试。

4. 人工评测

人工评测成本较高,但适合建立基准、校准自动评审和发现新的失败模式。

四、核心指标

可以先从以下指标开始:

  • 任务成功率
  • 工具选择准确率
  • 参数准确率
  • 平均步骤数
  • 无效循环率
  • P50 与 P95 延迟
  • 单任务 Token 与成本
  • 失败后的恢复成功率

指标不应孤立使用。例如步骤数下降可能代表效率提高,也可能意味着 Agent 跳过了必要检查。

五、离线、CI 与线上评测

离线评测

用于比较模型、Prompt、记忆策略和框架变化。重点是覆盖范围与可复现性。

CI 回归

把稳定的黄金案例加入持续集成。每次修改 Agent 行为后自动运行,及时阻止明显回归。

线上评测

观察真实任务的成功率、成本、人工接管率和失败分布,并将新的失败案例补充回离线数据集。

六、一个最小评测流程

  1. 选择 20 到 50 个有代表性的真实任务。
  2. 保存模型版本、Prompt、工具配置和随机参数。
  3. 为每个任务定义结果断言和过程断言。
  4. 同时记录答案、Trace、成本和延迟。
  5. 新版本必须与基线版本对比,而不是只看绝对分数。

小结

Agent 评测的目标不是证明系统聪明,而是持续发现它在哪些条件下不可靠。下一篇将讨论如何把稳定的任务能力封装为可复用、可测试和可治理的 Skill。