AI 文摘

万字长文:从原理到应用,揭开RAG的神秘面纱





作者: 独到科技Doodod 来源: 独到科技Doodod

相信很多人近期如果阅读大模型和AI相关的文章,一定会经常看到三个字母——RAG。勤奋的朋友如果频繁看到这个词一定会主动搜索RAG的意思,但即使看到RAG的英文全称是“Retrieval-Augmented Generation”,中文意为“检索增强生成”,也还是一头雾水,这种技术有什么用?跟大模型和生成式AI有什么关系?要用在哪些业务场景?

之前的“万字长文”系列我们分别介绍了ChatGPT和AI Agent,本文我们将整合行业多方研究结果全面呈现RAG的技术原理、应用场景等。

关联阅读:
万字长文|从原理到应用:清华AI团队揭开ChatGPT的神秘面纱
万字长文|从原理到应用:揭开AI Agent的神秘面纱

####****

####RAG让大模型具备了“开卷考试”的能力

要点:

1、RAG(检索增强生成)是一种相对较新的人工智能技术,它通过允许大型语言模型(LLM)访问额外的数据资源而无需重新训练,从而提高了生成性AI的质量。

2、RAG模型基于组织自己的数据构建知识库,并且这些知识库可以持续更新,以帮助生成式AI提供及时、具有上下文的答案。

3、使用自然语言处理的聊天机器人和其他对话系统可以从RAG和生成式AI中获得巨大的好处。

4、实施RAG需要诸如向量数据库之类的技术,这些技术允许快速编码新数据,并对该数据进行搜索以供LLM使用。

####1、为什么需要RAG?

所有基础模型的基础,包括大型语言模型(LLM),首先都是将大量的原始数据通过一个称为变压器(Transformer)的AI架构转换成一个更简洁的形式,这个形式捕捉了数据的基本结构。然后,通过在这个简化的数据表示上进行微调(Fine-Tuning),即在特定领域的标记数据上进行额外的训练,可以使这个基础模型适应不同的任务。微调(Fine-Tuning)是一种常见的机器学习技术,它允许模型在保持原有知识的基础上,学习新的、特定任务的信息。这样,经过微调(Fine-Tuning)的模型能够更好地执行特定的任务,例如文本分类、情感分析或者其他需要模型理解和生成语言的任务。

但仅仅依靠微调(Fine-Tuning)很少能给模型提供回答不断变化的上下文中高度具体问题所需的全部知识。在2020年Meta(当时被称为Facebook)研究人员发布的一篇论文中,其提出了一个名为检索增强生成的框架,以使LLM能够访问其训练数据之外的信息。RAG允许LLM基于专门的知识体系来回答问题,从而更准确地回答问题。

IBM 研究院语言技术总监 Luis Lastras 表示:“这就像开卷考试和闭卷考试之间的区别。” “在RAG系统中,你是在要求模型通过浏览书本中的内容来回答问题,而不是试图从记忆中回忆事实。”

正如名称所示,RAG有两个阶段:检索和内容生成。在检索阶段,算法会搜索并检索与用户提示或问题相关的信息片段。在开放领域的消费者设置中,这些事实可以来自互联网上的索引文档;在封闭领域的企业设置中,通常使用更狭窄的来源集合,以增加安全性和可靠性。

这些外部知识被附加到用户的提示中,并传递给语言模型。在生成阶段,LLM从增强的提示和其训练数据的内部表示中汲取信息,以合成一个吸引人的答案,专门针对那一刻的用户。然后,答案可以传递给带有其来源链接的聊天机器人。

####2、RAG如何帮助LLM提供正确答案

RAG结合了检索模型和生成模型的功能。在生成文本回复之前,它会从权威的知识库中检索信息,以优化大型语言模型的输出。这种技术可以提高回答问题、翻译语言或完成句子等任务的准确性和相关性。RAG通过引用训练数据来源之外的信息,使得生成的内容更加准确和丰富。它特别适用于需要大量专业知识的自然语言处理任务,如问答系统、内容创作等领域。此外,RAG技术还有助于保持信息的实时性,因为它可以连接到实时更新的数据源,如社交媒体提要或新闻网站。

以上图为例,当用户提问上个月支出问题时,RAG系统首先会检索上个月的支出数据——这是回答用户关于预算的查询所需的“相关知识”。然后,这些数据会被用来指导大型语言模型(LLM)生成一个相关且非虚构的回答。这个过程有助于确保生成的回答不仅与用户的问题相关,而且还基于真实和准确的数据。

