跳转至

ai-skill-测评指标体系

📊 Level ⭐⭐⭐⭐⭐ | 17.3KB

Ai Skill 测评指标体系

02—通过率、增益 Δ、IFR 怎么看?AI Skill 测评指标体系完整解读

系列:AI Skill 测评体系从零到一(二) 难度:进阶 适合读者:需要理解测评数字含义的工程师和产品经理

📌 一句话摘要:AI Skill 测评有 8 个核心指标,90% 的人只盯通过率却忽略了「增益 Δ」——本文一次讲清楚每个数字的含义、来源和发布红线。

指标太多记不住?用「九层」来理解

AI Skill 测评指标体系由 9 层维度构成,从用户感知到工程内核,覆盖一个 LLM 应用上线前需要验证的所有质量维度。 记忆方法:把 9 层想象成「从用户感知到工程内核」的由外到内的洋葱结构。

口诀:触发→输出→规则→对话→容错→效率→设计→覆盖→维护

层级 quick 模式 standard 模式 full 模式
触发层、输出层、业务层 ✅ 必测 ✅ 必测 ✅ 必测
交互层、健壮层、工程层 — ✅ 必测 ✅ 必测
效率层、设计层 — ⚡ 部分 ✅ 必测
组织层 — — 💡 建议

核心指标逐一解读

先说「灰色结论」INCONCLUSIVE

INCONCLUSIVE(无法验证):这条用例没有出结论,不代表 AI 失败了,而是测试资产或环境尚未就绪。 常见原因:

  • 测试文件类型不符(如想测「住宿发票检测」规则,手头只有汽油发票)
  • 账号权限限制
  • 测试方法绕过了 Skill 层
  • 数据已过期或被删除 正确处理:补充对应测试资产后重新跑该用例。INCONCLUSIVE 用例不计入通过率,但必须在报告中单独说明补充计划。

1. 通过率(Pass Rate)

通过率 = 断言通过数 / 总断言数 × 100%

断言(Assertion):测试用例中对「Skill 应该输出什么」的具体描述。

准入阈值(参考值,非行业统一标准): | 风险等级 | 通过率要求 | 典型场景 | |---------|-----------|---------| | S 级(关键) | ≥ 95% | 报销、审批、涉及资金的写操作 | | A 级(重要) | ≥ 90% | 下游系统的直接输入、失效代价高 | | B 级(一般) | ≥ 80% | 失效影响体验但用户可自行修正 | | C 级(辅助) | ≥ 70% | 锦上添花,失效影响有限 | ⚠️ 对比基线 ≠ 准入基线:Δ=+35% 但通过率 87%(未达 S 级 95%)→ 不能发布。

2. 触发率(Trigger Rate)

触发率 = Skill 被正确触发的次数 / 总测试次数 × 100% 来源:信息检索领域的 Recall/Precision。 AI 模拟方案(阶段一自动运行):

从 description 提取触发语义
    ↓
自动生成 10 条测试 prompt(5 应触发 + 3 不应触发 + 2 边界)
    ↓
AI 逐条判断:prediction + confidence + reasoning
    ↓
输出 trigger_eval.json
准入处理(非硬性 FAIL 条件):

  • TP 估算 ≥ 80%:✅ 估算达标
  • TP 估算 70-80%:⚠️ 偏低,建议优化 description
  • TP 估算 < 70%:⚠️ 触发率不足,须优化后重测 undertrigger 问题:Claude 有 undertrigger 倾向——Description 要稍微「pushy」,明确写出「即使用户没有明确说,遇到 X 情况也要使用」。

3. 增益 Δ(Delta)

Δ = with_skill 通过率 − without_skill 通过率。Δ < 0 是发布硬红线。 来源:SkillsBench 论文(arxiv.org/abs/2602.12670):84 个有效任务中 16 个(约 19%)显示负向增益。 | Δ | 含义 | 行动 | |---|------|------| | > 0 | Skill 有帮助 | ✅ 正常发布 | | ≈ 0 | Skill 无增量价值 | 评估是否需要存在 | | < 0 | Skill 帮了倒忙 | 🔴 发布红线,查根因 | 三条件对比范式:

  • 条件 A:without_skill(纯模型能力基线)
  • 条件 B:with curated_skill(人工精心设计的 Skill)
  • 条件 C:with self-generated_skill(让模型自己生成 Skill) B > C → 人工 Skill 有价值;B ≈ C → 边际收益低;B < C → 人工 Skill 过度约束模型

4. 指令遵循率 IFR(Instruction Following Rate)

IFR = 正确遵循硬性规则的次数 / 触发硬性规则的总次数 × 100%。S 级要求 IFR = 100%。 硬性规则:Skill 中明确写了「必须」「禁止」「固定为」的规则。

来源:对应通用研究方向 Instruction Following,参考 Google 的 IFEval 基准(arxiv.org/abs/2311.07911)。 IFR vs 通过率:通过率是所有断言通过比例;IFR 只关注硬性规则。一个 Skill 可能通过率 92% 但 IFR 只有 80%——有 20% 的情况下违反了关键规则。

