你还记得多年前,你救过的那个RAG吗

0 阅读3分钟

RAG(检索增强生成)是一种让大语言模型在回答问题时,能够先从外部知识库中检索相关信息,再基于这些信息生成答案的技术架构。

简单来说,RAG (Retrieval-Augmented Generation,检索增强生成)是一种让大语言模型(LLM)通过“翻书”来回答问题的技术。

如果把大模型比作一个非常有才华但记忆力有限的”学霸”,RAG 就是给这位学霸配了一个实时更新的图书馆。当学霸遇到不确定的问题时,他会先去图书馆查阅相关资料,再结合自己的知识给出一个准确的答案。

1. 为什么需要 RAG?

幻觉问题

:模型会一本正经地胡说八道。

时效性滞后

:模型的知识停留在训练数据截止日期(比如 2024 年或更早),不知道昨天发生的新闻。

缺乏私域知识

:模型没读过你公司的内部文档、私人笔记或特定行业的手册。

可溯源

:答案可以标注来源文档,方便核查,增强可信度。

2. RAG 的工作流程

RAG 的核心流程可以拆分为三个主要阶段:

第一阶段:数据准备(Indexing)

切片

:将长文档切成一小块一小块(Chunks)。

向量化

:将这些文字转化为机器能理解的数字向量(Embeddings)。

存储

:把这些向量存进“向量数据库”里。

第二阶段:检索(Retrieval)

当用户提问时,系统会把问题也转化为向量,然后在数据库里寻找内容最相关(Top-K )的几个片段。

第三阶段:生成(Generation)

将这些文本块与原始问题拼接成完整的 Prompt,最后送入 LLM 生成答案

3. RAG vs. 微调(Fine-tuning)

这是很多人容易混淆的点。我们可以用一个形象的比喻:

特性RAG(检索增强)Fine-tuning(微调)
类比开卷考试(看资料回答)闭卷考试(把知识背进脑子里)
知识更新极快(直接更新数据库即可)慢且贵(需要重新训练)
准确性高(有据可查,减少幻觉)中(容易受模型记忆偏差影响)
擅长领域处理事实性、动态更新的信息学习特定的语气、格式或垂直领域逻辑

4. RAG 的优势

低成本

:不需要动辄花费数万美金去训练模型。

透明度

:可以提供“引文”,告诉你答案是从哪个文档的哪一页来的。

安全性

:你可以轻松控制哪些数据可以被检索,保护隐私。

5. 进阶趋势

现在的 RAG 已经进化到了Advanced RAG阶段,引入了:

查询改写

:如果用户问得模糊,系统先帮用户优化问题。

重排序 (Rerank)

:搜出一堆资料后,用另一个模型精挑细选最精准的。

混合搜索

:结合关键词搜索和语义搜索,确保万无一失。

常见应用场景:企业内部知识库问答、客服机器人、代码文档助手、学术文献检索等。