人人都会AI编程

10.2 生成侧评估指标

更新时间:2026-07-12

生成侧的评估聚焦于模型最终给出的答案质量:它是否真正依据了提供的上下文、是否扣题、是否容易被用户理解。与检索侧评价“找得对不对”不同,生成侧更关心“答得好不好”。在实际项目中,我们通常综合以下三个核心指标来量化生成效果。

1. 忠实度(Faithfulness)

衡量什么:答案中所陈述的事实是否完全基于检索到的上下文,没有捏造、扭曲或添加外部信息。

为什么重要:哪怕检索到了正确的段落,模型仍可能在组织语言时加入未经佐证的细节(幻觉),导致答案失真。忠实度直接反映 RAG 缓解幻觉的能力。

如何计算(基于 RAGAS 等框架的典型做法):

  • 使用 LLM 将答案拆解为一组原子级断言(claims)。
  • 对每一条断言,判断其能否在提供的上下文中找到直接支撑。
  • 忠实度 = 有支撑的断言数 / 总断言数。

实用建议:忠实度是生成侧最重要的硬指标。当该值低于 0.9 时,应优先检查提示词是否约束不足、上下文是否过短,或模型生成了不必要的外部知识。

2. 答案相关性(Answer Relevance)

衡量什么:答案是否直接回答了用户的问题,是否紧凑,没有跑题或添加无关内容。

为什么重要:有时模型会从上下文中提取大量信息,但最终给出的回答没有紧扣提问意图(比如用户问“年假天数”,回答却大段描述请假流程)。相关性差的答案即使事实正确,也会降低用户满意度。

如何计算(常用方法):

  • 对原始答案,用 LLM 逆向生成若干与该答案匹配的“反向问题”。
  • 计算这些反向问题与原始用户问题的语义相似度(通常基于嵌入向量的余弦相似度)。
  • 取所有反向问题相似度的平均值作为相关性得分。

实用建议:相关性若持续偏低,往往意味着提示词中未明确要求“仅回答用户问题”,或者检索到的上下文过于宽泛,给模型提供了太多可偏离的空间。

3. 上下文利用率(Context Utilization / Coverage)

衡量什么:检索到的上下文中有多少关键信息被答案真正覆盖并使用。这与忠实度互补——忠实度看答案是否凭空捏造,上下文利用率看答案是否遗漏了上下文中已有的重要事实。

为什么重要:如果检索到了完整信息,但答案只提取了其中一部分(例如只回答了三个变化中的两个),用户可能被误导。高利用率确保模型充分理解并利用了所给材料。

如何计算(一种简易方法):

  • 抽取上下文中的关键事实点(可手工标注或由 LLM 抽取)。
  • 检查答案中是否包含这些事实点。
  • 利用率 = 答案中覆盖的关键事实点数 / 上下文关键事实点总数。

实用建议:这一指标在早期调优中非常有用,可以帮助判断切块策略是否让关键信息分散在多个片段中,或者提示词是否需要强调“请尽量覆盖给出的信息”。

4. 实际评估流程建议

在生产环境中,完全依赖人工评估既不经济也无扩展性。推荐采用自动化指标打底 + 人工抽样复核的混合模式:

  1. 自动化工具:使用 RAGAS、DeepEval 等开源库,通过 LLM 作为评判器自动计算忠实度、相关性等指标。每次更新知识库或提示词后,都可以快速跑一遍指标,及时发现倒退。
  2. 基线建立:在系统上线前,采集一批典型真实问答,用自动化指标得出基线值,作为后续对比的参考。
  3. 人工抽检:即使自动化指标分数很高,仍需定期人工抽检数十条答案,重点关注:
  • 是否存在指标未能捕捉的逻辑错误(如数字单位混淆、时间顺序错误)。
  • 语气是否符合品牌要求,是否包含不当的免责或过度承诺。
  1. 用户反馈闭环:在界面中提供“踩”或“答案不准确”按钮,将低分答案自动加入评估池,用于持续扩充测试集和优化系统。

一个真实评估示例

  • 问题:“X200 笔记本支持 4K 屏幕输出吗?”
  • 检索上下文:“X200 配备 HDMI 2.0 接口,支持最高 4K@60Hz 输出。”
  • 模型答案:“支持,可以通过 HDMI 2.0 输出 4K@60Hz。”

分解:

  • 答案断言:“支持”、“HDMI 2.0”、“4K@60Hz” → 全部在上下文中有依据,忠实度 = 1.0。
  • 反问题生成:“X200 的 HDMI 是什么版本?”→ 语义与原始问题接近,相关性高。
  • 覆盖率:上下文关键信息“HDMI 2.0”、“4K@60Hz”均已呈现,利用率接近 100%。

通过聚焦这些生成侧指标,团队可以将模糊的“答案好坏”转变为可衡量、可优化的数据驱动过程,让 RAG 系统在正确性的基础上逐步迈向高质量。