5. 一致性得分(Consistency Score)

一致性 = 关键字段完全一致的对比组数 / 总对比组数 × 100%

同一意图用不同表达方式(正式/口语/简略),关键输出字段应完全一致。

适用范围:full 模式才系统计算。

6. 稳定性(Stddev)

标准差 > 0.3 = 高度不稳定,立即排查。

Stddev 含义 行动
< 0.05 稳定,结果可信 S 级发布要求
0.05-0.10 轻微波动,可接受 观察
0.10-0.30 明显不稳定 检查 prompt 歧义
> 0.30 高度不稳定 检查 Skill 规则冲突

7. 幻觉检测(Hallucination Detection)

S 级 Skill 要求 0 次幻觉。

幻觉:接口调用实际失败了,但模型仍输出「草稿已保存」——链接是编造的。

检测方法:评审 Agent 提取输出中的所有「隐含声明」并逐一核查是否有执行记录支撑。

8. 覆盖率(Coverage)

综合覆盖率 = 功能覆盖率×0.5 + 路径覆盖率×0.3 + 断言覆盖率×0.2

S/A 级目标 ≥ 85%。 | 功能覆盖率 | 有用例覆盖的规则数 / 总规则数 | | 路径覆盖率 | 有用例覆盖的执行路径数 / 总路径数 | | 断言覆盖率 | 有断言覆盖的输出字段数 / 总输出字段数 |

完整准入指标表

指标 S 级 A 级 B 级 C 级
通过率 ≥ 95% ≥ 90% ≥ 80% ≥ 70%
触发率(精确) ≥ 95% ≥ 90% ≥ 85% ≥ 80%
触发率(AI估算) TP≥80%(参考) TP≥80%(参考) TP≥70%(参考) 仅参考
增益 Δ > 0,不允许负向 > 0 ≥ -5% 不要求
IFR = 100% ≥ 95% ≥ 90% ≥ 80%
稳定性 Stddev < 0.05 < 0.10 < 0.20 < 0.30
覆盖率 ≥ 95% ≥ 85% ≥ 70% ≥ 50%
灾难场景 全部通过 全部通过 不强制 不要求
幻觉检测 0 次 ≤ 1 次 ≤ 2 次 不要求
P95 响应时间 < 15s < 15s < 30s < 30s

纯文本 Skill 全面支持

类型 判断依据 执行模式
mcp_based SKILL.md 中有 MCP 工具引用 真实工具调用
code_execution 描述了 Bash/脚本执行 真实命令执行
text_generation 其他(写作、分析、问答等) 纯文本模式

指标之间的关系

通过率 Δ 常见根因 行动
高 高 Skill 质量好,有明显价值 ✅ 正常发布
高 ≈ 0 模型本身就能做到,Skill 无增量价值 评估是否需要
低 > 0 Skill 方向对,但执行有问题 继续优化
低 < 0 Skill 帮了倒忙 🔴 停止发布
高 — 覆盖率 < 50% 补充用例

哪些指标是「权威的」,哪些是「经验值」

有明确学术/工业来源:

  • 通过率:OpenAI Evals、HELM 等标准基准
  • 增益 Δ:SkillsBench 论文(arxiv.org/abs/2602.12670)
  • 触发率:信息检索 Recall/Precision
  • 幻觉检测:TruthfulQA、FactScore
  • 稳定性:统计学标准差 内部经验值(无直接学术背书):

  • S 级通过率 ≥ 95% 的具体阈值

  • IFR = 100% 的要求
  • Stddev < 0.05 的稳定性标准 这些经验值基于「业务容错度、用户预期、历史数据」三因素制定,可根据实际业务调整。

深度分析

1. 指标体系的层次化设计哲学

AI Skill 测评指标体系的 9 层结构(触发→输出→规则→对话→容错→效率→设计→覆盖→维护)体现了从外到内、从用户到工程的分层验证思路。这一设计的核心哲学是:不同阶段发现的问题,修复成本差异巨大。 越外层的指标(触发率、通过率)对应用户可直接感知的问题,修复成本相对低;越内层的指标(稳定性、覆盖率)涉及 Skill 架构层面的问题,修复成本极高。因此分层测试模式(quick/standard/full)允许团队在资源约束下优先保障外层质量。

2. 增益 Δ 的本质:反事实因果推断

增益 Δ 的计算逻辑(with_skill vs without_skill)本质上是一种反事实因果推断。SkillsBench 论文的发现——84 个任务中 19% 呈现负向增益——揭示了一个反直觉事实:给模型加 Skill 不总是有帮助的,有时反而约束了模型的原有能力。 这一发现对工程实践有深远影响:

  • 必须测 baseline:不能假设 Skill 一定有正向价值,必须有对照实验
  • 三条件范式的价值:curated_skill vs self-generated_skill 的对比,揭示了人工设计的边际收益
  • 负向增益的根因:往往是规则过于死板、或与模型固有能力路径冲突

3. IFR 与通过率的分离:规则遵循 vs 整体质量