再想象一个场景:一个体育联赛希望粉丝和媒体能够使用聊天工具访问其数据,并回答有关球员、球队、体育历史和规则以及当前统计数据和排名的问题。一个通用的LLM可以回答关于历史和规则的问题,或者描述特定球队的体育场。它无法讨论昨晚的比赛或提供有关特定运动员受伤的当前信息,因为LLM没有这些信息,并且考虑到重新训练LLM需要大量的计算资源,因此保持模型的最新状态是不可行的。

除了大型、相当静态的LLM之外,体育联赛拥有或可以访问许多其他信息源,包括数据库、数据仓库、包含球员简介的文件和深入讨论每场比赛的新闻源。RAG让生成式人工智能摄取这些信息。现在,聊天工具可以提供更及时、更具上下文适应性和更准确的信息。

简单来说,RAG能够有效帮助LLM提供更好的答案。

随着数据量的增长,能迅速找到最相关的信息对于LLM来说变得越来越重要,因为LLM的记忆是有限的。向量数据库在这里发挥作用,它们可以高效地存储和检索信息,使得即使是数十亿的数据向量也能快速处理。

####3、RAG解决了哪些问题?

企业在训练大模型或者使用AI应用时常常会遇到以下两个主要挑战:

挑战1:LLM(大模型)对特定数据的不熟悉

LLM(大模型)都是通过深度学习和在广泛的数据集上训练,以掌握理解和创造新内容的能力。这些模型早期几乎都是基于公共数据进行训练,以便其能够处理多种任务。但是,一旦训练完成,它们通常会无法再次访问新的或特定的数据,这可能导致它们提供过时的信息或不准确的回答。

挑战2:AI应用需要定制数据来实现最佳效果

为了使LLM(大模型)能提供精确且相关的回答,需要让大模型了解特定领域的数据。例如,智能客服机器人需要能为用户提供针对特定问题的公司特定答案,内部问答机器人需要能够回答有关公司内部数据的问题等等。

那么,如何在不重新训练模型的情况下解决上述问题?

解决方案就是——RAG。它涉及检索相关数据并将其作为LLM的上下文。这种方法不仅依赖于模型训练时的知识,而且还结合了实时数据检索,使得LLM能够提供更准确、更相关的回答。

利用RAG架构,组织可以部署任何LLM模型,并通过提供少量特定数据来增强模型,无需投入大量时间和成本进行微调或预训练,即可为组织相关业务场景提供相关结果。这种方法提高了大模型的灵活性和应用范围,使其能够适应不断变化的数据和需求。

####4、RAG的技术优势

检索增强生成(RAG)技术的关键优势包括:

及时性与准确性 :RAG技术确保LLM的回答不只是基于过时的训练数据,而是利用最新的数据源来提供信息。

减少错误和误导 :RAG通过依据相关的外部知识来生成LLM的输出,从而减少了错误回答或虚假信息(幻觉)的风险,并允许输出包含原始数据源的引用,便于人工核实。

●** 领域特定性** :RAG使LLM能够提供与上下文相关且针对组织的专有数据或特定领域数据定制的回答。

效率与成本效益 :相较于其他需要使用领域特定数据来定制LLM的方法,RAG既简便又节省成本。组织可以轻松部署RAG,无需对模型进行定制。这在需要模型频繁更新新数据时尤其有价值。

####5、RAG VS.语义检索

检索增强生成(RAG)和语义搜索都是用于提高基于大型语言模型(LLM)的生成式人工智能(AI)准确性的技术。RAG通过让LLM访问额外的数据资源来提供更准确的回答,而语义搜索则通过深入理解查询中的特定单词和短语来缩小查询的含义,从而提供更精确的搜索结果。

传统的关键词搜索可能会导致信息的遗漏或误解,因为它们通常只是字面上的匹配,例如在搜索法国本土树种时可能会忽略掉诺曼底地区的树种(即使同样位于法国,但由于缺少关键词,诺曼底的本土树种可能会被遗漏)。而语义搜索则通过分析问题和文档的深层含义来检索数据,这使得它成为RAG不可或缺的一部分。它能够扫描大型数据库,找到与查询最相关的信息,并为LLM提供更多上下文,这对于需要处理大量企业信息的组织尤其有用。

总的来说,RAG和语义搜索技术共同提高了AI系统的性能,使其能够更有效地处理复杂的、知识密集型的任务。 它们通过提供及时准确的响应、减少不准确的响应或幻觉,并提供领域特定的相关响应,为现代企业提供了高效且具有成本效益的解决方案。

####6、RAG为生成式AI带来的好处

