元启 · AI Research
/

检索增强生成(RAG)

Retrieval Augmented Generation RAG

本视频是"人人皆可用的生成式 AI"课程第二周第五讲,核心内容是**检索增强生成(RAG,Retrieval Augmented Generation)**技术的原理、实现步骤和典型应用

YQ元启
·2026 年 5 月 12 日·9 分钟·studies·#generative-ai #andrew-ng #deeplearning-ai #week2 #rag

内容摘要

本视频是"人人皆可用的生成式 AI"课程第二周第五讲,核心内容是**检索增强生成(RAG,Retrieval Augmented Generation)**技术的原理、实现步骤和典型应用。吴恩达以"公司停车政策问答"为贯穿案例,清晰地演示了 RAG 的三步工作流:检索相关文档 → 将文档内容注入提示词 → 用富提示词驱动 LLM 生成答案。视频的最终落点是一个重要认知转变:应该把 LLM 视为"推理引擎"而非"知识库",这一思维框架能显著拓展对 LLM 应用场景的想象力。


核心观点

  1. RAG 解决的核心问题:LLM 不知道你的私有信息
    通用聊天系统(如网页版 ChatGPT)因为只学习了公开互联网数据,无法回答"我们公司员工有停车位吗?"这类问题。RAG 通过在提示词中注入外部文档内容,让 LLM 能够基于你的私有知识库来回答问题,而无需对模型本身进行重新训练。

  2. RAG 的三步工作流

    • 步骤一(检索):根据用户问题,从文档集合中找出最相关的文档或文段(如从员工福利、停车、工资、设施等多份文档中定位到"设施文档")。
    • 步骤二(增强):将检索到的相关内容嵌入提示词中,构建一个包含上下文信息的"富提示词"。
    • 步骤三(生成):用这个富提示词驱动 LLM,由它对相关文本进行推理并生成最终答案。
  3. 实践细节:只截取最相关的片段,而非整篇文档
    由于 LLM 的上下文窗口(输入长度)有限制,在实践中不应把整篇文档塞入提示词,而是只提取文档中与问题最相关的那一部分。这既能节省 token 成本,又能让 LLM 聚焦在真正有用的信息上。

  4. RAG 的典型应用场景

    • 聊天 PDF:Panda Chat、AIO PDF、Chat PDF 等工具,让用户上传 PDF 并直接提问。
    • 网站问答机器人:Coursera Coach(基于 Coursera 内容)、Snapchat 聊天机器人(基于 Snap 产品文档)、HubSpot 客服机器人(基于公司内容)。
    • 新型网络搜索:Microsoft Bing 的对话搜索、Google 的生成式搜索功能、you.com(由吴恩达前学生 Richard Socher 创立)。
  5. 核心认知升级:LLM 是"推理引擎",不是"知识库"
    传统思路把 LLM 看成一个存储了大量知识的数据库,期望它"记住"所有答案。RAG 背后的更深刻思路是:不依赖 LLM 去记忆,而是提供给它相关信息,让它进行推理。这一转变让 LLM 的能力版图从"它知道什么"扩展到"它能处理什么"。


关键收获

💡 收获 1:"推理引擎 vs 知识库"是理解 RAG 价值的关键心智模型
如果把 LLM 看成知识库,你会受制于它的知识边界——训练数据截止日期、没有私有文档等。如果把它看成推理引擎,你只需把需要它处理的信息提供给它,它就能对任意文本进行推理。RAG 正是这一思路的技术实现。

💡 收获 2:RAG 是"无需重新训练模型"就能扩展 LLM 知识的最高效方法
让模型获取私有知识有三种路径:提示词注入(RAG)、微调(Fine-tuning)和预训练(Pre-training)。RAG 是其中成本最低、速度最快的——你不需要触动模型本身,只需改变输入给它的信息。

💡 收获 3:手动 RAG 是每个人都可以立刻使用的技巧
吴恩达特别指出:即使是在网页界面中直接使用 LLM,也可以手动应用 RAG——把一段文本复制粘贴到提示词中,然后告诉 LLM 基于这段文本来回答问题。这是无需任何技术背景就能立刻上手的实用技巧。

