AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


亚马逊开源RAG评估框架:RAGChecker,专治RAG回答不准
发布日期:2024-12-13 19:02:06 浏览次数: 1609 来源:老贾探AI


尽管RAG模型在许多应用中表现出色,但它们在实际使用中也可能面临回答不准确的问题,那么如何有效地诊断和解决这些问题就显得尤为重要。亚马逊发布了一个全新的开源工具——RAGChecker,旨在帮助开发者和研究人员对RAG系统进行全面、可靠、细粒度诊断,着重解决AI回答不准的问题,并为进一步提升性能,提供可操作的方向。这个工具就像是给RAG系统开了一剂"药方",帮助它"康复",为我们的开发者打造更智能、更可靠的RAG系统。

论文:https://arxiv.org/pdf/2408.08067

项目:https://github.com/amazon-science/RAGChecker

了解现有 RAG 系统评估框架

RAG评估方向评估框架及链接描述
生成器基本能力评估RGB
https://arxiv.org/abs/2309.01431
https://github.com/chen700564/RGB
手动构建测试集,评估生成器的噪声鲁棒性、负拒绝、信息整合和反事实鲁棒性
生成器基本能力评估RECALL
https://arxiv.org/pdf/2311.08147
引入手动编辑的反事实上下文到QA和文本生成数据集,评估LLMs的反事实鲁棒性
生成器基本能力评估NoMIRACL
https://arxiv.org/pdf/2312.11361
通过人工判断相关和非相关数据集,评估LLMs对检索错误的鲁棒性
生成器基本能力评估https://arxiv.org/pdf/2404.10198通过引入不同水平的扰动来量化LLMs的忠实度与内部先验间的平衡
生成器基本能力评估FAAF
https://arxiv.org/pdf/2403.03888
提出细粒度的事实验证方法,用于评估生成器的真实性
RAG系统端到端评估TruLens
https://www.trulens.org/trulens_eval/core_concepts_rag_triad/
引入RAG三元组概念,评估上下文相关性、基础性和答案相关性
RAG系统端到端评估RAGAS
https://arxiv.org/pdf/2309.15217 和 ARES
https://arxiv.org/pdf/2311.09476
跟随RAG三元组概念,在不同数据集上优化分数预测方法
RAG系统端到端评估CRUD-RAG
https://arxiv.org/pdf/2401.17043
涉及CRUD操作,开发特定的RAG系统数据集和评估标准
其他端到端评估Findings of the Association for Computational Linguistics: EMNLP 2023, pages 7001–7025进行人类评估,考察生成搜索引擎的流畅性、感知效用和可验证性
其他端到端评估MEDRAG
https://arxiv.org/pdf/2402.13178
构建医学RAG基准,用QA准确性评估医学RAG系统
其他端到端评估MultiHop-RAG
https://arxiv.org/pdf/2401.15391
从新闻文章生成多跳查询,评估RAG系统的QA准确性
其他端到端评估CDQA
https://arxiv.org/pdf/2402.19248
提出一种生成动态QA问题的新方法,要求使用最新信息回答

然而,上述评估框架中使用的评估指标要么依赖于人类评估,要么依赖于简单的文本准确性,这使得它们无法应对需要长答案评估的复杂RAG场景。因此,我们没有真正将它们纳入元(meta)评估。下面我们进入本文将要介绍的一种先进的自动评估框架:RAGChecker

RAGChecker 框架核心内容

RAGChecker 是一种先进的自动评估框架,它提供了一套全面的指标和工具,用于深入分析 RAG 性能。它的功能主要有:

  • 基于声明的细粒度评估:RAGChecker基于(claim-level entailment)声明级别的细粒度评估,而不是响应级别的评估。从响应和真实答案中提取声明并与其他文本进行对比,这种方法能够对系统性能进行更加详细和微妙的分析,提供深入的洞察。
  • 整体指标:为了提供一个全面的系统性能视图,RAGChecker计算每个模型生成响应与其配对的真实答案之间的声明级别的精度和召回率。Precision 精度是响应中正确声明的比例,Recall 召回率是真实答案中正确声明的比例。精度和召回率的调和平均值作为整体性能指标F1分数。
  • 检索器指标:理想情况下,完美的检索器会返回生成真实答案所需的所有声明。RAGChecker定义了以下检索器指标:
    • 声明召回率:真实答案中的声明在检索到的文本块中被覆盖的比例。
    • 上下文精度:检索到的文本块中包含任何真实答案声明的比例。
  • 生成器指标:给定检索到的文本块,生成器可能会生成正确、错误或缺失的声明。RAGChecker定义了以下生成器指标:
    • 忠实度:生成器生成的声明与提供的上下文一致的比例。
    • 相关噪声敏感性:生成器在相关文本块中包含错误声明的比例。
    • 无关噪声敏感性:生成器在无关文本块中包含错误声明的比例。
    • 幻觉:生成器生成的声明不在任何检索到的文本块中的比例。
    • 自我知识:生成器基于自身知识生成的正确声明的比例。
    • 上下文利用率:生成器使用的真实答案声明在检索到的文本块中的比例。

