检索增强生成(RAG)的失败往往互相伪装:答案跑偏可能是没检索到,也可能是检索到了却没用好。用三个互补指标分别度量,才能判断该修检索还是修生成。
三个核心指标
- 上下文召回率(Context Recall):回答需要的关键事实,有多少被检索进了上下文。它衡量"有没有把料找齐"。
- 忠实度(Faithfulness):回答中的每个论断,是否都能在检索到的上下文里找到支持。它衡量"有没有编造"。
- 答案相关性(Answer Relevance):回答是否切题、是否覆盖了用户真正问的要点。它衡量"答没答到点上"。
它们各自失效的样子
| 现象 | 召回 | 忠实度 | 答案相关性 |
|---|---|---|---|
| 没检索到就硬答 | 低 | 低 | 可能低 |
| 检索到却答跑题 | 高 | 高 | 低 |
| 照搬无关文档 | 低 | 高 | 低 |
三个指标要同时看:任何一个单独很高,都可能掩盖另一面的问题。
怎么采集
- 召回:需要为每个问题标注"应被引用的黄金文档或关键事实",再比对实际检索结果。
- 忠实度 / 答案相关性:可用 LLM-as-Judge 逐句判断论断是否有据、回答是否切题,但裁判本身要先校准(见"LLM-as-Judge 裁判体系")。
常见误区
- 只用一个综合分:把三件事揉成一个数字,出了问题无法定位。
- 把忠实度当准确率:忠实度只保证"没编",不保证"答对"——上下文本身可能就是错的。
- 召回不标黄金集:没有"应该召回什么"的标注,召回率无从算起。