RAG基础:评测系统RAGAS的四大指标

一、评估指标详解

在信息检索和自然语言处理系统中,评估生成答案的质量至关重要。用户提供了四个核心指标:忠实度、答案相关性、上下文精度和上下文召回率。下面我将逐一解释这些指标的定义、计算逻辑,并结合简单例子帮助理解。每个指标都基于标准评估方法,确保解释真实可靠。

1. 忠实度 (Faithfulness)

忠实度衡量生成答案是否完全基于检索到的上下文,避免无依据的编造。
定义 :评估生成答案中的事实陈述是否能在上下文找到证据支持。
计算逻辑:

  • 步骤1:将生成答案拆解成多个独立的"事实陈述"(Claims)。

  • 步骤2:对每个陈述,检查它是否能在上下文中找到直接或间接证据(例如,通过语义匹配)。

  • 步骤3:计算比例:忠实度 =(支持的陈述数)/(总陈述数)。
    大白话 :如果答案有10个陈述,9个有上下文依据,忠实度就是90%。
    数学表达 :忠实度公式为 \\frac{\\text{支持的陈述数}}{\\text{总陈述数}} 。
    例子:假设上下文提到"地球是行星",生成答案说"地球属于行星类别",则该陈述被支持;如果说"地球是恒星",则无支持。

2. 答案相关性 (Answer Relevancy)

答案相关性评估生成答案是否直接回答用户问题,避免偏离主题。
定义 :衡量答案与原始问题的语义匹配程度。
计算逻辑:

  • 步骤1:使用语言模型(如GPT-4)从答案生成"假设问题"(一般是三个假设问题)(即反推问题)。

  • 步骤2:计算这些假设问题与原始问题的语义相似度,常用嵌入模型计算余弦相似度。

  • 步骤3:取相似度的平均值作为得分。
    大白话 :如果答案反推出的问题与原问题一致,相关性高;否则,说明答非所问。
    数学表达 :余弦相似度公式为 \\cos(\\theta) = \\frac{\\mathbf{A} \\cdot \\mathbf{B}}{\|\\mathbf{A}\| \|\\mathbf{B}\|} ,其中\\mathbf{A}和\\mathbf{B}是问题嵌入向量。相关性得分是平均相似度。
    例子:原始问题"如何泡茶",生成答案"先烧水再放茶叶",反推问题"泡茶步骤"与原问题高度相似。

3. 上下文精度 (Context Precision)

上下文精度评估检索结果中有效信息的比例,关注文档排序质量。
定义 :衡量检索到的文档段落是否相关且有序。
计算逻辑:

  • 步骤1:基于标准答案(Ground Truth),标记检索结果中每个段落是否相关。

  • 步骤2:为每个段落赋值:相关得1分,不相关得0分。

  • 步骤3:应用排序加权 (Precision@k),即前k个段落权重更高,计算加权平均得分。
    大白话 :如果前3篇文档全有用,精度高;如果只有第4篇有用,精度低。
    数学表达 :加权平均公式为 \\text{Precision} = \\frac{\\sum_{i=1}\^{k} w_i \\cdot s_i}{\\sum_{i=1}\^{k} w_i} ,其中s_i是段落得分(0或1),w_i是权重(如w_i = \\frac{1}{i})。
    例子:检索5篇文档,标准答案标记前2篇相关,则精度得分基于加权计算。

4. 上下文召回率 (Context Recall)

上下文召回率评估检索结果覆盖标准答案关键信息的程度,避免遗漏。
定义 :衡量上下文中是否包含所有必要事实。
计算逻辑:

  • 步骤1:将标准答案 拆解成多个"事实陈述"。

  • 步骤2:检查每个陈述是否能在检索上下文中找到支持。

  • 步骤3:计算比例:召回率 =(被支持的陈述数)/(总陈述数)。
    大白话 :标准答案有10个要点,检索覆盖5个,召回率就是50%。
    数学表达 :召回率公式为 \\frac{\\text{被支持的陈述数}}{\\text{总陈述数}} 。
    例子:标准答案提到"COVID-19传播方式包括飞沫和接触",如果检索上下文只提到飞沫,则召回率低。

总结

这四个指标共同构成评估框架:忠实度确保答案不编造,答案相关性聚焦问题响应,上下文精度优化文档排序,上下文召回率保证信息完整性。在应用中,它们帮助系统改进检索和生成模块。例如,高忠实度和高召回率表明系统可靠覆盖信息,而低相关性可能提示需调整问答模型。这些指标的计算逻辑清晰,便于自动化评估。

相关推荐
硅谷秋水4 分钟前
AgenticRoboRL:将“编程智能体”后训练引入智能体化机器人领域
人工智能·机器学习·语言模型·机器人
武天旭7 分钟前
AI安全--AI大模型的毒性偏见与安全对齐实践
人工智能·python·深度学习
番茄啊15 分钟前
linux 开启xftp连接
linux·运维·服务器
CodeYp201923 分钟前
第1讲:Linux 基础指令
linux·指令
wordbaby25 分钟前
构建高效的智能体(Building Effective Agents)— Anthropic 官方全文精译与图解
人工智能
xsd2024111826 分钟前
AI 短剧怎么做?
人工智能
m0_7156744337 分钟前
政务泛监测体系能力排行:AI 重塑监测边界,治理的颗粒度革命
大数据·网络·人工智能·安全·网络安全·政务
羲云网络1 小时前
AI API 门户上线不难,难的是让用户完成第一次调用
人工智能·产品运营·api·开发者·acedatacloud
李松桃1 小时前
基于端口号的服务配置
linux·nginx-核心模块配置
视觉小萌新1 小时前
AI Class 3 · Chapter 2-3:函数、异常、文件读写+JSON / JSONL 读写(小白版)
人工智能·python·json