云计算百科
云计算领域专业知识百科平台

学习 RAGAS

学习 RAGAS 的核心

RAGAS 之所以能成为 RAG 评测的行业事实标准,核心价值从来不是「能跑命令、能出分数」的工具属性,而是它首次将 RAG 质量评测从「主观感觉」变成了「标准化、可复现、可归因」的科学方法论。API 调用、参数配置只是表层操作,分层解耦思想、原子声明拆解法、指标设计逻辑才是底层的、可迁移的、真正值得深入学习的核心能力。


一、分层解耦思想:RAG 评测的底层框架革命

这是 RAGAS 对整个领域最大的贡献,它从根本上解决了「端到端评测全靠猜」的行业痛点。

1. 为什么必须分层?端到端评测的天生缺陷

在 RAGAS 出现之前,行业普遍做法是只测端到端正确率——输入问题,看最终回答对不对。这种方法有三个无法解决的致命问题:

  • 归因黑盒:只知道最终结果不对,但完全不知道是「检索漏了关键信息」还是「生成模型凭空编造」,优化全靠试错,效率极低
  • 变量混杂:检索效果和生成效果耦合在一起,换个模型分数涨了,不知道是模型本身能力强,还是刚好适配当前检索的偏差
  • 优化盲目:无法针对性投入资源,只能全链路瞎调,经常出现「花大力气优化生成,结果瓶颈在检索」的资源浪费

2. 分层的核心原则:单一变量控制

RAGAS 的分层不是简单的「按环节拆分」,而是严格遵循单一变量控制原则:

评测哪一层,就固定其他所有环节的变量,让最终分数只反映当前环节的能力。

  • 评测检索层:固定生成逻辑(甚至用标准答案直接生成),确保分数波动只由检索结果引起
  • 评测生成层:固定输入的召回上下文,确保分数波动只由生成模型、Prompt 引起
  • 评测端到端:全链路真实运行,反映整体综合效果

这才是分层的本质——不是为了拆分而拆分,而是为了精准归因,让每个指标都能对应到明确的技术环节,问题出在哪一层一目了然。

3. 三层架构的设计逻辑

RAGAS 最终定型为「检索层-生成层-端到端层」三层,不是拍脑袋定的,而是严格对应 RAG 技术链路的核心变量节点:

层级对应技术环节核心回答的问题设计目的
检索层 向量检索、关键词检索、重排序 「该找的信息找到了吗?无关信息多不多?关键信息排前面了吗?」 量化召回的完整性、噪音水平、排序质量
生成层 大模型推理、系统 Prompt、事实遵循 「回答是基于上下文编的吗?有没有跑题?有没有瞎编?」 量化生成的忠实性、相关性、幻觉水平
端到端层 全链路协同 「最终回答用户满意吗?事实正确吗?完整吗?」 量化整体交付效果与业务价值

为什么不拆成更多层?比如查询改写、上下文拼装单独拆出来?
因为分层要平衡「归因精度」和「落地成本」。查询改写、上下文拼装的影响最终都会体现在检索结果或生成输出里,核心三层已经可以定位 90% 以上的问题,过度拆分只会大幅提升埋点和评测成本,边际收益很低。


二、原子声明拆解法:忠实度的标准化算法

如果说分层思想是 RAGAS 的框架骨架,原子声明拆解法就是 RAGAS 的核心算法灵魂。它第一次把「幻觉」这个模糊的主观概念,变成了可量化、可复现的计算结果。

1. 为什么不能「整体判断忠实度」?

在 RAGAS 之前,大家评判幻觉都是靠人整体读一遍回答,感觉「大概是基于上下文的」「好像有编造」。这种整体评分有三个致命问题:

  • 主观偏差大:不同的人对「轻微幻觉」「合理推断」的边界判断差异极大,同一个样本不同人打分可能差 30%
  • 可复现性差:没有统一标准,这次测和下次测结果不一样,不同团队测出来的结果完全无法对比
  • 定位能力弱:只知道「有幻觉」,不知道具体哪句话、哪个事实是编的,优化无从下手

