📚进度:0/670%
Agent 评估指标体系
没有评测的 Agent 只能算 demo。Agent 评估不仅看最终答案,还要看路径、工具、证据、安全、成本和可恢复性。
三层评估
| 层级 | 评什么 | 示例 |
|---|---|---|
| Component Eval | 单个模块是否正确 | 检索相关性、工具 schema、PDF 解析 |
| Trajectory Eval | 执行路径是否合理 | 工具顺序、重复动作、错误恢复 |
| End-to-End Eval | 最终任务是否完成 | 旅行方案是否满足预算,论文综述是否有证据 |
只看 end-to-end 成功率很危险,因为你不知道失败来自模型、工具、检索、上下文还是安全拦截。
核心指标
任务完成
| 指标 | 含义 |
|---|---|
task_success_rate | 任务最终是否完成 |
partial_success_rate | 部分目标是否完成 |
constraint_satisfaction | 是否满足预算、时间、格式、安全等约束 |
user_acceptance_rate | 人工审核是否接受输出 |
工具与轨迹
| 指标 | 含义 |
|---|---|
tool_call_accuracy | 工具选择和参数是否正确 |
tool_error_rate | 工具调用失败比例 |
avg_steps | 平均行动步数 |
repeated_action_rate | 重复无效动作比例 |
recovery_rate | 出错后是否能恢复 |
证据与事实性
| 指标 | 含义 |
|---|---|
citation_precision | 引用是否支持结论 |
evidence_recall | 是否找到了必要证据 |
hallucination_rate | 无证据断言占比 |
abstention_quality | 证据不足时是否拒答 |
成本与性能
| 指标 | 含义 |
|---|---|
latency_p50/p95 | 响应耗时 |
token_cost | token 成本 |
tool_cost | 外部 API 或浏览器成本 |
cache_hit_rate | 缓存命中率 |
安全与治理
| 指标 | 含义 |
|---|---|
unsafe_action_block_rate | 高风险动作是否被拦截 |
secret_leak_rate | 是否泄漏敏感信息 |
policy_violation_rate | 是否违反系统规则 |
human_escalation_rate | 需要人工确认的比例 |
Eval Case 格式
json
{
"id": "web-001",
"category": "normal",
"task": "打开官方文档并找到安装命令",
"expected_behavior": [
"访问页面",
"提取命令",
"给出来源 URL"
],
"forbidden_behavior": [
"不访问页面直接猜",
"编造命令"
],
"scoring": {
"task_success": 0.5,
"evidence": 0.3,
"format": 0.2
}
}可参考:examples/eval-cases.jsonl。
评分方式
| 方式 | 优点 | 缺点 |
|---|---|---|
| Exact match | 稳定、便宜 | 只适合确定答案 |
| Rule-based scorer | 可解释 | 规则维护成本高 |
| LLM-as-judge | 灵活 | 需要校准,会偏 |
| Human review | 质量最高 | 成本高 |
| Hybrid | 平衡稳定和覆盖 | 实现复杂 |
建议:关键指标用规则或人工抽检,开放质量用 LLM judge 辅助。
Trace 是评测前提
每次运行至少保存:
- run_id、case_id。
- 每步工具调用和参数。
- 工具返回摘要。
- 截图或文档证据路径。
- token、成本、耗时。
- 最终答案和评分。
示例 schema:trace-schema.json。
最小评测集
新项目建议从 20 条开始:
- 10 条正常任务。
- 5 条边界任务。
- 3 条工具失败任务。
- 2 条安全/拒绝任务。
上线或写进简历前扩展到 50 条以上,并加入回归测试。
常见评测陷阱
- 只测 happy path。
- eval case 和 prompt 互相泄漏。
- 用同一个模型生成答案又当 judge。
- 不保存 trace,无法定位失败。
- 不统计成本,只追成功率。
- 忽视安全拒绝,把“拒绝危险请求”误判成失败。
推荐工具
- Promptfoo:prompt、RAG、Agent 回归测试和红队。
- DeepEval:pytest 风格 LLM eval。
- Inspect:更规范的模型能力和安全评测。
- RAGAS:RAG 评测。
- BrowserGym:Web Agent 评测环境。
简历表达
为 Agent 系统设计 50 条 eval case,覆盖正常任务、边界约束、工具失败和安全拒绝;记录每步 tool call、observation、token、latency 和 artifacts,按任务成功率、引用准确率、恢复率、平均成本和高风险动作拦截率做回归评测。