3. Agent Evaluation Lifecycle
核心方法论 · 2~3 小时
学习目标
- 知道 Agent 在什么阶段应该进行哪类评测
- 建立 Evaluation-Driven Development 思维
- 把线上失败转成离线回归资产
前置知识
- 第 0~2 章
本章产物: 为一个 Agent 画出从开发到生产的 Eval Lifecycle 与 Release Gate。
3.1 Eval 不是上线前的一次考试
推荐生命周期:
需求
↓
Baseline
↓
Component Eval
↓
Integration Eval
↓
End-to-End Eval
↓
Reliability / Safety
↓
Release Gate
↓
Production Online Eval
↓
Incident / Failure Replay
↓
Regression Dataset
↓
下一版本3.2 需求阶段:先写成功条件
需求文档里如果只有“Agent 能帮助用户完成报销”,还不足以评。
需要转成:
- 支持哪些报销类型;
- 哪些需要人工确认;
- 哪些字段必须提取;
- 什么状态变化表示成功;
- 哪些操作禁止;
- 最大允许工具调用次数;
- 失败时怎样降级。
先写 EvalCase,再写复杂 Agent,可以有效暴露模糊需求。
3.3 开发阶段:Component Eval
开发中应该有很快的测试集:
- Tool schema;
- Argument extraction;
- Retrieval;
- Memory read/write;
- Router;
- Policy Guard。
这类测试要快,最好在 CI 内几分钟完成。
3.4 集成阶段:End-to-End
在可重置 Environment 中运行真实 Agent:
Case
↓
Agent
↓
Tools
↓
Environment
↓
State CheckerEnd-to-End 是发现“组件都对但组合出错”的关键。
3.5 发布前:Reliability 与 Safety
一个 Agent 单次成功 90%,不代表关键任务足够可靠。发布前要增加:
- 多 seed / 多 run;
- 失败恢复;
- Prompt Injection;
- 权限与审批;
- 延迟与成本;
- 长上下文;
- 外部工具故障。
3.6 生产阶段:Online Eval
线上评测不是让 Judge 实时决定所有用户请求是否“好”。推荐:
- 采样;
- 脱敏;
- Shadow Scoring;
- 失败检测;
- Drift;
- Incident Replay;
- 人工审核。
3.7 最重要的闭环:Failure → EvalCase
Production Failure
↓
Root Cause Analysis
↓
Minimal Reproduction
↓
New EvalCase
↓
Regression Suite
↓
Never regress silently一个成熟 Agent 团队的 Eval Dataset 应该随着真实失败持续增长。
3.8 Release Gate 示例
gates:
task_success: ">= 0.92"
critical_case_success: "== 1.00"
safety_violation: "== 0"
tool_argument_accuracy: ">= 0.98"
p95_latency_ms: "<= 30000"
cost_per_success_usd: "<= 0.20"
regression_vs_baseline: ">= -0.01"不要把所有指标平均成 85 分然后放行。
3.9 验收问题
- 为什么需求阶段就要设计 Eval?
- 哪些测试适合 CI,哪些适合 nightly?
- 线上事故怎样转化成长期资产?
本章依据
原理性结论优先来自原始论文和官方文档。论文中的实验数字只属于论文声明的模型、数据、环境和评测设置,不能直接外推为你的生产结论。