评估指标
先定义一次业务成功,再选能解释失败的指标。每次报告都写明样本集版本、分母、评分方法和失败请求的处理方式;单个均值不能替代逐条失败记录。
RAG 指标
下面约定:对一个问题,标注的相关证据集合为 R,前 k 个去重检索结果为 S_k;排序名次从 1 开始。标注不完整时,计算得到的是相对于已标注证据的结果,不是对全部相关文档的真实召回率。
| 指标 | 计算口径 | 解释与边界 |
|---|---|---|
| Recall@k | |R ∩ S_k| / |R| | 是否找齐已标注证据;R 为空时单独分桶 |
| Hit@k | 命中至少一条相关证据记 1,否则 0 | 不等于 Recall;多证据题命中一条未必够答 |
| Precision@k | |R ∩ S_k| / k | 约定不足 k 条仍以 k 为分母;用实际返回数时需另行注明 |
| MRR | 各题第一个相关结果名次倒数的平均 | 无命中记 0;只关注第一个相关结果 |
| NDCG@k | DCG@k / IDCG@k | 支持分级相关性;无相关标注时需说明处理规则 |
常用 DCG@k = Σ (2^rel_i - 1) / log2(i + 1),IDCG 是相同标注在理想排序下的 DCG。不要把未经标定的模型相似度直接当作人工相关性等级。
计算例子:相关证据为 {A, B},前三条结果为 [C, A, D],则 Recall@3 为 1/2,Hit@3 为 1,Precision@3 为 1/3,倒数排名为 1/2。假设完整相关集只有 A、B,且二元相关性,则 NDCG@3 约为 0.631 / 1.631 = 0.387。这些数字是教学演算,不是某个系统的效果。
上下文、答案与引用要分别评分
| 指标 | 本手册采用的操作定义 | 不能推出什么 |
|---|---|---|
| 上下文相关片段比例 | 相关片段数 / 实际送入模型的片段数 | 片段相关不代表答案正确;按 token 加权应另报 |
| Faithfulness | 被给定证据支持的可核查断言数 / 可核查断言总数 | 忠于错误或过期证据仍可能答错 |
| 引用正确率 | 引用确实支持相连断言的次数 / 已给引用次数 | 少给引用可能让比例高却覆盖不全 |
| 引用覆盖率 | 有有效引用的需证据断言数 / 需证据断言总数 | 覆盖高仍需检查来源可信度与时效 |
| 端到端任务成功率 | 满足预定义答案要求的样本数 / 全部任务数 | 不能据此定位检索还是生成出了问题 |
同名 Context Precision 在不同工具中可能有不同算法,应注明实现、版本和评分提示。语料无答案的问题单独测正确拒答与错误回答;不能只统计“有标准答案”的简单题。继续阅读 RAG 评估。
生成质量指标
| 指标 | 适合什么任务 | 必须固定的口径 |
|---|---|---|
| Exact Match | 短答案、枚举类别 | 大小写、空格、日期等归一化规则 |
| Token F1 / ROUGE | 抽取与摘要的词元重叠对比 | tokenizer 与计算变体;不等同事实正确 |
| JSON 解析通过率 | 结构化管道 | 分母是否包含超时、拒答和空输出 |
| Schema 通过率 | 字段与类型约束 | schema 版本;合法 JSON 未必符合 schema |
| 字段/任务准确率 | 结构化业务结果 | 不得只在格式通过的样本上计算后宣称整体准确率 |
| 人工偏好胜率 | 开放式答案比较 | 盲评、展示顺序随机化、平局口径与评审标准 |
例如 100 次请求中 95 次能解析、90 次满足 schema、80 次业务字段全对,应分别报告 95/100、90/100、80/100。不要用 80/90 替代端到端正确率。
Agent 指标
| 指标 | 建议计算口径 | 用于诊断 |
|---|---|---|
| 任务成功率 | 最终业务状态符合验收的任务 / 全部任务 | 防止只凭“已完成”文字打分 |
| 工具调用正确率 | 工具、参数及目标资源均正确的调用 / 被评审调用 | 与工具 API 可用率分开统计 |
| 恢复率 | 在定义的可恢复故障后完成的任务 / 遇到该类故障的任务 | 单独列结果未知、越权等不可盲重试情况 |
| 人工接管率 | 人工接管任务 / 全部任务 | 按正常审批、权限不足、能力失败分桶 |
| 越权执行率 | 发生未授权动作的任务 / 受测任务 | 同时报告次数与受测攻击覆盖面 |
| 每成功任务成本 | 全部尝试的总成本 / 成功任务数 | 失败重试成本也要算;无成功时不定义 |
把业务终态、过程约束与预算一起评估。一个通过越权操作完成的任务不能算正常成功,人工审批本来就是流程要求时,也不能简单追求接管率越低越好。参见 Agent 评估。
训练与微调指标
- Validation loss:观察与训练目标对应的泛化趋势;不替代任务、事实性或安全评估。
- Win rate:提前约定平局计半分,或同时报告胜/平/负;不能悄悄移除平局改变分母。
- Regression rate:可定义为基线正确、新版本错误的样本占基线正确样本的比例,同时报告新修复样本。
- Calibration:如果系统有可解释的概率输出,检查概率与实际正确率是否一致;模型口述“90% 自信”不自动成为校准概率。
模型、adapter、tokenizer、chat template、解码参数、量化配置均属于实验版本。详见 模型评估。
生产监控指标
| 类别 | 应记录的量 | 易错点 |
|---|---|---|
| 延迟 | 端到端 P50/P95/P99、排队、首 token、生成时长 | 各阶段 P95 不能直接相加成为端到端 P95 |
| 吞吐 | 请求/秒、输入/输出 token/秒、并发 | 同样 QPS 下,长输出可能消耗更多资源 |
| 成本 | 模型、检索、工具、重试和人工复核 | 价格与缓存命中会变,保留计费日期和口径 |
| 错误 | 限流、超时、模型格式、工具业务错误 | HTTP 200 不代表业务任务成功 |
| 反馈 | 修正、重复提问、放弃、接管原因 | 点赞率受样本选择和反馈意愿影响 |
指标选择原则
- 先标注失败类型,再选主指标;其余指标用于定位和约束。
- 以同一批样本做成对比较,报告样本量和逐条变化;小样本变化不能当稳定收益。
- 模型评分器固定版本、评分说明和展示顺序,并用人工子集校准。评分器失败单独记账,不能默认为中等分。
- 验证集用于迭代,独立测试集用于最终报告;线上反馈回流后形成新版本,不悄悄修改旧结果。
- 发布阈值由业务风险和基线共同决定。没有适用于所有场景的统一“90 分可上线”。
记录格式见 评估与复盘模板。