💡 收获 4:RAG 应用加引用溯源,是提升可信度的标准做法
好的 RAG 应用不仅给出答案,还会附上原始来源文档的链接,让用户可以自行核实。这一设计既解决了 LLM 幻觉问题的用户担忧,也增强了用户对系统的信任。

💡 收获 5:RAG 正在重构搜索引擎——这是一个超越"关键词检索"的范式转变
Bing、Google、you.com 等搜索引擎正在用 RAG 提供对话式搜索体验。这不是渐进式改进,而是从"给你网页列表"到"给你推理过的答案"的范式转变,也是 RAG 对互联网信息获取方式最深远的影响。


重要引述

"Think of the LLM not as a knowledge store, but instead as a reasoning engine."
(把大语言模型视为"推理引擎",而不是"知识库"。)

"Rather than counting on it to have memorized enough facts to get us the answer, we're instead using it as a reasoning engine to process information — not as a source of information."
(我们不是指望它已经记住了足够多的事实来给出答案,而是把它当作一个推理引擎来处理信息——而不是信息的来源。)

"RAG is used in many applications today and excitingly it seems to be transforming even web search."
(RAG 今天已被用于许多应用中,令人兴奋的是它似乎正在改变甚至连网络搜索的方式。)


总体结论

本讲以"是否有员工停车位"这一朴素问题为切入点,清晰呈现了 RAG 技术的完整工作逻辑,并通过大量真实产品案例(Panda Chat、Coursera Coach、Bing、you.com 等)展示了它的广泛落地价值。最具启发性的是结尾的认知框架升级:把 LLM 从"知识库"重新定位为"推理引擎",这一转变不仅解释了为什么 RAG 有效,更为所有生成式 AI 应用的设计提供了一个更开阔的思维框架。对于非技术背景的学习者,手动 RAG(复制文本到提示词中)是一个可以立刻使用的实用技巧;对于有工程背景的学习者,RAG 三步流程则是构建知识问答系统的标准起点。


逐字稿(中文翻译)

我们已经看到,通过提示词驱动大语言模型可以走得相当远,但有一种叫做"检索增强生成"(Retrieval Augmented Generation,简称 RAG)的技术,能够通过为 LLM 提供来自互联网公开数据或其他公开来源之外的额外知识,显著扩展你能用 LLM 完成的事情。我们来看看。

如果你向通用聊天系统(比如网络上的某个系统)提问"员工有停车位吗?",它可能会这样回答:"我需要更多关于你工作场所的具体信息"——因为它不知道你公司的停车政策。但是 RAG,即检索增强生成,是一种可以给 LLM 提供额外信息的技术,这样当你问它是否有停车位时,它就能参考专属于你公司的政策文件来回答。

RAG 是如何工作的?它有三个步骤。

第一步:给定"员工有停车位吗?"这个问题,系统会首先搜索可能包含答案的文档集合。例如,如果你的公司有关于员工福利、休假政策、设施、工资流程的不同文档,RAG 系统的第一步就是让计算机找出哪些文档(如果有的话)与这个问题最相关。停车问题似乎是关于设施、关于你团队工作的建筑物的问题,所以希望系统会选出"设施文档"作为最相关的文档。

第二步:将检索到的文档或文本内容融入一个更新后的提示词中。让我来构建一个提示词:我会说"请使用以下上下文信息回答最后的问题",然后我会从设施文档中取出相关文本——比如停车政策规定"所有员工均可在第一层和第二层停车"等内容——并将其放入提示词中。这样提示词就变得相当长,因为它试图给 LLM 提供很多上下文。

记住,上周我们讲过大语言模型提示词长度(输入长度)的限制,这就是为什么在实践中,与其把整篇很长的文档全部塞进提示词,你可能只需要提取文档中与问题最相关的那部分,只把那部分放入提示词。然后,我们最后加上原始问题:"员工有停车位吗?"

这就是为什么它叫做"检索增强生成"(RAG):我们要生成这个问题的答案,但我们通过检索相关上下文或相关信息,并用这些额外文本来增强提示词,从而增强生成答案的方式。构建了这个富提示词之后,第三步就是用这个丰富的提示词去驱动 LLM,希望 LLM 能给我们一个有深度的答案,告诉我们可以在哪里停车。

