摘要
检索增强生成 (RAG) 已成为自然语言处理的关键创新,通过整合外部信息检索来增强生成模型。然而,由于RAG系统的混合结构和对动态知识源的依赖,评估RAG系统带来了独特的挑战。因此,我们加强了广泛的综述,并提出了RAG系统基准的分析框架RGAR(检索、生成、附加要求),旨在通过关注可测量的输出和既定事实来系统地分析RAG基准。具体来说,我们仔细研究和对比了检索和生成组件的多个可量化指标,例如相关性、准确性和忠实度,以及当前RAG评估方法中的内部链接,涵盖了可能的输出和基本事实对。我们还分析了不同作品的附加要求的整合,讨论了当前基准的局限性,并提出了进一步研究的潜在方向,以解决这些缺点并推进RAG评估领域。最后,本文整理了与RAG评估相关的挑战。它基于提出的RGAR框架对现有的RAG基准设计方法进行了彻底的分析和检查。
1 简介
检索增强生成 (RAG) [29] 代表了自然语言处理的重大进步,它通过集成信息检索技术来增强生成模型的性能。它解决了独立生成模型面临的一个关键挑战:倾向于产生虽然合理但可能没有事实依据的响应。通过从外部来源检索相关信息,RAG显著降低了幻觉 [20] 或事实上不正确的生成输出的发生率,从而提高了内容的可靠性和丰富性。[56] 这种检索和生成功能的融合使得创建的响应不仅符合上下文,而且还基于最新和最准确的可用信息,这使得 RAG 成为追求更智能和多功能语言模型的一项发展 [56,52]。
自预训练语言模型[14]出现以来,已经从各个角度对RAG系统进行了大量的研究。RAG 系统包括两个主要组件:检索和生成。检索组件旨在从大量外部知识源中提取相关信息。它涉及两个主要阶段:索引和搜索。索引使用倒排索引进行稀疏检索,或使用密集向量编码进行密集检索 [14,11,24] 来组织文档,以便于高效检索。搜索利用这些索引来获取与用户查询相关的文档,通常会结合可选的重新排序器 [4,34,5,43] 来优化检索到的文档的排名。生成组件利用检索到的内容,在提示和推理阶段制定连贯且与上下文相关的响应。语言模型的输入是通过提示来制定的,它整合了检索阶段的查询。诸如思路链 (CoT) [48]或复述和响应 (RaR) [7]之类的方法可以指导更好的生成结果。在推理步骤中,大型语言模型 (LLM) 解释提示的输入以生成与查询意图一致的准确且深入的响应并整合提取的信息 [30,8]。附录A中详细解释了RAG结构。图1说明了上述RAG系统的结构。
图 1 RAG系统的结构包括检索和生成组件以及相应的四个短语:索引、搜索、提示和推理。EO和GT对以红色和绿色突出显示,并带有棕色虚线箭头。
随着RAG特定方法的进步,评估RAG的重要性也日益增加。一方面,RAG是一个复杂的系统,与特定要求和语言模型紧密相关,因此产生了各种评估方法、指标和工具,尤其是考虑到黑盒LLM生成。因此,评估RAG系统需要考虑相当多的特定组件和整个系统评估的复杂性。另一方面,动态外部数据库和各种下游任务(例如内容创建或开放域问答)进一步加剧了RAG系统的复杂性[14,53]。这些挑战需要开发全面的评估指标,以有效地捕捉检索准确性和生成质量之间的相互作用[2,6]。为了进一步阐明这些要素,我们开展了RAG评估综述,以解决该领域目前的差距,这与之前主要收集特定RAG方法或数据的RAG综述 [57,14,21]不同。我们编制了12个不同的评估框架,涵盖了RAG系统的一系列方面。我们进行了比较分析,并综合了各个组件的具体评估方法,重点关注准确性、忠实性和相关性等方面。我们还讨论了现有方法的局限性以及未来RAG评估的前景。我们希望为读者提供对 RAG 评估的全面了解。
对于本文,我们在以下方面做出了贡献:
1. 评估挑战:这是第一篇通过RAG系统结构总结和分类评估RAG系统的挑战的工作,包括检索、生成和整个系统三个部分。
2. 分析框架:基于这些挑战,我们提出了一个RAG基准测试分析框架 (RGAG),旨在解决 RAG 系统固有的独特复杂性,为评估其在多个方面的有效性提供基本方法。
3. RAG 基准测试分析:借助RGAG框架,我们对现有的RAG基准测试进行了全面分析,强调了它们的优势和局限性,并为RAG系统评估的未来发展提出了建议。
2 评估RAG系统的挑战
评估混合RAG系统需要评估检索、生成和整个RAG系统。这些评估是多方面的,需要仔细考虑和分析。每个评估都包含特定的困难,使开发RAG系统的综合评估框架和基准变得复杂。
检索:RAG系统的检索组件对于从外部知识源获取相关信息以指导生成过程至关重要。评估此组件的一个主要挑战是潜在知识库的动态和庞大性质,从结构化数据库到整个网络。这种庞大性需要评估指标,这些指标可以有效地衡量给定查询上下文中检索到的文档的精确度、召回率和相关性[43,27]。此外,信息的时间方面,即数据的相关性和准确性会随时间而变化,这给评估过程增加了另一层复杂性[5]。此外,信息来源的多样性以及检索到误导性或低质量信息的可能性对评估检索组件在过滤和选择最相关信息方面的有效性提出了重大挑战[34]。另一方面,检索组件的评估方法也是一个挑战,因为传统的评估指标强制检索系统关注更高的TopK 召回率,而不是通过一个查询传递的有用信息。
生成:生成组件目前由LLM提供支持,根据检索到的内容生成连贯且适合上下文的响应。这里的一个重大挑战在于评估生成内容对输入数据的忠实度和准确性。这不仅涉及评估响应的事实正确性,还涉及评估它们与原始查询的相关性以及生成文本的连贯性 [58,41]。某些任务(例如创造性内容生成或开放式问答)的主观性进一步使评估复杂化,因为它引入了构成“正确”或“高质量”响应的可变性[40]。
整体RAG系统:评估整个RAG系统会带来额外的复杂性。检索和生成组件之间的相互作用意味着,通过单独评估每个组件无法完全了解整个系统的性能[41,13]。需要评估系统是否能够有效利用检索到的信息来提高响应质量,这涉及衡量检索组件对生成过程的附加值。此外,响应延迟、对错误信息的鲁棒性以及处理模糊或复杂查询的能力等实际考虑因素对于评估系统的整体有效性和可用性也至关重要[34,5]。
图 2 RGAR框架的Target模块
3 RGAR:评估分析框架
评估从传统绝对数值指标到多源和多目标生成评估的目标转变,以及检索和生成组件之间错综复杂的相互作用,带来了重大挑战。在动态数据库中搜索可能会导致误导性结果或与事实相矛盾。准确反映现实场景的多样化和全面的数据集至关重要。指标领域也存在挑战,包括针对不同下游任务的生成评估标准、人类偏好以及RAG系统内的实际考虑。大多数先前的基准主要解决RAG评估的一个或多个方面,但缺乏全面、整体的分析。
为了更好地理解RAG基准,我们提出了一个名为 RGAR(检索、生成和附加要求)的分析框架。它分别考虑了目标、数据集和指标。目标模块旨在确定评估方向。数据集模块有助于比较 RAG 基准中的各种数据构造。最后一个模块“指标”介绍了与评估期间使用的特定目标和数据集相对应的指标。总体而言,它旨在通过涵盖“可评估输出”(EO)和“基本事实”(GT)之间所有可能的配对,提供一种系统的方法,用于评估RAG系统在各个方面的有效性。在下一节中,我们将彻底解释该框架,并利用它来介绍和比较RAG基准。
3.1 评估目标(评估什么?)
RAG 系统中的EO和GT的组合可以生成所有可能的目标,这是RGAR框架的基本概念(如图1所示)。一旦确定,就可以根据特定的一对EO或EO与GT来定义这些目标,如图2所示,并用于分析当前RAG基准的所有方面。
- 检索:对于检索组件的评估,EO是取决于查询的相关文档。然后,我们可以为检索组件构建两个成对关系,即相关文档 ↔ 查询、相关文档 ↔ 候选文档。
- 相关性(相关文档 ↔ 查询)评估检索到的文档与查询中表达的所需信息的匹配程度。它衡量检索过程的精确度和特异性。
- 准确度(相关文档 ↔ 候选文档)评估检索到的文档与一组候选文档相比的准确度。它衡量系统识别相关文档并将其评分高于不太相关或不相关文档的能力。
- 生成:生成组件的类似成对关系如下所示。EO 是生成的文本和短语结构化内容。然后,我们需要将这些 EO 与提供的 GT 和标签进行比较。
- 相关性(响应 ↔ 查询)衡量生成的响应与初始查询的意图和内容的匹配程度。它确保响应与查询主题相关并满足查询的特定要求。
- 忠实度(响应 ↔ 相关文档)评估生成的响应是否准确反映了相关文档中包含的信息,并衡量生成的内容与源文档之间的一致性。
- 正确性(响应 ↔ 样本响应)与检索组件中的准确性类似,它衡量生成的响应相对于样本响应的准确性,样本响应是基本事实。它检查响应在事实信息方面是否正确,以及在查询上下文中是否合适。
介绍了检索和生成组件的目标。表1列出了有关改进和评估2024年3月截止的RAG 和RAG基准的相关工作。表1描述了这些信息,其中每个评估标准都用不同的颜色表示。例如,倒数第四个FeB4RAG [47]基于[15]提出了四个标准,包括一致性、正确性、清晰度和覆盖率。正确性相当于检索中的准确性,一致性相当于生成组件中的忠实度。虽然检索中的准确性衡量了检索到的信息的正确性,但我们认为覆盖率与覆盖率有关,并且与多样性更相关。因此,我们认为覆盖率与多样性相关,是我们提出的评估框架中的一项额外要求,随后将介绍该框架。剩下的标准清晰度也被归类为我们提出的框架中的一项额外要求。其他工具和基准的处理方式类似。
工具和基准在评估RAG系统的数据集时提供了不同程度的灵活性。仅指定评估目标的工具提供了一个多功能框架,能够构建完整的RAG应用程序和评估管道,如 [45,27,28] 等作品所示。另一方面,基准侧重于RAG评估的不同方面,特别强调检索输出或生成目标。例如,RAGA和ARES评估检索文档的相关性,而RGB和MultiHop-RAG [5,43] 优先考虑准确性,因此需要与GT进行比较。所有基准都考虑了生成目标,因为它们在RAG系统中起着关键作用,尽管它们的重点领域各不相同。
表格 1 评估 RAG 系统的各种框架中的评估目标和相应指标。演示文稿区分了评估中考虑的检索和生成的核心领域。评估的不同方面在表格中设置为不同的颜色:相关性、检索准确性和忠实性、生成正确性和相关性。还收集了对检索和生成组件之外的附加要求的考虑。注意到相当多的作品采用了多种方法或同时评估了多个方面。
额外要求:除了评估概述的两个主要组件外,部分工作还解决了RAG的一些额外要求(表 2中的黑色和Ltatic目标)。要求如下:
- 延迟[18,27] 衡量系统查找信息和响应的速度,这对用户体验至关重要。
- 多样性[4,27] 检查系统是否检索了各种相关文档并生成了不同的响应。
- 噪声鲁棒性[5] 评估系统在不影响响应质量的情况下处理不相关信息的能力。
- 负面拒绝[5] 衡量系统在可用信息不足时不提供响应的能力。
- 反事实鲁棒性[5] 评估系统识别和忽略不正确信息的能力,即使在收到有关潜在错误信息的警报时也是如此。
- 更多:为了更多地考虑人类偏好,可能会有更多额外的要求,例如可读性 [47,28]、毒性、困惑度 [28] 等。
对于例外情况,CRUD-RAG[34]引入了一个全面的基准,解决了除问答之外的更广泛的 RAG 应用范围,分为创建、读取、更新和删除场景。该基准测试评估了RAG系统在各种任务中的性能,包括文本延续、问答、幻觉修改和多文档摘要,每个任务都对应于CRUD操作。它强调评估所有RAG组件,包括检索模型和外部知识库构建,为在不同场景中优化RAG技术提供见解。
3.2 评估数据集(如何评估?)
表格 2 每个基准使用的评估数据集。未引用的数据集由基准本身构建。
在表 2 中,不同的基准测试采用了不同的数据集构建策略,从利用现有资源到生成针对特定评估方面量身定制的全新数据。几个基准测试借鉴了KILT(知识密集型语言任务)基准测试 [37](自然问题 [25]、HotpotQA [51] 和 FEVER [44])的部分内容以及其他已建立的数据集,例如SuperGLUE [46](Mul tiRC [9]和ReCoRD [54])[41]。然而,使用此类数据集的缺点是无法解决动态现实场景中的挑战。在 RAGA [13]构建的WikiEval中也可以看到类似的情况,它是从2022 年后维基百科页面生成的。
强大的LLM的出现彻底改变了数据集构建的过程。有了使用这些框架为特定评估目标设计查询和基本事实的能力,作者现在可以轻松地以所需的格式创建数据集。RGB、MultiHop-RAG、CRUD-RAG 和 CDQA [5,43,34,50] 等基准进一步采用了这种方法,通过使用在线新闻文章构建自己的数据集来测试RAG系统处理 LM 框架训练数据之外的真实世界信息的能力。
总之,数据集的创建和选择对于评估 RAG 系统至关重要。针对特定指标或任务量身定制的数据集可提高评估准确性,并指导开发适应现实世界信息需求的 RAG 系统。
3.3 评估指标(如何量化?)
在评估 RAG 系统的复杂领域中导航需要对能够精确量化评估目标的指标有细致的理解。然而,创建符合人类偏好并解决实际考虑的评估标准具有挑战性。RAG 系统中的每个组件都需要一种量身定制的评估方法来反映其独特的功能和目标。
检索指标:可以使用与给定数据集相对应的各种指标来评估各种目标。本节将介绍几种常用的检索和生成目标指标。在这些常用指标中也可以找到其他要求的指标。更具体设计的指标可以在原始论文中通过表 1 作为参考进行探索。
对于检索评估,重点是能够准确捕捉查询响应中检索到的信息的相关性、准确性、多样性和稳健性的指标。这些指标不仅要反映系统获取相关信息的精确度,还要反映系统在动态、庞大且有时具有误导性的可用数据环境中导航的弹性。[33]基准中部署了误导率、错误重现率和错误检测率等指标,凸显了对RAG系统固有复杂性的高度认识。将 MAP@K、MRR@K 和Tokenization与F1集成到 [43,50] 等基准中反映了对传统检索多方面评估的深入理解。而[15]也强调这种基于排名的评估方法并不不适合RAG系统,应该有更多特定于RAG的检索评估指标。这些指标不仅能捕捉检索系统的准确率和召回率,还能考虑检索到的文档的多样性和相关性,与RAG系统中信息需求的复杂性和动态性相一致。如 [13] 所示,引入LLM作为评估评判者,进一步强调了检索评估的适应性和多功能性,为评估检索质量提供了一种全面且情境感知的方法。
非基于排序的指标:非基于排序的指标通常评估二元结果(即某项是否相关),而不考虑该项在排序列表中的位置。请注意,以下公式只是这些指标的一种格式,每个指标的定义可能因不同的评估任务而异。
- 准确率是真实结果(真阳性和真阴性)在所检查的案例总数中所占的比例。
其中 T P 是真阳性的数量,T N 是真阴性的数量,F P 是假阳性的数量,F N 是假阴性的数量。
- 精确度是检索到的实例中相关实例的比例。
其中 T P 代表真阳性,F P 代表假阳性。
- k 处的召回率 (Recall@k) 是已检索到的相关实例占相关实例总数的比例,仅考虑前 k 个结果。
其中 RD 是相关文档,T opkd 是前 k 个检索到的文档。
基于排名的指标 基于排名的指标评估相关项目的呈现顺序,将相关项目置于排名列表顶部的重要性更高。
- 平均倒数排名 (MRR) 是一组查询的第一个正确答案的倒数排名的平均值。
其中 |Q|是查询数,ranki 是第 i 个查询的第一个相关文档的排名位置。
- 平均准确率 (MAP) 是每个查询的平均准确率得分的平均值。
其中 P(k) 是列表中截止点 k 处的准确率,rel(k) 是一个指示函数,如果排名 k 的项目是相关文档,则等于 1,否则等于 0,n 是检索到的文档数。
生成指标:在生成领域,评估超越了生成响应的准确性,涉及文本在连贯性、相关性、流畅性和与人类判断的一致性方面的质量。这需要能够评估语言生成细微方面的指标,包括事实正确性、可读性和用户对生成内容的满意度。BLEU、ROUGE 和 F1 分数等传统指标继续发挥着至关重要的作用,强调了准确率和召回率在确定响应质量方面的重要性。然而,误导率、错误重现率和错误检测率等指标的出现凸显了人们对 RAG 系统独特挑战的不断理解 [33]。
人类所做的评估仍然是比较生成模型彼此性能或与基本事实的一个非常重要的标准。使用 LLM 作为评估评判者的方法 [58] 是一种多功能且自动化的质量评估方法,适用于传统基本事实可能难以捉摸的情况 [13]。这种方法受益于采用预测驱动推理 (PPI) 和上下文相关性评分,提供了一个细致入微的视角来评估 LLM 输出。[41] 战略性地使用详细的提示模板可确保指导评估符合人类偏好,从而有效地标准化各个内容维度的评估 [1]。这种利用 LLM 作为仲裁者的转变标志着向自动化和上下文响应评估框架迈出了重大一步,丰富了评估格局,同时最大限度地减少了对参考比较的依赖。
- ROUGE:面向回忆的概要评估替补 (ROUGE) [32] 是一组指标,旨在通过将摘要与人工生成的参考摘要进行比较来评估摘要的质量。ROUGE 的变体测量系统生成的摘要和参考摘要之间 n-gram(ROUGE-N、ROUGGE-W)、单词子序列(ROUGE-L、ROUGGE-S)和单词对的重叠。ROUGE 可以指示生成的文本和参考文本之间的内容重叠。
- BLEU:双语评估替补 (BLEU) [36] 是一种指标,用于根据一个或多个参考翻译评估机器翻译文本的质量。BLEU计算生成文本中 n-gram 与参考文本相比的精度,然后应用简洁性惩罚以阻止过短的翻译。BLEU已应用于其他生成任务。尽管BLEU很受欢迎,但它也有局限性,例如没有考虑生成文本的流畅性或语法性。
- BertScore:BertScore [55]利用预先训练的转换器(如 BERT)的上下文嵌入来评估生成的文本和参考文本之间的语义相似性。BertScore使用上下文嵌入计算标记级相似度,并生成精度、召回率和F1分数。与基于n-gram的指标不同,BertScore可以捕捉上下文中单词的含义,这使其对释义更具鲁棒性,对语义等价性更敏感。
- LLM作为评判者:使用LLM作为评估生成文本的评判者是一种较新的方法。[58]在这种方法中,LLM用于根据连贯性、相关性和流畅性等标准对生成的文本进行评分。LLM可以根据人类判断进行微调,以预测未见文本的质量,或用于在零样本或少样本设置中生成评估。这种方法利用LLM对语言和语境的理解来提供更细致的文本质量评估。例如,[1]说明了如何为 LLM 评委提供详细的评分指南(例如从1到5的等级)来标准化评估过程。这种方法涵盖了内容评估的关键方面,包括连贯性、相关性、流畅性、覆盖范围、多样性和细节——无论是在答案评估还是查询表述的背景下。
附加要求:这些附加要求(例如延迟、多样性、噪声鲁棒性、负拒绝和反事实鲁棒性)用于确保RAG系统在符合人类偏好的实际场景中的实用性。本节深入探讨了用于评估这些附加要求的指标,强调了它们在 RAG 系统全面评估中的重要性。
延迟:衡量 RAG 系统检索相关信息并生成响应所花费的时间。它是用户体验的关键因素,尤其是在聊天机器人或搜索引擎等交互式应用程序中 [18]。
单次查询延迟(Single Query Latency:):处理单个查询所需的平均时间,包括检索和生成阶段。
多样性评估:RAG 系统检索和生成的信息的多样性和广度。它确保系统可以提供广泛的视角并避免响应中的冗余 [4]。
余弦相似度/余弦距离(Cosine Similarity / Cosine Distance):余弦相似度/距离计算检索到的文档或生成的响应的嵌入。较低的余弦相似度得分表示较高的多样性,表明系统可以检索或生成更广泛的信息。
噪声鲁棒性:衡量RAG系统在不影响响应质量的情况下处理不相关或误导性信息的能力[33]。误导率和错误重现率指标在[33] 中描述,提供了针对特定数据集和实验设置的详细描述。
负面拒绝(Negative Rejection):评估系统在可用信息不足或过于模糊而无法提供准确答案时拒绝响应的能力[5]。
拒绝率(Rejection Rate):系统不生成响应的速率。
反事实鲁棒性(Counterfactual Robustness):反事实鲁棒性评估系统在检索到的文档中识别和忽略不正确或反事实信息的能力[34]。
错误检测率(Error Detection Rate):在检索到的信息中检测到反事实陈述的比率。
4 讨论
评估检索增强生成 (RAG) 系统包含多方面的挑战,这些挑战源于它们对检索准确、相关信息的双重依赖
以及生成符合用户期望的连贯响应。这项综述强调了几个关键的考虑点,捕捉了推进 RAG 技术所需的评估广度和深度。
在评估目标方面,很明显,传统的问答 (QA) 设置在评估生成组件方面仍然有效,特别是在它们与人类对清晰度、相关性和事实准确性的偏好有多一致方面。然而,最近的策略,例如基于CRUD的评估,通过审查 RAG 系统与动态信息环境的交互能力提供了新的角度 [34]。这些方法强调了 RAG 评估超越静态基准的必要性,反映了现实世界中的场景,其中信息不断更新,查询不是严格基于事实的,而是探索性的或对话性的。
在数据集方面,鉴于RAG系统高度针对特定任务的特性,设计“一刀切”数据集的挑战十分显著。精心设计的独特数据集用于测试RAG性能的特定方面,是必不可少的。虽然这种方法可以确保全面、有针对性的评估,但也增加了全面测试所需的工作量和资源。数据集的差异性(从新闻文章到结构化数据库)反映了RAG系统所需的适应性,但也意味着简化评估的巨大障碍 [49,50]。
在指标方面,使用LLM作为自动评估评判者标志着一种新兴趋势,与人类评估相比,它有望在大规模推理中实现生成输出的多功能性和深度。然而,使用LLM作为聊天机器人响应的评判者在与人类判断保持一致、建立有效的评分标准以及在不同用例中应用一致的评估方面存在挑战。自动评估和人工评估对正确性、清晰度和丰富性的判断可能有所不同。此外,基于示例的评分的有效性可能有所不同,并且没有普遍适用的评分标准,这使LLM作为评判者的标准化变得复杂。[28]
RAG评估的未来方向应侧重于开发更具适应性、情境感知的基准,以准确反映这些系统旨在导航的动态、信息丰富的环境。这些努力可能包括在评估数据集中模拟实时信息更新或将用户反馈循环纳入评估方法。此外,探索能够捕捉人类语言理解和生成的微妙之处(超越纯粹的准确性或相关性)的更细微的指标将是至关重要的。将这些进步编入标准化评估框架的努力将极大地促进该领域的发展,为进步提供更清晰的基准,并更直接地将RAG系统的进步与用户需求和社会影响结合起来。
5 结论
本综述系统地探索了评估检索增强生成 (RAG) 系统的复杂情况,强调了评估其性能所固有的多方面挑战。通过提出的RGAR分析框架,我们描述了一种结构化的方法来剖析RAG评估的复杂性,重点关注这些系统所依赖的检索、生成和其他要求。我们的全面分析强调了有针对性的基准的必要性,这些基准反映了检索准确性和生成质量之间的动态相互作用,以及对实际应用至关重要的实际考虑。通过确定当前方法的差距并提出未来的研究方向,本综述旨在为更细致入微、更有效、更符合用户需求的RAG系统评估铺平道路,最终促进智能和多功能的自然语言处理技术的进步。