检索增强生成(RAG)技术为组织内的生成式人工智能(Gen AI)实践带来了诸多益处:

成本效益的实施: 开发聊天机器人时,通常从基础模型开始,这些模型在广泛的数据上进行训练以提供API访问。重新训练这些模型以适应特定信息的成本可能很高。RAG提供了一种更经济的方式,通过引入新数据来增强大模型(LLM),从而使生成式AI技术的应用更加广泛。

●** 保持信息的时效性:** 即便大模型(LLM)的训练数据在开始时符合需求,随着时间的推移保持其相关性也是一个挑战。RAG使得开发者能够向生成模型提供最新的研究、统计数据或新闻,通过直接连接到实时更新的数据源,如社交媒体提要或新闻网站,LLM能够向用户提供最新的信息。

●** 增强用户信任****:** RAG允许大模型(LLM)在提供信息时附上来源,包括引文或引用,用户可以进一步查阅源文档以获取详细信息,这增强了用户对生成式AI解决方案的信任和信心。

提供开发者更多控制: RAG技术使开发者能够更有效地测试和改进他们的聊天应用程序,他们可以根据不断变化的需求或跨职能使用来调整大模型(LLM)的信息来源。开发者还可以在不同的授权级别内限制敏感信息的检索,并确保大模型(LLM)生成适当的响应。如果大模型(LLM)引用了错误的信息来源,开发者也可以进行故障排除和修复。这使得组织能够更自信地将生成式AI技术应用于更广泛的场景。

####** RAG工作流程及主要应用场景介绍**

要点:

1、检索增强生成(RAG)是一种开创性的框架,通过整合外部知识源来增强大型语言模型(LLMs)。

2、RAG克服了LLMs参数化内存的局限性,使它们能够访问实时数据,提高了情境化能力,并提供最新的响应。

3、借助RAG,人工智能生成的内容变得更加准确、上下文感知,并且能够引用来源并减少数据泄露。

4、RAG的可更新内存消除了频繁的模型重新训练,使其成为各种应用的经济有效解决方案。

5、这项技术有望在各行业中革新人工智能,为用户提供更可靠和相关的信息。

####1、RAG的工作流程

检索增强生成(RAG)结合了自然语言生成(NLG)和信息检索(IR)两个关键组件。以下是它们如何共同作用的详细分解:

*自然语言生成(NLG) :RAG架构以NLG为起点,这是像GPT这样的高级语言模型的核心技术。这些模型经过大量文本数据集的训练,能够生成看似由人类编写的全面文本,为生成连贯且与上下文相关的结果奠定了基础。

*信息检索(IR): RAG的独特之处在于它整合了IR。除了文本生成,RAG还可以实时接入外部知识源。可以将这些源视为数据库、网站或甚至是专门的文档。RAG的真正亮点在于,它可以在编写文本的同时实时地联系这些源。

*协同作用: RAG的力量在于NLG和IR之间的协作。在RAG生成文本的同时,它会同时查询和检索来自这些外部源的信息。这种动态组合丰富了生成内容的当前性和上下文相关性,确保RAG产生的文本不仅在语言上合理,而且深入了解和上下文相关。

####2、RAG主要应用场景

RAG为高级LLM(大型语言模型)驱动的应用和高度复杂的模型打开了众多机会。RAG的实施是提升LLM能力和为复杂问题提供高度稳健解决方案的下一步。以下是RAG的7种主要应用。

(1)高级问答系统

RAG模型可以驱动问答系统,检索和生成准确的回应,提高个人和组织的信息可获取性。例如,医疗机构可以使用RAG模型开发一个系统,通过检索医学文献信息并生成精确的回答来回答医疗查询。

(2)聊天机器人应用

RAG通过使聊天机器人变得高度智能和具有上下文感知能力,彻底改变了聊天机器人应用领域。通过RAG,聊天机器人可以访问并检索来自广泛文档、网页和文章的信息,使它们能够为用户查询提供准确和最新的回答。这种先进的能力通过提供更相关和全面的信息来增强用户体验。

RAG驱动的聊天机器人可以在各个领域协助用户,如客户支持、技术故障排除和信息检索。它们能够理解复杂的问题,生成详细的回答,甚至提供来自外部来源的支持证据。RAG将语言模型的力量与互联网或外部资源上可用的广泛知识相结合的能力,使其成为创建高效智能的聊天机器人应用的宝贵工具。

(3)科学研究

RAG通过为研究人员提供一个强大的信息检索和分析工具,革新了研究领域。通过RAG,研究人员可以访问包括科学论文、期刊、书籍和在线数据库在内的大量信息数据集。这种访问使他们能够快速收集相关信息,并与他们领域的最新发展保持同步。