在某些应用中,使用 RAG 时我们还会在展示给用户的输出中附上原始来源文档的链接,这样在这个案例中,我们可能会链接到那份设施文档,用户如果愿意,可以回去阅读原始来源文档,自行核实答案。

检索增强生成(RAG)是一项重要的技术,它使得许多 LLM 能够拥有超出其在公开互联网上所学内容之外的背景知识和信息。以下是一些基于 RAG 的应用示例。

今天有很多公司提供可以让你与 PDF 文件对话的软件。例如,如果你在阅读一份白皮书,但也许没有时间仔细阅读全文,却有一个想要基于这份白皮书来解答的问题,现在有很多应用程序——比如 Panda Chat、AIO PDF、Chat PDF 等等——可以让你上传 PDF 文件,然后提问,它们会使用 RAG 技术为你生成答案。我发现其中一些软件效果更好,一些效果差一些,所以你得到的结果可能会有所不同,但围绕"与 PDF 对话"的应用确实引发了大量兴奋和关注。

也有越来越多的 RAG 应用能够基于网站文章来回答问题。例如,Coursera Coach 做了很多事情,但其中之一就是使用 RAG 来尝试基于 Coursera 网站本身的内容来回答问题。Snapchat 也有一个聊天机器人,使用 Snap 的文本来尝试回答你可能有的关于他们产品的不同问题。HubSpot 是一家营销自动化公司,也有一个聊天机器人,让你发布问题,并尝试根据公司或网站本身的内容为你生成答案。这类聊天机器人正在成为让用户获取关于你公司产品问题答案的另一种方式。

RAG 也正在催生新形式的网络搜索。Microsoft Bing 有一个对话功能,Google 也有一个生成式 AI 功能,可以根据你的查询生成文本;你.com(you.com)是一个以对话界面为核心构建的网络搜索引擎,实际上是由我以前的一位博士生 Richard Socher 创立的。所以 RAG 今天被用于许多应用中,令人兴奋的是,它似乎正在改变甚至连网络搜索的方式。

为了结束这个视频,我想分享一个重要的大思路:把 LLM 视为"推理引擎",而不是"知识库"。LLM 可能已经阅读了大量互联网上的文本,所以人们很容易把它们当作"知道很多事情"的工具——它们确实在某种程度上是这样,但它们并不知道一切。

采用 RAG 方法,我们在提示词本身中提供相关上下文,并要求 LLM 阅读那段文本,然后对其进行处理以得出答案。换句话说,我们不是指望它已经记住了足够多的事实来给出答案,而是把它当作一个推理引擎来处理信息——而不是作为信息的来源。我发现,这种把 LLM 视为推理引擎而非存储和检索信息的方式,能够扩展我们可能头脑风暴出来的应用集合,以及考虑 LLM 能够胜任的事情范围。

诚然,LLM 技术还处于早期,它并非总是表现得很好,但如果 LLM 不仅仅是一个为你存储大量信息的数据库,而是能够处理和推理信息,我认为这是一个令人兴奋的方向,值得我们思考 LLM 未来可能走向何方。

即使我主要在构建软件应用的背景下讨论 RAG,这个思路在你使用网页用户界面时也同样有用。有时我会把一段文本直接复制到某个 LLM 的在线网页界面的提示词中,然后告诉它使用那段上下文为我生成答案——这也是 RAG 的一种应用。

我发现 RAG 对许多不同的应用都很有用,希望你也会如此。在下一个视频中,我们将讨论另一种叫做"微调"的技术,这是扩展 LLM 能力的另一种方式。但在结束之前,让我说:希望你喜欢这个关于 RAG 的视频,希望你能真正"打扫干净"(clean up)这些 RAG 的知识!下个视频见!


本文档根据视频字幕整理翻译,内容为 DeepLearning.AI "Generative AI for Everyone" 课程第二周第五讲。

中文配音 · 可下载

检索增强生成(RAG)

下载 MP3
想直接聊聊这篇?扫码加我 →

相关阅读