30 秒快速回答

RAGAS(Retrieval-Augmented Generation Assessment)是一个开源的 RAG 评测框架,用 Faithfulness(忠实度)、Answer Relevancy(答案相关性)、Context Precision(上下文精确率)、Context Recall(上下文召回率)等指标,从「检索是否准、生成是否靠谱」两个维度量化评估你的 RAG 系统。核心价值一句话:它把 RAG 的质量从「人工肉眼判断」变成「可自动计算的分数」,让你知道系统瓶颈到底在检索环节还是生成环节。

为什么你需要评测 RAG?

RAG 系统上线后最常见的尴尬是:用户问「发票报销流程」,系统却答非所问,或者一本正经地编造政策条款。问题到底出在哪?检索没召回对文档?排序把无关内容顶了上来?还是大模型没忠实于上下文?

没有量化评测,就只能靠人工抽样一条条看,既慢又不客观。RAGAS 通过构造「问题-参考答案-检索上下文-生成答案」四元组,用一套标准化指标自动打分,几分钟就能跑完一个测试集。它解决的正是 RAG 开发中「不知道好不好、不知道差在哪」的经典难题。

RAGAS 四大核心指标

指标 衡量对象 含义 越高代表
Faithfulness 忠实度 生成环节 生成答案中的每一条陈述是否都可由检索到的上下文支撑 幻觉越少
Answer Relevancy 答案相关性 生成环节 答案是否切题,而不是答非所问 回答越精准
Context Precision 上下文精确率 检索环节 排序靠前的上下文是否真的相关(关注「相关内容是否排前面」) 排序越合理
Context Recall 上下文召回率 检索环节 回答所需的关键信息是否都被检索到(关注「该捞的是否都捞到了」) 召回越完整

简单记忆:Faithfulness 防幻觉、Answer Relevancy 防跑题、Context Precision 防排序差、Context Recall 防漏检。前两个看生成,后两个看检索——四者结合,就能把故障定位到具体环节。

实战:用 RAGAS 评估你的系统

安装并运行 RAGAS 非常轻量(Python 3.9+):

pip install ragas

评估时只需提供测试问题和参考答案,RAGAS 会调用你的 RAG 系统拿检索上下文和最终答案,然后自动打分:

from ragas import evaluate
from ragas.metrics import (
    faithfulness, answer_relevancy,
    context_precision, context_recall
)
from datasets import Dataset

# 模拟一组评估数据:question 是测试问题,ground_truth 是人工标注的参考答案
data = {
    "question": ["发票报销流程是什么?", "年假剩余天数怎么查?"],
    "answer": ["报销需提交发票和审批单……", "在 OA 系统个人中心可查……"],        # RAG 系统实际生成
    "contexts": [["报销需提交发票、审批单,经部门主管审批后交财务。"], ["个人年假可在 OA 系统查询。"]],  # 实际检索到的片段
    "ground_truth": ["报销需提交发票和审批单,经主管审批后交财务。", "年假余额可在 OA 系统个人中心查询。"],
}
dataset = Dataset.from_dict(data)

result = evaluate(dataset, metrics=[
    faithfulness, answer_relevancy,
    context_precision, context_recall
])
print(result)  # 输出各指标平均分(0-1)

如果希望评测更贴合真实场景,可以关闭 RAGAS 默认的 LLM 生成测试问题逻辑,直接喂你自己构造的、覆盖高频问题与边缘 case 的测试集——测试集质量直接决定评测可信度。

读懂分数,对症下药

拿到分数后按「低分定位」处理:

现象 瓶颈环节 优化方向
Context Recall 低 检索召回不足 换更好的 embedding、调整分块策略(如语义分块)、增加混合检索
Context Precision 低 排序不准 引入重排序(Reranker)、优化检索阈值
Faithfulness 低 生成幻觉 收紧 prompt、限制模型只能基于上下文作答、提高上下文质量
Answer Relevancy 低 生成跑题 优化指令模板、补充 few-shot 示例

相比纯人工评估,RAGAS 的优势是自动化、可复现、能跑回归;但它依赖 LLM 打分,会有一定成本与波动,建议与人工抽样(如每轮 50 条)结合使用,形成「机器粗筛 + 人工精审」的闭环。这也是 2026 年主流团队的标配做法。

总结与延伸阅读

总结三个要点:

  1. RAGAS 用四大指标把 RAG 质量拆成检索与生成两个维度,分数即定位线索;
  2. 评估数据要自己构造,覆盖高频问题与边界场景,别依赖框架生成的合成问题;
  3. 评测要进迭代流程,每次改动(换模型、调分块、加重排)都跑一遍回归,防止优化 A 指标时弄坏 B 指标。

延伸阅读建议:想提升 Context Recall,看本站《什么是语义分块(Semantic Chunking)?RAG 检索质量的基石全解析》;想优化排序精度,看《什么是混合检索与重排序?RAG 检索质量提升的核心技术》;想让检索更智能,看《什么是 Contextual Retrieval?Anthropic 让 RAG 检索失败率降低 35% 的嵌入增强技术全解析》和《什么是 Adaptive RAG?自适应检索增强生成的原理与实践全解析》。