首页/AI/AI 应用速查/RAG 端到端评测(RAGAS 思路)

RAG 端到端评测(RAGAS 思路)

除检索指标外,还要评生成质量:忠实度(答案是否都来自上下文)、答案相关性、上下文精确率/召回率。RAGAS 等框架用 LLM 当裁判,把主观质量变成可回归的数字。

AI 应用速查AI更新于 2026-10-13

RAG 端到端评测是什么

只评检索不够,还要评生成:忠实度看答案里的每个论断能不能从检索到的上下文推出,这是抗幻觉的核心指标;答案相关性看回答是否切题;上下文精确率与上下文召回率分别反映检索内容里相关的比例、以及应有信息是否都检索到了。RAGAS 一类框架用模型当裁判,把主观质量变成可回归的数字。代价是评测本身消耗 token,且裁判分数存在波动,需要固定裁判模型与版本、重要结论人工复核。

基本信息

faithfulness答案中的论断能否从检索上下文推出,抗幻觉核心指标
answer relevancy答案是否切题
context precision检索内容中相关内容的比例
context recall应有信息是否都被检索到
前提条件需要裁判模型与标注集,评测本身也花 token
稳定做法固定裁判模型与版本,跑两次看一致性

典型使用场景

  • 上线前验收:关键问题的忠实度必须达标
  • 回归监控:每周跑一次,观察质量是否随时间漂移
  • 根因定位:区分问题出在检索缺失还是生成编造
  • 提示词与重排对比:同一题集下比较不同方案的端到端得分
  • 供应商选择:比较不同模型在同一 RAG 流程里的表现

端到端评估示意

端到端评估示意
from datasets import Dataset
from ragas import evaluate
from ragas.metrics import faithfulness, answer_relevancy

# 每条样本包含问题、模型答案、检索到的上下文与参考答案
ds = Dataset.from_dict({
    "question": ["如何计算缓存折扣?"],
    "answer": ["缓存命中的输入 token 按更低折扣价计费"],
    "contexts": [["缓存命中按更低单价计费,未命中按标准价"]],
    "ground_truth": ["命中缓存的输入按折扣价计费。"],
})
result = evaluate(ds, metrics=[faithfulness, answer_relevancy])
print(result)
# 结论要与人工作抽样对照,不能只看总分

四个指标读法

指标在测什么变差时先查
faithfulness答案是否都有上下文依据检索片段是否缺失关键支撑
answer relevancy答案是否切题提示词是否让模型跑偏或过度发挥
context precision检索内容里相关的比例重排与切分粒度
context recall应有信息是否都被检索到召回数量与分块完整性
裁判模型本身有波动:固定裁判模型与版本,跑两次看一致性,重要结论人工复核;裁判与生成用同一个模型时,往往评不出自家毛病。
指标要连成本一起看:为了把忠实度提高几个百分点而把召回片段加倍,可能让每次问答的输入成本翻倍,收益与代价要放在一起判断。

易错点

  • 只测检索不测生成:检索指标好看但答案编造,问题照样上线
  • 裁判模型与生成模型同源同版本:自家毛病评不出来,分数系统性偏高
  • 题集没有参考答案:忠实度能算,但准确率无从判断
  • 忽略裁判成本:评测本身按 token 计费,评测集放大后成为一笔固定支出
  • 用单次评测结果定论:裁判有随机性,应重复采样并观察波动范围

数据来源与参考

  • RAGAS 论文与官方文档(ragas.io)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