RAG检索增强生成的工作原理

RAG(Retrieval-Augmented Generation,检索增强生成)的核心思想,是改变基座模型“单凭参数记忆作答”的方式:回答之前,先从外部知识库检索相关资料,再把检索结果与问题一起交给模型,让生成过程建立在可查证的上下文之上。换句话说,RAG 把知识存储从模型内部挪到了模型外部,模型负责的是理解、推理与表达,而不是记住所有事实。

RAG检索增强生成的工作原理

工作流程大致分三段。离线阶段,系统把文档库切分成合适粒度的片段,建立索引供后续检索;这一步的质量直接决定检索上限,片段切得过碎容易丢失上下文,切得过大又可能带入大量无关信息。在线阶段,用户提问后,系统将问题转换为与文档一致的检索表示,在索引中召回最相关的一批片段,再按相关度排序;随后进入生成阶段,模型在提示中同时看到原问题和检索片段,并被要求主要依据这些片段作答。这样既保留了基座模型的通用能力,又让回答有了具体出处,对减少“胡说八道”特别有效。

相比微调,RAG 的明显优势是知识可以随时更新:文档库变了,检索结果随之变化,不需要重新训练模型,也不容易把新知识“学坏”。但它不是没有代价。检索质量决定了答案质量的上限,如果召回片段本来就不相关,模型再强也无济于事;同时,生成阶段还要处理好片段之间的矛盾、冗余和对不上的情况,这也是工程上最容易被低估的部分。

实践中还需要给系统留出“承认不知道”的出口。当检索结果不足以支撑回答时,模型应当明确表示不确定,而不是硬凑一个答案;这条拒答逻辑与检索链路本身同样重要。RAG 的落地质量,本质上取决于文档组织、检索质量、生成约束三者的协同,而不是单纯换一个更大的模型。

参与讨论

0 条评论

延伸阅读