RAG驱动的研究模型能够理解复杂的研究查询,检索相关文档,并从中提取关键信息。这种能力显著加快了研究过程,使研究人员能够专注于分析和解释,而不是花费过多时间进行审查。RAG还促进了交叉引用和事实核查,以确保研究结果的准确性。

(4)内容生成

RAG已成为创建高度信息化和与上下文相关的内容的强大工具。通过RAG,内容创作者可以利用互联网或外部资源上可用的广泛知识来生成准确的文章、博客帖子、产品描述等。RAG在需要动态内容创建的场景中非常有价值,例如电子商务平台、新闻机构和内容营销。RAG结合了语言理解和信息检索的能力,确保生成的内容经过充分研究,并针对目标受众的特定需求进行定制。

( 5)信息检索 RAG

大模型通过提高搜索结果的相关性和准确性来增强信息检索系统。此外,通过结合基于检索的方法和生成能力,RAG模型使搜索引擎能够根据用户查询检索文档或网页,并生成有效代表内容的信息片段。

(6) 教育工具和资源

RAG模型被嵌入到教育工具中,通过个性化体验革新了学习方式。它们能够巧妙地检索和生成定制的解释、问题和学习材料,通过满足个人需求来提升教育旅程。

** (7)内容推荐系统**

通过理解用户偏好、利用检索能力并生成个性化推荐,为数字平台上的高级内容推荐系统提供动力,增强用户体验和内容参与度。

####********

####RAG所面临的关键挑战与拥有的未来

####1、RAG面临的技术挑战

尽管检索增强生成(RAG)在大型语言模型(LLM)的使用案例中提供了多个优势,但在实施RAG时仍然存在一些重大挑战。以下是实施RAG实践时遇到的一些主要挑战:

(1)基于检索的模型中的潜在偏见

实施检索增强生成的一个重大挑战是避免基于检索的模型中的潜在偏见。检索阶段是RAG的一个重要组成部分,在此阶段,根据输入查询从大型语料库中选择相关文档。如果检索模型(通常由密集段落检索驱动)未能选择最相关的文档,可能会对最终输出产生负面影响。

这种失败可能是由于模型训练数据中固有的偏见所致,这可能导致文档检索的偏颇或不准确。此外,模型可能偏好某些类型的内容而非其他类型,导致检索到的文档缺乏多样性。这些偏见构成了一个重大挑战,因为它们可能会损害RAG模型生成的响应的准确性和可靠性。

(2)计算复杂性

RAG的两步检索和生成过程可能在计算上非常密集,特别是在处理复杂查询时。这种复杂性可能导致处理时间和资源使用的增加。管理和搜索大规模检索索引是复杂的任务,需要高效的算法和系统。

虽然RAG提供了动态信息检索的优势,但它也引入了处理大规模检索索引的挑战,这些索引增加了模型的整体计算复杂性。这种计算复杂性可能构成一个重大障碍,特别是在实时应用程序或计算资源有限的系统中部署RAG模型时。

(3)处理模糊性

与检索增强生成模型相关的一个重大挑战是处理模糊性。含糊不清的上下文或意图的模糊查询可能对RAG模型构成相当大的问题。由于模型的检索阶段依赖于输入查询,模糊性可能导致从语料库中检索到不相关或离题的文档。

对于模糊查询,模型可能难以解释文本的相关性,这影响了生成阶段,因为模型的响应取决于输入和检索到的文档。如果检索到的文档不相关,生成的响应可能是不准确或无用的。

####2、在业务场景实施RAG的挑战

虽然RAG应用可以帮助我们弥合信息检索和自然语言处理之间的鸿沟,但它们的实施会带来一些独特的挑战。

(1)集成复杂性

将检索系统与LLM集成在一起可能很困难。当存在多个不同格式的外部数据源时,这种复杂性会增加。输入RAG系统的数据必须一致,并且生成的嵌入必须在所有数据源中保持统一。

为了克服这一挑战,可以设计独立处理不同数据源的各个模块。然后可以对每个模块中的数据进行预处理以保持一致性,并使用标准化模型确保嵌入具有一致的格式。

(2)可扩展性

随着数据量的增加,维护RAG系统的效率变得越来越具有挑战性。需要执行许多复杂的操作 - 如生成嵌入、比较不同文本之间的含义以及实时检索数据。

随着源数据的规模增加,这些任务将消耗大量计算资源,并可能导致系统变慢。

