1. RAGAS的AnswerRelevancy指标深度解析
在构建问答系统时,评估生成答案的质量至关重要。Ragas库提供的AnswerRelevancy指标采用了一种巧妙的逆向工程思路:不是直接判断答案是否正确,而是通过答案反推可能的问题,再与原问题进行比对。这种方法在业界被称为"反向问题验证法",它绕过了传统评估需要标准答案的局限性。
1.1 核心原理与设计哲学
AnswerRelevancy指标的工作流程可以分为三个关键阶段:
- 问题生成阶段:使用大语言模型(LLM)基于给定的回答生成3个可能的提问(默认数量,可通过strictness参数调整)
- 语义编码阶段:使用嵌入模型将原始问题和生成的问题转换为向量表示
- 相似度计算阶段:计算原始问题与生成问题之间的余弦相似度,取最高分作为最终得分
这种设计的精妙之处在于:
- 避免了直接依赖标准答案,适用于开放域问答场景
- 通过多问题生成降低评估偏差(strictness参数控制生成数量)
- 语义相似度比关键词匹配更能捕捉问题的本质
注意:当回答过于简短或含糊时,生成的问题质量会显著下降,导致评分偏低。这是设计上的有意为之,因为模糊的回答确实相关性较低。
1.2 关键组件与技术选型
在实现AnswerRelevancy时,Ragas采用了模块化设计,主要依赖两个核心组件:
| 组件类型 | 推荐配置 | 作用 | 替代方案 |
|---|---|---|---|
| LLM评估器 | DeepSeek-v3.2 | 生成反向问题 | GPT-4, Claude, Gemini |
| 嵌入模型 | all-MiniLM-L6-v2 | 计算语义相似度 | BERT, sentence-transformers |
选择all-MiniLM-L6-v2作为默认嵌入模型是经过权衡的:
- 模型大小仅80MB,推理速度快
- 在语义相似度任务上达到0.82的Spearman相关系数
- 支持多语言,适合国际化场景
而使用DeepSeek-v3.2作为评估LLM则考虑了:
- 对中文问题的理解能力优于同等规模的开源模型
- API响应时间稳定在800ms以内
- 生成问题的多样性和合理性较好