实验设计

  1. 数据集准备:RAGChecker使用一个包含4162个查询的基准数据集,涵盖10个领域(Wikipedia、AI Science、Novel、Biomedical、Finance、Lifestyle、Recreation、Science、Technology和Writing)。数据集是从公共数据集中重新整理而来的,短答案被转换为长答案以匹配当前的RAG系统。
  2. 基线RAG系统:实验应用RAGChecker于8个定制的RAG系统,这些系统结合了2个检索器和4个生成器。检索器选择BM25和E5-Mistral,生成器选择GPT-4、Mixtral-8x7B、Llama3-8B和Llama3-70B。
  3. 元(meta)评估:为了验证RAGChecker的有效性,进行了元(meta)评估,比较了RAGChecker与现有的基线RAG评估框架(如TruLens、RAGAS和ARES)。元(meta)评估数据集由8个基线RAG系统生成的响应组成,每个实例是两个基线RAG系统给出的响应对。

结果分析

  1. 元(meta)评估结果:RAGChecker在正确性、完整性和整体评估方面与人类偏好有最强的相关性。具体结果如下:
  • 正确性:RAGChecker的相关系数为[49.66],优于其他基线指标。
  • 完整性:RAGChecker的相关系数为[60.67],优于其他基线指标。
  • 整体评估:RAGChecker的相关系数为[61.93],优于其他基线指标。
  • 主要结果:在10个领域的数据集上对8个RAG系统进行了平均评估。
    • 检索器的重要性:检索器的质量对整体性能有显著影响。E5-Mistral检索器与GPT-4生成器结合的系统在所有指标上表现最佳。
    • 生成器模型大小的影响:与相同的检索器结合,Llama3-70B生成器在所有指标上表现优于Llama3-8B。
    • 上下文利用率的稳定性:上下文利用率与整体F1分数强相关,且在不同检索器之间相对稳定。
    • 信息丰富的上下文提高忠实度和减少幻觉:E5-Mistral检索器使生成器能够更好地识别和利用信息,从而提高了忠实度和减少了幻觉。
    • 检索器召回率与生成器噪声敏感性的权衡:随着检索器召回率的增加,生成器对所有类型的噪声变得更加敏感。
    • 开源模型在区分准确信息和噪声方面的不足:GPT-4在上下文利用率和噪声敏感性方面表现优于其他开源模型,但倾向于盲目信任上下文。

    总结

    本文提出了RAGChecker,一种新的RAG评估框架,为检索器和生成器组件提供了细粒度的评估。通过元(meta)评估验证了RAGChecker与人类判断的高度相关性。广泛的实验评估揭示了RAG系统设计中的有价值的见解,如检索改进与噪声引入之间的权衡,以及忠实开源模型对上下文的盲目信任倾向。RAGChecker不仅加深了对RAG系统架构的理解,还为未来的RAG应用提供了关键指导。

    优点

    1. 提出了RAGChecker框架:RAGChecker是一个新颖的RAG系统评估框架,提供了对检索器和生成器组件的细粒度评估,引入了新的诊断指标以提供可操作的错误来源洞察。
    2. 元(meta)评估验证:通过元(meta)评估验证了RAGChecker与人类判断的相关性显著优于其他评估指标。
    3. 广泛的实验:在10个领域的基准上对8个最先进的RAG系统进行了全面的实验评估,揭示了RAG系统设计选择中的有价值的见解,如检索改进与噪声引入之间的权衡,以及忠实开源模型对上下文的盲目信任倾向。
    4. 细粒度的错误分析:基于声明级别的细粒度的评估,RAGChecker能够进行细粒度的错误分析,而不仅仅是响应级别的评估。

    问答环境回顾

    问题1:RAGChecker框架中的 claim-level 事实检查是如何实现的?

    RAGChecker框架通过 claim-level 的事实检查来实现细粒度的评估。具体步骤如下:

    1. 文本到claim提取:首先,使用一个文本到claim提取器将给定的文本(包括响应和真实答案)分解为一组claim。
    2. claim-level的事实检查:然后,使用一个claim-level的事实检查器来确定提取的claim是否在参考文本(可以是响应、真实答案或其他相关文本)中得到支持。如果一个 claim 在参考文本中得到支持,则认为该claim是成立的(entailed)。
    3. 评估指标计算:根据claim-level的事实检查结果,计算各种评估指标,如精度、召回率、F1分数、claim召回率、上下文精度、忠实度、相关噪声敏感性、无关噪声敏感性、幻觉、自我知识和上下文利用率。这种细粒度的评估方法不仅关注响应的正确性,还关注其完整性和上下文相关性,从而提供更全面的系统性能评估。

    问题2:RAGChecker框架在元(meta)评估中表现如何,与其他评估框架相比有何优势?

    RAGChecker框架在元(meta)评估中表现出色,具体优势如下:

    1. 高相关性:RAGChecker在正确性、完整性和整体评估方面与人类偏好有最强的相关性。与现有基准评估框架(如TruLens、RAGAS和ARES)相比,RAGChecker在这些方面表现最佳。
    2. 全面性:RAGChecker提供了细粒度的评估,不仅关注响应的正确性,还关注其完整性和上下文相关性,从而提供更全面的系统性能评估。
    3. 可靠性验证:通过构建一个包含8个基线RAG系统生成响应的元(meta)评估数据集,RAGChecker验证了其有效性和可靠性,确保其在现实世界场景中的实用性。综上所述,RAGChecker框架不仅在评估的全面性和细粒度上优于现有方法,还在与人类判断的相关性上表现出色,为RAG系统的评估提供了新的思路和工具。



53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询