2. 什么是原子声明?

原子声明(Atomic Statement)是指回答中不可再拆分的、独立的、可验证真假的最小事实单元。
拆解遵循三个原则:

  • 单一事实:每个声明只包含一个事实判断,不能同时有多个论断
  • 语义完整:有独立的主谓宾结构,可以单独验证真假
  • 不可再分:拆成更小单元就会失去完整的事实语义
  • 示例:
    原句:「2024年公司营收10亿元,同比增长15%,主要来自ToB业务」
    拆解为 3 个原子声明:

  • 2024年公司总营收为10亿元
  • 2024年公司营收同比增长15%
  • 营收增长主要来源于ToB业务
  • 3. 评分计算逻辑

    忠实度的计算公式非常简洁:
    Faithfulness=有上下文支撑的原子声明数总原子声明数
    \\text{Faithfulness} = \\frac{\\text{有上下文支撑的原子声明数}}{\\text{总原子声明数}}
    Faithfulness=总原子声明数有上下文支撑的原子声明数​

    核心在「什么算有支撑」:RAGAS 定义为可以从给定上下文中直接推理得出,无需引入外部知识。不需要完全原文一致,语义等价即可。

    4. 这么设计的核心优势

    • 可复现性极强:只要按同一套规则拆解声明,不同的人、不同的裁判模型,最终得分差异很小,这是它能成为行业标准的核心原因
    • 偏差可控:把模糊的整体判断,变成了一个个二分类(有支撑/无支撑)的判定,大幅降低了主观偏差
    • 可定位性:可以精确到具体哪一个事实、哪一句话是幻觉,方便研发定位问题,而不是只得到一个笼统的分数
    • 业务含义清晰:1 – 忠实度 = 幻觉率,直接对应回答中编造事实的比例,业务侧也能直观理解

    5. 边界与局限:为什么必须校准

    原子声明法不是完美的,它的边界本身就是模糊的,这也是校准的必要性根源:

    • 「直接推理」的边界没有绝对标准:什么程度的推断算合理?什么程度算无中生有?
    • 拆解粒度没有绝对统一:一句话拆成 2 个还是 3 个声明,会轻微影响最终得分
    • 原生规则是通用场景的,不一定符合你的业务场景(比如金融场景对「推断」的容忍度极低)

    所以 RAGAS 原生的忠实度评分只能做通用基准,落地到具体业务必须校准——不是算法错了,而是通用标准需要适配具体场景的边界定义。


    三、核心指标的定义逻辑:每个分数背后的设计考量

    很多人用 RAGAS 只知道跑出来四个分数,却不知道每个指标为什么这么算、设计考量是什么、适用边界在哪,这是典型的「会操作但不懂逻辑」。

    1. 检索层双指标

    ① Context Precision(上下文精确率)

    为什么不只算「相关片段占比」,还要做位置加权?
    因为真实 RAG 场景中,排在越前面的片段,模型权重越高,排在后面的片段可能被截断、可能被忽略。如果相关片段都排在最后,就算全部召回了也没有实际价值。

    RAGAS 的精确率本质是「排序质量 + 相关性」的综合指标:越靠前的相关片段权重越高,越靠后的无关片段惩罚越大。它衡量的不是「有没有相关内容」,而是「好的位置有没有好的内容」,这才是贴合真实业务的设计。

    ② Context Recall(上下文召回率)

    为什么用「答案的关键信息点」做基准,而不是「所有相关片段」?
    因为召回的终极目的是「支撑回答问题」,不是「召回尽可能多的相关内容」。再多相关片段,没覆盖回答问题需要的关键信息,也是无效召回。

    所以召回率衡量的是:要正确回答这个问题,需要的那些关键信息,有没有都被召回来。它是直接服务于最终回答质量的指标,而不是纸面的检索性能指标。

    2. 生成层双指标

    ① Faithfulness(生成忠实度)

    核心是「基于给定上下文」,和答案本身的对错无关。

    非常重要的认知误区:忠实度高 ≠ 答案正确。如果召回的上下文本身就是错的,模型照着错的上下文生成回答,忠实度依然很高,但事实是错的。
    忠实度只保证「不编造」,不保证「本身对」,这是它的适用边界。

    ② Answer Relevancy(回答相关性)

    为什么不直接用语义相似度?
    因为很多回答看似内容相关,实则没有回应用户的核心诉求。比如用户问「怎么退款」,回答了很多「退款规则」,但没说具体操作步骤,语义相似度很高,但完全不相关。

    RAGAS 的相关性是「语义匹配 + 意图匹配」的双重校验,核心看有没有回应用户的真实意图,而不是字面内容的相似程度。

    3. 端到端层指标

    Answer Correctness(答案正确性)
    为什么有了忠实度还要正确率?
    忠实度只管「是不是基于上下文」,不管上下文本身对不对、答案完不完整、逻辑对不对。正确率是从用户视角的最终验收,需要标准答案做基准,衡量的是最终回答的事实准确性、信息完整性、逻辑合理性。

    它是业务价值的最终体现,但不适合用来定位问题——这就是为什么必须分层,而不是只测端到端。


    四、为什么说「懂逻辑比会 API 重要」

    1. 工具会迭代,但方法论通用

    RAGAS 的 API 会变、功能会增、甚至未来可能有更好的工具替代它,但分层解耦思想、原子声明拆解法、指标设计逻辑是整个行业的通用方法论。学会了这些,换 DeepEval、换自研框架都能直接用,本质是掌握了 RAG 评测的底层规律。

    2. 不懂逻辑用工具,必然踩坑

    • 坑1:忠实度高就认为答案正确,忽略了「上下文本身错误」的情况,结果线上出现大量事实错误
    • 坑2:精确率低就盲目优化检索,其实可能是 top_k 设太大引入了少量无关片段,但关键信息都在最前面,根本不影响生成效果
    • 坑3:拿 RAGAS 的分数和 DeepEval 直接对比,同名指标定义、加权、边界完全不同,对比毫无意义
    • 坑4:不校准就直接用于质量门禁,系统性偏差导致问题发现不了,质量门禁形同虚设

    3. 懂逻辑才能真正定制落地

    真正落地到企业业务,不可能完全照搬 RAGAS 的通用标准。懂了底层逻辑,你就可以:

    • 根据业务风险等级,调整忠实度的判定边界(高风险场景从严,低风险场景从宽)
    • 根据业务场景,自定义原子声明的拆解粒度
    • 根据排序权重,调整精确率的位置加权系数
    • 基于分层思想,扩展自己的业务指标、合规指标

    你不是被工具限制的使用者,而是基于标准方法论的定制者。


    五、正确的学习路径建议

  • 第一层:先吃透分层解耦思想
    理解为什么要分层、单一变量控制原则、每层对应的技术环节与核心问题。这是整个 RAG 评测的世界观,建立这个认知框架,后面的指标都是填充血肉。

  • 第二层:掌握原子声明拆解法
    练拆解、练判定边界,理解忠实度的本质、计算逻辑、优势与局限。这是幻觉评测的核心算法,也是 LLM-as-Judge 最经典的应用。

  • 第三层:逐个抠核心指标的定义逻辑
    每个指标问自己三个问题:它衡量什么?为什么这么设计?适用边界在哪?不要只记公式,要懂背后的业务考量。

  • 第四层:再去学 API 操作与工具使用
    当你懂了方法论,API 只是实现工具,看一遍文档就能跑起来。甚至你可以用这个逻辑,自己用 LLM 写一个简易的评测脚本。

  • 最终你学到的不是「怎么用 RAGAS」,而是「怎么做 RAG 评测」——这才是可迁移的、真正的专业能力。

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 学习 RAGAS
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!