IFR(指令遵循率)将关注点聚焦在硬性规则上,与整体通过率形成正交维度。一个 Skill 可能通过率 92% 但 IFR 只有 80%,意味着20% 的情况下违反了关键规则——这在涉及安全、合规、资金的场景中是灾难性的。 这种分离设计的价值在于:它迫使开发者在设计 Skill 时显式区分硬性规则和软性期望,而不是把所有要求混为一谈。

4. 稳定性 Stddev 的工程意义

Stddev 作为 S 级发布要求的硬性指标(< 0.05),反映的是LLM 输出的概率本性。标准差过大意味着同一 Skill 在相同输入下产生显著不同的输出,这在生产环境中是不可接受的。 | Stddev 区间 | 可能的根因 | |-------------|-----------| | 0.05-0.10 | prompt 措辞存在轻微歧义 | | 0.10-0.30 | 规则边界不清晰或示例不足 | | > 0.30 | 规则之间存在冲突,或 Skill 与模型能力不匹配 |

5. 覆盖率加权的内在逻辑

综合覆盖率的加权公式(功能×0.5 + 路径×0.3 + 断言×0.2)反映了不同维度失效的风险系数:

  • 功能覆盖权重最高(0.5):规则遗漏直接导致功能缺失
  • 路径覆盖次之(0.3):执行路径遗漏导致边界 case 失效
  • 断言覆盖最低(0.2):输出字段遗漏影响可观测性,但不直接导致功能失效

6. 指标分类:学术来源 vs 经验值

指标体系中有学术来源的指标(通过率、Δ、触发率、幻觉检测、稳定性)具有更强的可解释性和可迁移性,适合跨团队/跨组织对比。 经验值指标(S 级阈值、IFR=100%要求)则是组织特定的风险偏好表达,需要随着业务发展和数据积累持续校准,不宜机械照搬。

实践启示

1. 建立「指标优先序」意识

面对 8 个核心指标,团队容易陷入「追求全面达标」的误区。实践建议:

  • S/A 级 Skill:优先保障通过率 + Δ + IFR + 稳定性,覆盖率可适度降低
  • C 级 Skill:通过率达标即可,Δ 和 IFR 不作强制要求
  • 快速迭代阶段:先用 quick 模式保触发率和通过率,full 模式留给发布前最终验证

2. 将 INCONCLUSIVE 纳入技术债务管理

INCONCLUSIVE 不是「无所谓」的状态,它暴露了测试资产缺口。建议实践:

  • 建立 INCONCLUSIVE 专项台账,记录每个灰色用例的原因和补充计划
  • 在 Sprint 规划中预留「测试资产补充」专项工作
  • 将 INCONCLUSIVE 率纳入 QA 报告,作为测试充分性的代理指标

3. 触发率优化的「pushy description」技巧

针对 Claude 的 undertrigger 倾向,Description 写作应:

  • 使用明确的触发语境描述:「当用户提到 X 时,即使没有明确说'请使用 Skill'也应触发」
  • 列出边界场景:「尤其是以下情况...」
  • 避免过于学术或模糊的表述

4. Δ 达标但通过率不达标的「夹心饼」困境处理

当遇到 Δ=+35%(正向)但通过率 87%(未达 S 级 95%)的情况:

  • 不要发布:通过率是准入底线,Δ 只是加成
  • 分析根因:通过率低说明 Skill 本身实现质量不足,而非 Skill 方向错误
  • 优先优化:将通过率提升到 95% 再发布,而非降低 S 级标准

5. IFR 优化的「规则分级」策略

将 Skill 中的规则显式分为硬性/软性两类:

  • 硬性规则(必须、禁止、固定为):用简短无歧义的指令句描述,确保 IFR = 100%
  • 软性规则(建议、优先、通常):用自然语言描述,允许模型有一定灵活性
  • 避免「升级」:不要把所有规则都标为硬性,这会降低模型整体表现

6. 稳定性问题的「三分法」排查

Stddev > 0.1 时,按以下顺序排查:

  1. Prompt 歧义:检查是否有「或」「可能」等导致多解的词汇
  2. 示例不足:关键场景是否提供了足够的 Few-shot 示例
  3. 规则冲突:不同规则之间是否存在边界重叠导致的决策震荡

7. 覆盖率提升的「最小用例集」策略

提升覆盖率不必穷举所有可能输入,而是聚焦:

  • 功能覆盖:每个规则至少 1 个正向 + 1 个负向用例
  • 路径覆盖:每个分支路径至少 1 个用例
  • 断言覆盖:每个输出字段至少在 1 个用例中断言验证

8. 指标报告的「红黄绿」可视化

发布评审时,建议用三色看板呈现: | 指标 | S 级阈值 | 实际值 | 状态 | |------|---------|--------|------| | 通过率 | ≥ 95% | 96.2% | 🟢 | | Δ | > 0 | +28% | 🟢 | | IFR | = 100% | 98% | 🟡 | | Stddev | < 0.05 | 0.08 | 🟡 | 让决策者一目了然地看到哪些是绿灯放行、哪些需要人工判断。

相关实体

→ 原文存档