系列文章:
【RAG综述系列】之 RAG 相关背景和基本原理
【RAG综述系列】之 RAG 特点与挑战以及方法与评估
【RAG综述系列】之 RAG 先进方法与综合评估
【RAG综述系列】之 RAG 应用和未来方向
正文:
检索增强生成(Retrieval-Augmented Generation, RAG) 近年来因其能够结合大规模检索系统与生成模型,提高自然语言理解和生成能力而受到了广泛关注。RAG 充分利用外部知识源(如文档、数据库或结构化数据)来增强模型性能,使其生成更准确且上下文相关的输出。
本综述旨在提供对 RAG 的全面概述,深入分析其基本组件,包括检索机制、生成过程及二者的融合方式。讨论了 RAG 的关键特性,例如利用动态外部知识增强生成模型的能力,以及如何对齐检索到的信息与生成目标所面临的挑战。此外,提出了一种RAG 方法的分类体系,涵盖从基础的检索增强方法到结合多模态数据和推理能力的高级模型。
此外,还回顾了评估 RAG 系统的基准测试和常用数据集,并深入探讨了其在问答(QA)、摘要(Summarization)和信息检索(IR)等领域的应用。最后,总结了 RAG 领域的前沿研究方向和改进机会,包括提升检索效率、增强模型可解释性和优化特定领域的适应性。最终展望了 RAG 在应对真实世界挑战中的潜力,以及它在推动自然语言处理(NLP)进一步发展方面的重要作用。
1. 引言
检索增强生成(RAG)已成为一种关键方法,它将信息检索与生成式模型相结合,以增强自然语言处理任务的能力。通过利用外部知识源,RAG 系统能够生成更准确且上下文相关的输出,从而解决诸如问答、摘要和开放领域对话等领域的复杂挑战。近年来,各种 RAG 方法相继被提出,这些方法涵盖了从基本的检索增强模型到更高级的架构,包括多跳推理 和 增强记忆技术。这些发展突显了 RAG 在 NLP 领域的潜力,它能够在一个统一的框架内动态地结合检索和生成,以提升系统的整体表现。
RAG 模型通过在生成过程中引入外部知识源(如文档、数据库或结构化数据)来增强传统的语言模型。与仅依赖预训练参数的传统模型不同,RAG 系统在生成时动态检索相关信息,从而生成更加信息丰富且上下文准确的内容。这种方法克服了传统语言模型的关键局限性,例如:
- 无法访问实时知识或特定领域知识,以及难以处理超出词汇表(OOV)或罕见实体。
- 在问答任务中,RAG 模型会从海量语料库中检索相关段落,以生成更精准且信息更丰富的答案;
- 在文本摘要任务中,RAG 依赖外部文档生成更具深度和完整性的摘要。
RAG 在早期的成功实践已经显著提升了多个 NLP 任务的效果,例如在开放域问答中,RAG 通过引入相关的外部上下文,超越了传统的生成模型;在基于文档的摘要任务中,它能够生成更贴合原始材料细微差别的摘要。
RAG 的核心是一种以知识为中心的生成方式,即将外部知识作为提升语言生成能力的关键因素。通过结合相关、实时且结构化的信息,RAG 模型能够显著提高其生成上下文精准且事实准确的能力。这种知识驱动的生成方式有效解决了传统语言模型的核心局限——传统模型受限于其训练数据,无法获取动态知识或特定领域知识。RAG 通过集成外部知识,不仅能够检索并融合相关信息,还能在多条信息之间进行推理,从而生成更具细节和深度的输出。这一向知识增强方向的转变使得模型能够处理更复杂的任务,例如:掌握专业领域知识,提高对话系统的回复相关性,以及生成高质量的摘要,使其更能体现原始文本的核心要点。通过将知识融入生成过程,RAG 为那些需要高精度和强上下文感知能力的应用打开了新的可能性。
尽管检索增强生成已经取得了令人瞩目的进展,但仍然存在多个挑战,阻碍了该方法的充分发挥。
- 知识选择(knowledge selection)是主要问题之一,即模型必须从海量的外部资源中有效筛选出最相关的信息。这一任务极具挑战性,主要因为现实世界的知识库规模庞大、信息噪声大且内容多样。
- 另一个关键挑战是知识检索(knowledge retrieval),即在生成时检索到正确的信息,同时在检索效率和相关性之间取得平衡。当前的检索技术仍然难以精准匹配查询与知识源,尤其是在高度专业化或存在歧义的场景下。
- 此外,知识增强的上下文推理(knowledge-enhanced in-context reasoning) 也是一个重要难题,模型不仅要检索到相关知识,还需要有效整合并推理,以确保生成内容的逻辑性和上下文适配性。
这些挑战凸显了 RAG 领域仍然需要更深入的研究,以及更优化的方法论。因此,对 RAG 进行全面的调研至关重要,这不仅有助于总结当前的局限性,也能为未来的发展方向提供指导。
本次调研的主要目标是从知识驱动的视角,全面梳理 RAG 的发展。通过聚焦外部知识与生成过程的融合,希望回顾RAG 领域的最新进展,包括模型、方法和技术。将介绍近年来涌现的关键 RAG 模型,以及用于检索和生成的核心方法,并分析这些方法如何解决知识选择、知识检索和上下文推理的挑战。此外,还希望挖掘当前研究的趋势,并识别尚未深入探索的领域,例如:多模态知识整合和 特定领域应用。调研的独特贡献在于其以知识为核心的视角,提供了一个统一的框架来理解和推进 RAG 研究。本调研的目标读者包括研究人员、工程师和行业从业者,他们希望探索 RAG 在各种 NLP 任务中的应用。随着该领域的快速演进,本调研不仅是一个基础资源,也将成为未来研究的指南,提供对当前挑战和创新机会的深入分析。
2. RAG 背景概述
本节旨在为理解 RAG(检索增强生成,Retrieval-Augmented Generation)提供必要的背景知识。我们首先回溯 RAG 的起源,梳理其从正式提出到逐步发展的演变历程。随后,我们对现有的相关综述进行分析,归纳它们的研究重点与局限性,以此明确本综述在当前研究格局中的定位与贡献。
2.1 RAG 的起源
随着语言模型的不断演进,研究人员开始探索如何通过引入检索机制来提升文本生成的质量。然而,在早期阶段,这一方法尚未形成明确的术语定义。直到 2020 年,Facebook 正式提出 RAG 概念,并成功将其应用于知识密集型任务。RAG 通过引入外部知识检索机制,显著增强了生成模型的能力,在问答和文本理解等任务中展现出卓越的性能。同一时期,Google 也推出了 REALM,采用类似的检索增强方法。REALM 在预训练阶段集成了隐式知识检索模块,在开放域问答任务上取得了显著进展,并在当时达到了最先进水平。
自此,RAG 逐渐受到学术界的广泛关注,并因其相较于传统生成模型的独特优势,成为研究热点。RAG 的核心机制在于结合检索与生成,使得模型能够在处理复杂推理任务时,动态访问外部知识库中的相关信息,从而提升生成内容的准确性与信息丰富度。这一范式的转变,标志着自然语言处理(NLP)领域的一次重要革新——模型不再仅仅依赖内部参数,而是能够高效利用海量的外部知识资源。如图 1 所示,自 2020 年起,研究人员陆续探索了 RAG 在不同方向上的应用,而 2022 年底 ChatGPT 的发布,更是引发了该领域的指数级增长。大量研究纷纷涌现,致力于通过检索增强策略进一步提升大型语言模型的能力。这些持续的研究进展,正在深刻塑造现代 NLP 的技术格局。
图1:一个用于组织 RAG 研究工作的框架。时间轴从 2020 年至今,将与 RAG 相关的研究分为三个主要领域:基础(包括 RAG 学习和 RAG 框架)、高级和评估。语言模型的关键里程碑(如 GPT-3、ChatGPT、GPT-4)也在时间轴上标注。
2.2 相关综述
伴随着生成式 AI,尤其是 RAG 技术的蓬勃发展,众多综述文章相继问世。然而,这些综述往往仅聚焦于 RAG 的特定方面。例如,它们要么专注于 RAG 的基础概念,要么仅在有限场景下概述 RAG 的增强方法。大多数现有研究都围绕文本生成任务,探讨如何利用大型语言模型进行检索增强,而对其他模态的 RAG 研究涉及较少。
《A Survey on Retrieval-Augmented Text Generation》这篇论文的综述提供了 RAG 的基本概览,并探讨了其在文本生成任务中的具体应用。《A Survey on RAG Meeting LLMs: Towards Retrieval-Augmented Large Language Models》、《Retrieval-Augmented Generation for Large Language Models: A Survey》和《Less is More: Making Smaller Language Models Competent Subgraph Retrievers for Multi-hop KGQA》 几篇论文则从大型语言模型的角度研究了 RAG,重点分析了面向查询的 RAG 增强方法。《Retrieval-Augmented Generation for Natural Language Processing: A Survey》深入剖析了 RAG 在检索技术中的关键发展,并介绍了其在自然语言处理任务中的广泛应用。此外,一些研究尝试从更广义的角度探讨 RAG。《Retrieving Multimodal Information for Augmented Generation: A Survey》和《Retrieval-Augmented Generation for AI-Generated Content: A Survey》的最新研究将 RAG 扩展至多模态场景,探索其在 AI 生成内容(AIGC)领域的技术和应用。《Graph Retrieval-Augmented Generation: A Survey》 的研究则利用图结构信息优化 RAG 的检索过程,以增强关系知识的获取能力,并提升模型生成上下文感知的内容。
除了对 RAG 技术本身的研究,近年来学界也日益关注 RAG 系统的评估问题。《Evaluation of Retrieval-Augmented Generation: A Survey》 的综述文章深入探讨了 RAG 评估的挑战,提出了一套综合性的评估框架,并系统分析了现有基准测试的优势与局限性。
尽管已有诸多综述覆盖了 RAG 的多个方面,但目前仍然缺乏一篇全面的综述,能够系统性地整合 RAG 的基础理论、增强方法及其跨领域应用。此外,现有综述普遍忽视了 RAG 的核心价值——知识的有效利用。为填补这一空白,本文从知识利用的视角出发,系统性地梳理和探讨 RAG 技术的发展现状与未来趋势。
3. RAG 基本原理
检索增强生成(Retrieval-Augmented Generation,RAG)作为一种强大的范式,结合了大型语言模型(LLMs)的内部知识与外部知识,以提升文本生成的质量。通过在生成流程中集成检索机制,RAG 解决了传统序列到序列(sequence-to-sequence)框架的局限性,尤其在需要丰富领域知识的任务场景中表现突出。本节将对 RAG 进行全面概述,并探讨其核心组成部分:从外部知识源进行检索、结合内部与外部知识进行生成,以及贯穿其中的关键知识融合过程。
图2:RAG 框架,该框架由三个主要组成部分构成:(1) 由 LLM 利用其内部知识处理查询;(2) 根据查询检索外部知识;(3) 通过知识融合,将内部知识与外部知识结合,以生成最终答案。
3.1 问题定义
大多数生成任务可以抽象为一个输入序列 x 到输出序列 y 的转换过程,即:
y=f(x)
然而,这一基本框架可能因信息不足或上下文需求复杂而受到限制。RAG 通过引入检索组件来弥补这一不足,使输入信息能够得到相关外部知识的补充。具体而言,检索函数 g 从外部知识库中提取相关信息 z 作为补充:
z=g(x)
随后,生成函数 f 结合原始输入序列 x 与检索到的上下文信息 z 以生成最终输出:
y=f(x,z)=f(x,g(x))
这一增强框架利用外部知识提升生成质量,尤其适用于需要复杂上下文理解的任务,如机器翻译和视觉问答(VQA)。
3.2 检索(Retrieval)
在大型语言模型(LLMs)背景下,RAG 的检索过程旨在从外部来源提供有用的知识。这些知识可能涵盖多种模态,包括文本、图像、视频、音频、代码、表格等。相应地,存储格式也多种多样,从简单的文本文件到复杂的数据库和搜索引擎不等。此外,知识结构具有异构性,可能以非结构化的纯文本、半结构化的 HTML 数据或结构化的图数据等形式存在。无论知识的模态、存储格式或结构如何,所有从外部知识库中获取相关信息的过程都可视为检索。
3.3 生成(Generation)
在生成过程中,生成模型结合内部和外部知识,将输入转换为连贯且相关的输出。无论数据格式或具体任务如何,生成阶段的核心在于 “去噪(Denoising)” 和 “推理(Reasoning)” 。
- 去噪(Denoising) 侧重于从检索到的知识中筛除无关或相互矛盾的信息,确保仅有可靠且相关的知识影响生成过程。
- 推理(Reasoning) 则使模型能够有效整合来自多个来源的信息,建立逻辑联系,并生成有据可依的输出。
通过对检索信息的有效 去噪,以及对多个知识来源的深入 推理,生成模型能够在处理复杂任务的同时,保持输出的准确性与连贯性。
3.4 知识融合(Knowledge Integration)
知识融合(Knowledge Integration),在 RAG 语境下通常称为增强(Augmentation),是将 LLMs 的内部知识与检索到的外部知识进行整合的关键过程。这种 神经-符号融合(Neural-Symbolic Integration) 主要可以通过以下三种方式实现:
- 输入层融合(Input-Layer Integration):将检索到的文档直接与原始查询拼接,然后输入模型,使查询与外部知识能够同时被处理。
- 输出层融合(Output-Layer Integration):在输出 logits 层结合检索到的知识,以调整模型的最终预测结果,特别适用于提高输出准确性的任务。
- 中间层融合(Intermediate-Layer Integration):在生成过程中,将外部知识整合到模型的隐藏状态中,从而实现内部知识与外部知识表示之间的更细粒度交互。
每种融合策略各具优势,可根据具体任务需求和计算资源限制进行选择。
总结
目前文章中回顾了 RAG 的基础概念,并分析当前模型所面临的关键挑战,为理解外部知识与语言生成的融合奠定基础。同时,深入探讨 RAG 的核心原理,详细介绍知识检索、整合和生成的流程。后续会进一步探讨前文提到的知识选择、检索效率及上下文推理等挑战,并分析其复杂性。还有介绍 RAG 的各种方法,包括传统的基于检索的模型,以及更高级的多模态方法,这些方法引入了更强的推理能力和记忆机制。并分析评估 RAG 系统的标准和数据集,并批判性地回顾现有的评测方法与指标。
本文原文为论文《A Survey on Knowledge-Oriented Retrieval-Augmented Generation》的解读。论文链接:A Survey on Knowledge-Oriented Retrieval-Augmented Generation