为了解决这一挑战,可以将计算负载分布到不同的服务器上,并投资于强大的硬件基础设施。为了改善响应时间,频繁询问的查询可能也会受益于缓存。

在RAG系统中实施向量数据库也可以缓解可扩展性挑战。这些数据库可以让您轻松处理嵌入,并快速检索与每个查询最接近的向量。

(3)数据质量

RAG系统的有效性在很大程度上取决于输入其中的数据质量。如果应用访问的源内容质量低劣,生成的响应将不准确。

企业组织必须投资于严格的内容策展和微调过程。有必要精炼数据源以增强其质量。对于商业应用,最好在将数据集用于RAG系统之前,让专业主题专家审查并填补任何信息空白。

####3、RAG与LLM的未来

检索增强生成(RAG)和大型语言模型(LLM)的未来发展充满了令人兴奋的可能性:

(1)检索机制的进步

RAG的未来将见证检索机制的改进。这些增强将专注于提高文档检索的精确性和效率,确保LLM能够快速访问最相关的信息。先进的算法和人工智能技术将在这一进化中发挥关键作用。

(2)与多模态AI的整合

RAG与多模态AI的协同作用,将文本与图像和视频等其他数据类型相结合,具有巨大的潜力。未来的RAG模型将无缝整合多模态数据,以提供更丰富、更具上下文意识的响应。这将为内容生成、推荐系统和虚拟助手等创新应用打开大门。

(3)行业特定应用中的RAG

随着RAG的成熟,它将进入行业特定的应用。医疗保健、法律、金融和教育等领域将利用RAG驱动的LLM来执行专门的任务。例如,在医疗保健领域,RAG模型将通过即时检索最新的临床指南和研究论文来帮助诊断医疗条件,确保医生能够访问最新的信息。

(4)RAG的持续研究和创新

RAG的未来将被不懈的研究和创新所标志。人工智能研究人员将继续推动RAG的边界,探索新的架构、培训方法和应用。这种对卓越的持续追求将导致更准确、更高效和更多功能的RAG模型。

(5)具有增强检索能力的大模型(LLM)

大模型(LLM)将发展出作为核心特性的增强检索能力。它们将无缝整合检索和生成组件,使它们在访问外部知识源时更加高效。这种整合将导致LLM在理解上下文方面更加熟练,并在提供上下文感知响应方面表现出色。

####结语:RAG正在革新我们沟通和解决问题的方式

RAG(检索增强生成)的未来充满了巨大的潜力,其不断发展将持续带来进一步的专业影响力和对行业的变革性应用。

随着技术的不断发展,我们可以期待RAG将变得更加复杂和多才多艺。RAG未来的一个令人兴奋的方向是整合多模态能力,使其不仅能够检索、分析和生成文本内容,还能处理图像、视频和音频等其他模态的内容。

此外,RAG可以用来从各种API中获取信息,以赋予大型语言模型(LLM)多维能力,并为最终用户提供卓越的体验。

RAG还能够检索各种第三方API,以提供实时数据并为最终用户优化信息。例如,如果用户要去度假并请求帮助规划旅行,由RAG驱动的LLM将访问多个API来检查天气信息、公共假期、航班和旅游景点,从而为用户提供全面的旅游指南。这种能力为用户提供了极具价值、最新且与上下文相关的信息,且无需人工干预。

以下是RAG技术能为我们带来的三大具体价值:

(1)沟通与理解的增强

设想随着RAG模型的无缝翻译和对文化细节的深入融合,语言障碍逐渐消散。教育资源能够根据每个人的学习风格进行个性化定制,而复杂的科学发现也能被有效地向大众传达。

(2)决策制定的改进

当你遇到创意障碍时,RAG能够启动创新的解决方案头脑风暴,利用广泛的外部知识库提出新颖的方法,并找到相关领域的专家。这增强了个人和组织以高效、有效的方式应对复杂问题的能力。

(3)个性化体验的提升

RAG模型能够在从医疗保健到教育的各个领域,根据个人的需求和偏好提供定制化的信息和建议。想象一下,AI助手能够基于你的医疗历史推荐最适合的药物,或者为你设计一个加速学习进程的个性化学习计划。

总的来说,RAG的未来非常有前景,其具备的巨大潜力将会革新各个行业,并通过先进的解决方案赋予用户智能化力量。检索增强生成(RAG)模型很大程度上将成为社会的一股变革力量,为我们改变沟通和解决问题的方式提供全新的途径。

- END -

更多AI工具,参考Github-AiBard123国内AiBard123

可关注我们的公众号:每天AI新工具