首页/AI/RAG 与向量库速查/答案相关性(Answer Relevancy)

答案相关性(Answer Relevancy)

answer_relevancy 反向生成问题:用答案让模型“还原”它可能回答的问题,再与原问题比较相似度;衡量答案是否切题,不评价事实正确性。

RAG 与向量库速查AI更新于 2026-10-13

答案相关性怎么算

answer_relevancy 采用反向生成思路:拿模型的答案让另一个模型去还原「它可能在回答什么问题」,再把这些还原问题与原问题比较相似度,相似度越高说明答案越切题。它衡量的是「问到点上了没有」,不评价事实是否正确,因此需要与忠实度一起看。

基本信息

衡量对象答案是否切题,与事实正确性无关
计算方式由答案反向生成问题,再与原问题比较相似度
输入依赖问题与答案,不需要标准答案
取值范围0 到 1,越高越切题

指标计算

指标计算
from ragas.metrics import answer_relevancy
from ragas import evaluate

res = evaluate(dataset, metrics=[answer_relevancy])
print(res["answer_relevancy"])

使用要点

  • 与忠实度成对使用:一个管有没有依据,一个管有没有答到点上
  • 按问题类型分组统计,开放式问题的相关性得分天然偏低
  • 答案过长时反向生成的问题会变宽泛,得分被稀释
  • 把固定话术类回答(例如统一的拒答语句)单独剔除,避免拉低整体分数
  • 指标变化要与提示词版本一起记录,否则无法解释波动

分数读法

现象可能原因处理方向
整体偏低提示词让模型泛泛而谈要求结论先行、紧扣问题
个别很低问题含糊或多意图先做查询改写与意图拆分
高但用户不满答案切题却没有依据配合忠实度指标与人工抽查
拒答样本偏低固定话术与问题不相关单独统计拒答率

常见问题

  • 把该指标当作质量总评:答案避重就轻时得分低,但事实错误反而发现不了
  • 答案冗长导致分数虚高:内容多但重点不突出
  • 多意图问题只答了一部分:相关性看起来还行,完整性却不足
  • 评测集问题本身表述不清,指标波动被误读为链路问题
冗长但切题的答案得分往往仍高:该指标对「答非所问」敏感、对「啰嗦」不敏感,需要配合长度与信息密度的检查。

易错点

  • 答案回避问题(全是免责声明)时相关性低,需要结合忠实度一起看
  • 该指标不检查正确性,单看它会放过事实错误
  • 把拒答类固定话术混进统计,整体分数被系统性拉低
  • 问题表述含糊导致指标偏低,却去调整检索与生成

数据来源与参考

  • RAGAS 官方文档(Answer Relevancy)
  • Es et al., RAGAS (arXiv:2309.15217)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