RAG 知识体系概览
问题
什么是 RAG?RAG 的核心知识体系包含哪些内容?
答案
RAG(Retrieval-Augmented Generation,检索增强生成) 是将外部知识检索与大语言模型生成相结合的技术范式。它解决了 LLM 的核心局限:知识截止、幻觉、领域知识缺乏。
一、为什么需要 RAG
| 问题 | 说明 | RAG 如何解决 |
|---|---|---|
| 知识截止 | 模型只知道训练数据中的内容 | 实时检索最新文档 |
| 幻觉 | 模型可能生成看似正确但错误的内容 | 基于真实文档生成,可引用溯源 |
| 领域知识 | 通用模型缺乏企业内部知识 | 接入企业知识库 |
| 成本 | 微调成本高、周期长 | 无需训练,数据更新即时生效 |
二、RAG 核心架构
三、RAG 知识全景
| 模块 | 核心内容 | 文档 |
|---|---|---|
| RAG 基础 | 基本架构、Naive RAG 流程 | RAG 基础架构 |
| 文档处理 | 解析、分块、清洗 | 文档处理与分块策略 |
| Embedding | 文本向量化、模型选择 | Embedding 与向量化 |
| 向量检索 | 向量数据库、索引算法 | 向量检索与数据库 |
| 高级检索 | 混合搜索、Query 改写 | 高级检索策略 |
| 重排序 | Cross-Encoder、Reranker | 重排序与精排 |
| 生成与引用 | Prompt 模板、引用溯源 | 生成策略与引用溯源 |
| 评估 | 评估指标、评测框架 | RAG 评估与优化 |
四、RAG vs 微调 vs 长上下文
| 维度 | RAG | 微调 | 长上下文 |
|---|---|---|---|
| 数据更新 | 实时 | 需重新训练 | 每次传入 |
| 成本 | 低(检索基础设施) | 高(GPU 训练) | 高(Token 费用) |
| 知识量 | 无限(外部存储) | 有限(模型容量) | 受窗口限制 |
| 准确性 | 可引用溯源 | 可能幻觉 | 可能 Lost in the Middle |
| 适用场景 | 知识库问答、客服 | 风格/格式固化 | 少量文档分析 |
最佳实践
RAG 和微调可以组合使用:先微调让模型适应领域风格,再通过 RAG 注入实时知识。