评测与基准
用途:判断“改动是否真的更好”,避免凭感觉调提示与拓扑
为什么必须有评测集
「为什么必须有评测集」小节链接多 Agent 系统的任何改动(换模型、改提示、调拓扑、加工具)都会同时影响质量、成本与延迟。没有固定评测集,就无法区分“这次跑得好”与“系统变好了”——单次运行结果的方差可能远大于改动带来的差异。
评测集构成
「评测集构成」小节链接| 要素 | 要求 |
|---|---|
| 任务样本 | 覆盖真实分布(含简单/复杂/边界/失败案例),数量足够(几十到几百条) |
| 期望结果 | 可判定的成功标准:单测通过、断言成立、必须包含的要素、禁止出现的要素 |
| 评分方式 | 优先客观检查(编译、测试、结构校验),其次规则打分,最后模型评审 |
| 多次运行 | 每个样本跑 N 次,报告均值与方差(或最差值),而非单次 |
| 版本化 | 数据集、提示、模型、拓扑、评分器全部纳入版本 |
指标分层
「指标分层」小节链接| 层 | 指标 | 说明 |
|---|---|---|
| 结果 | 通过率、任务成功率、缺陷率 | 主指标,建议用“至少一次通过”和“稳定通过率”两个口径 |
| 质量 | 代码可维护性、评审驳回率、回归数 | 需要人评或静态规则 |
| 过程 | 步数、工具调用次数、无效循环率 | 定位低效环节 |
| 成本 | token、金额、墙钟时间 | 与质量一起看(质量-成本曲线) |
| 可信度 | 谎报率(声明通过但门禁 FAIL 的比例)、未验证率 | 直接衡量门禁体系有效性 |
谎报率是多 Agent/Agent 系统里最该盯的指标:它是“看起来能用”与“真能用”的分界。
评分方式取舍
「评分方式取舍」小节链接| 方式 | 优点 | 缺点 |
|---|---|---|
| 客观检查(测试/编译/断言) | 可复现、便宜、可信 | 只覆盖可机械验证的部分 |
| 规则打分(结构、字段、长度、禁用词) | 稳定 | 易被“迎合指标”利用 |
| LLM-as-judge | 能评语义与风格 | 有偏(长度偏好、自我偏好、位置偏好),需校准 |
| 人工抽样评审 | 最终判断力 | 慢、贵、一致性需管理 |
实践组合:客观检查做主门禁 + LLM 评审做初筛 + 人工抽样校准 LLM 评审(计算其与人工判断的一致率,定期复核)。
避免“刷指标”
「避免“刷指标”」小节链接一旦某指标成为目标,它就会被优化到失真。对策:
- 指标组合(质量 + 成本 + 谎报率一起看)。
- 保留隐藏评测集(不参与日常调优)。
- 定期换题(防止过拟合到固定样本)。
- 对“迎合评分器”的行为专门设计反例(例如长答案、结构漂亮但内容错误)。
上线与回归
「上线与回归」小节链接- 改动走 A/B:同批样本分别跑新旧配置,比较分布差异(不只是均值)。
- 建立回归基线报告,每次发布归档,可追溯“哪次改动让通过率下降”。
- 生产抽样回流成评测集,保持分布真实。
常见误区
「常见误区」小节链接| 误区 | 修正 |
|---|---|
| 用几个 demo 判断好坏 | 固定评测集 + 多次运行 |
| 只看平均分 | 报告方差与最差情形(长尾决定可用性) |
| 让模型自己当唯一裁判 | 客观检查优先,评审器需校准 |
| 评测集与线上分布脱节 | 定期回流真实任务 |
| 只评质量不评成本 | 质量-成本曲线才是决策依据 |
| 不测谎报率 | 无法证明可信度提升 |
延伸阅读
「延伸阅读」小节链接- 本站:完成的证据层级、四值判定模型、成本与延迟预算
- 公开基准与评测框架资料(如 SWE-bench 类代码任务基准、LLM 评审偏差研究)