RAG是什么?
Retrieval-Augmented Generation,中文通常译为“检索增强生成”,其核心在于让大模型先查找相关资料,再根据资料组织答案

大语言模型能够写文章、总结材料、回答问题,但它并不是一个实时更新且绝对可靠的知识库。模型掌握的知识主要来自训练数据:它可能不了解训练结束后发生的事情,也无法自然获取企业内部文件;遇到不确定的问题时,还可能生成看似合理、实际上并不存在的内容。
RAG,即Retrieval-Augmented Generation,中文通常译为“检索增强生成”,就是为解决这些问题而出现的一种技术架构。它的核心思路非常简单:
不要让大模型只凭记忆回答,而是先查找相关资料,再根据资料组织答案。
一、可以把RAG理解为“开卷考试”
普通大模型回答问题,更像一场闭卷考试。它只能依靠训练过程中记住的知识进行推断。
RAG则像一场开卷考试。当用户提出问题时,系统先从指定的知识库、数据库、网页或文件中找到相关内容,再把这些内容连同问题一起交给大模型。模型阅读资料后,整理出自然语言答案。
例如,一名员工询问:
公司一年有多少天带薪年假?
没有RAG时,大模型可能根据一般劳动制度给出一个通用答案,但这个答案未必符合该公司的实际规定。
使用RAG后,系统会先从公司的员工手册中找到“休假制度”相关段落,再要求大模型依据该段落回答,并附上文件名称或原文位置。这样得到的答案更贴近企业实际,也更容易核查。
RAG这一名称来自Patrick Lewis等研究者在2020年发表的论文。该研究将预训练生成模型的“参数化记忆”与外部文档索引形成的“非参数化记忆”结合,用于知识密集型问答和文本生成任务。(arXiv)
二、RAG通常怎样工作?
一个基础的RAG系统可以分为“资料准备”和“问题回答”两个阶段。
1.收集和处理资料
系统首先导入可能被查询的资料,例如产品说明书、规章制度、客服记录、研究报告、网页、数据库内容和新闻文章。
由于文档往往很长,系统不会直接把整份文件交给大模型,而是将其拆分成较小的文本片段。这个过程通常称为“分块”或“切片”。
每个文本片段随后会通过Embedding模型转换成一组数字,也就是“向量”。这些向量可以在数学空间中表达文本的大致语义。例如,“年假规定”和“员工休假制度”虽然用词不同,但对应向量通常会比较接近。处理后的向量会被保存到向量数据库或搜索索引中。(微软学习)
2.理解用户问题
当用户提出问题时,系统同样会把问题转换成向量,有时还会先进行关键词提取、意图识别或问题改写。
例如,用户问“去年买的设备还能免费维修吗”,系统可能将其改写为更适合搜索的问题:“产品保修期限和免费维修条件是什么?”
3.检索相关内容
系统将问题与知识库中的文本片段进行比较,找出语义最接近的若干段内容。
实际系统通常不只使用向量检索。向量检索善于理解语义,但对产品型号、人名、编号和精确术语可能不够敏感。因此,企业级RAG经常把关键词检索与向量检索结合起来,形成“混合检索”。候选内容还可以通过Rerank模型重新排序,把真正相关的内容放在前面。(华为云帮助中心)
4.把资料交给大模型
系统将检索到的内容放进提示词,大致形成如下指令:
请只根据以下资料回答用户问题。资料没有提供答案时,请明确说明无法确定,并列出引用来源。
大模型随后根据这些资料进行归纳、解释或总结,最终生成易于阅读的答案。
因此,RAG并不是重新训练一个大模型,而是在模型回答之前,为它临时补充一份与当前问题相关的参考资料。
三、RAG能解决什么问题?
1.接入模型没有学过的私有知识
企业合同、内部流程、项目文档和个人资料通常不会出现在大模型的训练数据中。RAG可以把这些资料接入现有模型,而不必为每批新文档重新训练模型。
因此,企业知识助手、内部客服、合同查询、技术文档问答和个人知识库,都是RAG最常见的应用。
2.使用持续更新的信息
模型的训练数据存在时间边界,而外部知识库可以随时更新。只要重新收录最新文档,RAG就能在回答时使用较新的产品信息、政策内容、库存数据或新闻资料。(Google Cloud)
3.降低部分事实性幻觉
RAG为模型提供了明确的参考内容,使回答能够建立在真实文档之上。它还可以要求系统为答案标记出处,方便用户返回原文核查。
不过,RAG只能降低幻觉风险,不能彻底消除幻觉。如果系统找错了资料、资料本身存在错误,或者模型误解了检索结果,仍然可能生成错误答案。(WIRED)
4.降低知识更新成本
微调需要准备训练数据并执行训练过程,适合调整模型的表达方式、任务能力或行为模式。RAG则更适合补充经常变化、需要引用来源的事实知识。
例如,公司制度更新时,RAG系统通常只需要更新知识库;如果试图通过反复微调让模型记住每次制度变化,成本更高,也更难保证旧知识被彻底覆盖。
四、RAG并不是“上传文档就能准确回答”
RAG的概念很直观,但真正做好并不简单。系统的最终效果取决于整条链路,而不仅仅取决于大模型能力。
文档质量
如果原始资料结构混乱、内容过时、相互矛盾,系统即使准确找到了相关段落,也可能得到错误结论。
图片、扫描件、复杂表格和流程图也需要专门解析。若系统只能读取普通文本,图片中的操作步骤和表格关系可能在入库时直接丢失。(华为云帮助中心)
文本分块
切片太短,内容可能失去上下文;切片太长,又会混入大量无关信息。
例如,将“退款条件”和下一节“账户注销说明”放进同一个文本块,可能让系统在回答退款问题时同时召回无关内容。合理的切片通常要参考标题层级、段落结构、表格边界和语义完整性,而不是简单地每隔固定字数切开。
检索准确率
RAG系统首先要“找对”,之后才能“答对”。
如果问题是“AX-107设备的保修期”,仅依靠语义相似度,系统可能召回其他型号的保修说明。因此,实际系统往往需要结合关键词匹配、元数据过滤、混合检索和重排序。
回答边界
知识库中没有答案时,系统应当明确表示“不知道”或“资料中没有说明”,而不是让大模型根据常识自行补充。
一个可靠的RAG系统不仅要评估答案是否流畅,还要评估检索是否正确、答案是否受到资料支持、引用是否准确,以及面对知识范围之外的问题能否合理拒答。(华为云帮助中心)
五、RAG、联网搜索和模型微调有什么区别?
RAG是一种架构,知识来源既可以是企业内部数据库,也可以是互联网搜索结果。
联网搜索可以看成一种面向公开网络的检索方式。它能够获得较新的公开信息,但网络内容质量不一,搜索结果也可能变化。
私有知识库RAG的资料范围更可控,适合企业制度、产品文档和内部数据,但只能回答知识库已经收录的内容。
微调则主要改变模型的行为模式和任务能力。例如,让模型学会特定写作风格、分类规则或固定输出格式。它并不天然适合保存大量持续变化、需要精确引用的事实内容。
在实际应用中,这几种技术并不冲突。一个系统可以先通过RAG获取内部资料和联网信息,再使用经过微调的模型按照规定格式生成答案。
六、RAG适合哪些场景?
RAG特别适合以下类型的应用:
- 企业内部知识问答;
- 产品客服和售后助手;
- 法律、医疗、科研文献检索辅助;
- 软件开发文档助手;
- 新闻资料和政策文件查询;
- 个人笔记与文件问答;
- 带有来源引用的搜索和研究工具。
它尤其适合那些“答案必须以指定资料为依据”的任务。
相反,如果任务主要是创意写作、闲聊、翻译或通用文本润色,RAG未必能够带来明显价值。对于要求执行计算、调用接口或操作业务系统的任务,通常还需要工具调用、工作流或智能体系统配合,而不能只依赖RAG。
七、从基础RAG到高级RAG
最基础的RAG通常只是“问题向量化—检索若干片段—交给模型回答”。高级系统则会增加更多步骤,例如:
- 根据对话历史改写问题;
- 把复杂问题拆分为多个子问题;
- 同时使用关键词检索和语义检索;
- 根据部门、时间、权限等元数据过滤结果;
- 对候选内容进行重排序;
- 检查答案中的每个结论是否受到引用内容支持;
- 检索结果不足时再次搜索;
- 针对表格、图片、音频和视频建立多模态索引。
这些改进的目标都是相同的:让系统找得更准、引用更可靠,并在缺乏依据时停止回答。相关综述通常将RAG的发展划分为基础RAG、高级RAG和模块化RAG等方向。(arXiv)
结语
RAG没有让大模型真正“记住”更多知识,而是为大模型增加了一套查找和使用外部资料的机制。
它把传统搜索系统擅长的“找到信息”,与大语言模型擅长的“理解和表达”组合起来,使AI能够使用私有知识、较新资料和可追溯来源回答问题。
但RAG并不是消除错误的万能方案。它的可靠性取决于资料质量、文档解析、文本分块、检索算法、提示词设计和系统评估。一个优秀的RAG应用,重点不只是让模型回答得更像人,而是让每个重要结论都能找到依据,并让系统知道什么时候不应该回答。
引用来源
- Patrick Lewis等,《Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks》,NeurIPS 2020。(arXiv)
- Meta AI,《Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks》。(Meta AI)
- Google Cloud,《什么是检索增强生成(RAG)?》。(Google Cloud)
- Microsoft Learn,《Retrieval Augmented Generation in Azure AI Search》。(微软学习)
- Amazon Web Services,《What is RAG?》。(Amazon Web Services, Inc.)
- 华为云,《RAG技术原理》。(华为云帮助中心)
- 华为云,《基本概念:RAG、Embedding模型、Rerank模型》。(华为云帮助中心)
- 华为云,《影响RAG效果的因素》。(华为云帮助中心)
- 华为云,《企业知识问答助手(RAG)智能体评估》。(华为云帮助中心)
- Penghao Zhao等,《Retrieval-Augmented Generation for AI-Generated Content: A Survey》。(arXiv)
- Shangyu Wu等,《Retrieval-Augmented Generation for Natural Language Processing: A Survey》。(arXiv)
- Datawhale,《All-in-RAG:RAG技术全栈指南》。(GitHub)



