核心内容摘要
倾听璃月风语:甘雨的传说与守护的温柔
大模型系列教程--RAG检索增强检索增强生成Retrieval-Augmented Generation简称 RAG是解决大模型 “知识过时”“幻觉输出” 等问题的
关键技术通过将外部知识库与大模型生成能力结合让模型基于真实、最新的信息输出答案。
本教程将从 RAG 基本流程出发逐步讲解多轮对话优化、各环节改进策略帮助你掌握 RAG 应用的构建与优化方法。
RAG 基本流程从索引到生成的完整链路RAG 的核心逻辑是 “先检索、后生成”整体流程分为建立索引和检索生成两大阶段辅以 “保存与加载索引” 提升效率具体步骤如下一建立索引为知识库 “打造检索地图”建立索引是 RAG 的基础目的是将非结构化的文档转化为可快速检索的向量数据包含 4 个关键步骤文档解析将知识库中的原始文档如 PDF、Word、TXT 等加载并解析为纯文字形式。
例如将一份包含表格和图片的产品手册提取其中的文字内容表格内容需转化为结构化文本图片需通过 OCR 提取文字确保大模型能理解文档核心信息例如使用PyPDF2库解析 PDF 文件示例代码如下。
import PyPDF2 def parse_pdf(pdf_path): text with open(pdf_path, rb) as file: reader PyPDF
PdfReader(file) for page in reader.pages: text page.extract_text() return text文本分段对解析后的长文本进行 “切片” 处理。
若直接用整文档检索会导致匹配效率低、无关信息干扰多若切片过细又会丢失上下文。
常见的切片逻辑包括按固定字数分割如每 500 字一段、按章节 / 段落分割或结合语义连贯性分割避免切断完整逻辑以下是按固定字数分割的 Python 代码示例def split_text(text, chunk_size
: chunks [] start 0 while start len(text): end min(start chunk_size, len(text)) chunks.append(text[start:end]) start end return chunks文本向量化借助嵌入Embedding模型将每个文本片段和用户问题转化为高维向量如 768 维、1536 维。
向量的相似度越高代表文本语义越接近。
例如用Open AI的 Embedding 模型将 “如何申请年假” 和 “年假申请流程” 转化为向量后两者的余弦相似度会显著高于与 “薪资计算” 的相似度如下代码所示将文字转为向量将会打印一串整形数字向量import openai openai.api_key YOUR_API_KEY def get_embedding(text): response openai.Embedding.create( inputtext, modeltext - embedding - ada - 002 ) return response[data][0][embedding] get_embedding(如何申请年假)存储索引将向量化后的文本片段存储到向量数据库中形成可高效检索的 “向量索引”。
向量数据库能快速计算用户问题向量与库中所有片段向量的相似度实现毫秒级召回相关内容。
二检索生成基于真实信息输出答案当用户提出问题时RAG 通过 “检索相关片段→结合片段生成答案” 的流程确保输出的准确性具体步骤如下检索阶段先用 Embedding 模型将用户问题转化为向量向量数据库计算该向量与库中所有文本片段向量的相似度召回最相关的 Top N 个片段如 Top
Top 10例如用户问 “公司年假有多少天”检索系统会从向量数据库中召回包含 “年假天数”“年假政策” 的文本片段。
生成阶段将 “用户问题 召回的相关片段” 通过提示词模板组合输入大模型生成最终答案。
此时大模型的核心作用是 “
总结整合”而非依赖自身训练数据从根源减少幻觉。
典型提示词模板如下请严格根据以下参考信息回答用户问题不添加参考信息外的内容 {召回文本段1} {召回文本段2} ... 用户的问题是{question} 要求回答简洁、逻辑清晰直接回应问题核心。
三保存与加载索引提升复用效率首次建立索引后可将索引文件如向量数据库快照、Embedding 结果保存到本地或云端。
后续使用时直接加载索引无需重新解析、分段、向量化能将 RAG 响应速度提升
倍尤其适合知识库更新频率低的场景如固定政策文档、历史案例库。
RAG 多轮对话解决历史信息丢失问题在多轮对话中如 “我能申请年假吗”→“申请需要什么材料”若仅用用户当前问题检索会丢失前序对话信息导致检索结果偏差。
例如用户第二次问 “申请需要什么材料” 时系统可能无法判断是 “年假申请” 还是 “报销申请”。
多轮对话的核心解决方案问题改写通过大模型将 “当前问题 历史对话” 整合改写为包含完整意图的新查询New Query再用新查询执行检索。
具体流程如下收集历史对话记录如前 3 轮对话内容用提示词引导大模型改写问题角色你是问题改写专家需结合历史对话将用户当前问题改写为独立、完整的查询。
历史对话 用户我能申请年假吗 系统可以需满足入职满1年的条件。
用户当前问题申请需要什么材料 改写要求新查询需包含“年假申请”的核心意图无需冗余信息。
改写结果大模型输出新查询“年假申请需要准备什么材料”用新查询执行检索与生成确保结果准确关联 “年假” 场景。
RAG 各环节优化策略从基础到进阶RAG 的效果依赖每个环节的细节优化以下从 “文档准备→解析切片→向量化存储→检索召回→答案生成” 全链路提供可落地的改进方案。
一文档准备阶段对齐 “意图空间” 与 “知识空间”RAG 的本质是 “用知识库的知识满足用户意图”需先明确两个核心空间的关系再针对性优化空间类型定义优化策略意图空间用户提问背后的真实需求如 “查年假政策”“问报销流程”
建立用户意图收集机制如对话日志分析、用户反馈调研
邀请领域专家标注高频意图如 HR 场景的 “薪资”“考勤”“福利”。
知识空间知识库中可提供答案的知识点如段落、章节
补充 “未覆盖的意图空间”若用户常问 “远程办公政策” 但知识库无相关内容需新增文档
清理 “未利用的知识空间”删除与用户意图无关的内容如过期的旧政策。
关键原则优先通过 “补充知识库内容” 优化效果再考虑算法改进。
若知识库本身缺少用户需要的信息任何检索算法都无法提升准确性。
二文档解析与切片阶段平衡 “信息完整” 与 “噪声减少”解析和切片直接影响检索片段的质量
常见问题及解决方案如下
文档解析问题与改进问题类型改进策略场景示例格式不支持如 Keynote、CAD
开发专属解析器
批量转换为支持格式如 PDF、Markdown某企业用 Keynote 存储产品方案可先将 Keynote 导出为 PDF再用 PDF 解析器提取文字。
特殊内容无法提取表格、图片
表格转化为 Markdown 表格格式
图片用 OCR 提取文字 标注图片主题文档中 “员工薪资等级表”转化为 Markdown 表格后检索时能精准匹配 “薪资等级” 相关问题。
文本切片优化选择合适的切片方法不同切片方法适用于不同场景需根据文档类型和模型能力选择切片方法原理适用场景选择建议Token 切片按固定 Token 数分割如每 256 Token 一段模型上下文长度有限如≤1024 Token避免模型输入超限适合轻量级模型句子切片按句子边界分割保持句子完整大多数通用场景如政策文档、新闻新手入门首选平衡效率与上下文完整性句子窗口切片每个切片包含前后 N 个句子作为上下文长文档如论文、报告需关联上下文检索 “某结论的推导过程” 时补充前后文片段语义切片按语义相关性分割如 “章节内子主题”逻辑性强的文档如技术手册、教程避免切断 “问题 - 解决方案”“原因 - 结果” 等逻辑链Markdown 切片按 Markdown 语法分割如 #标题、## 子标题Markdown 格式文档如 GitHub 文档、笔记精准匹配 “某标题下的内容”提升检索精度优化案例某技术手册用 “语义切片” 后用户问 “如何调试 API 接口”检索系统能召回 “API 调试步骤”“常见错误解决” 两个关联片段而非零散的句子。
三切片向量化与存储阶段选择工具提升检索效率向量化和存储的核心是 “选对模型 选对数据库”直接影响检索速度和准确性。
Embedding 模型选择核心原则优先选择与大模型同生态、更新时间近的模型。
例如使用阿里云百炼大模型时搭配百炼 Embedding 模型语义匹配度更高效果差异新模型如 Qwen-Embedding-V2比旧模型如 BERT-Base的向量区分度提升 30% 以上能减少 “相似问题误判”如 “年假申请” 与 “病假申请”。
向量数据库选择根据应用规模选择合适的存储方案兼顾成本与性能存储类型特点适用场景推荐方案阿里云内存向量存储速度快、无运维成本但重启后数据丢失开发测试、临时验证百炼内置内存向量存储本地向量数据库数据持久化、需自行运维小规模应用日活≤100Milvus 本地版、Chroma云服务向量存储自动扩容、监控完善、按量付费生产环境高并发、大规模数据向量检索服务DashVector、PolarDB 向量功能云服务优势支持 “向量检索 标量过滤” 混合查询如 “检索‘年假’相关片段且发布时间≥2024 年”进一步提升检索精度。
四检索召回阶段精准定位相关片段检索召回的核心问题是 “如何从海量片段中找到最相关的内容”可从 “检索前” 和 “检索后” 两个时机优化
检索前优化查询还原真实意图通过改写、扩写问题让查询更精准常见策略如下策略操作方法示例问题改写补充模糊信息明确意图“附近有好吃的吗”→“推荐我公司附近评分≥
5 的餐厅”问题扩写增加相关维度扩大检索范围“张伟是哪个部门的”→“张伟的部门、联系方式、职责是什么”基于用户画像扩写结合用户身份补充上下文内容工程师问 “工作
注意事项”→“内容工程师的工作
注意事项”提取标签过滤从问题中提取标签缩小检索范围“内容工程师
注意事项”→标签{岗位内容工程师}检索时先过滤标签
检索后过滤噪声提升片段质量召回片段后通过 “重排序”“补充上下文” 进一步优化重排序ReRank用文本排序模型如阿里云百炼 ReRank 模型对召回的 Top 20 片段重新打分筛选出 Top
个最相关片段减少无关信息干扰滑动窗口检索召回某片段后补充其前后 N 个片段作为上下文。
例如检索到 “年假申请需提交申请表”补充前后的 “申请表下载路径”“提交截止时间”确保信息完整。
五生成答案阶段避免幻觉提升输出质量即使检索到相关片段仍可能出现 “模型捏造答案”“输出不符合要求” 等问题可从 3 个维度优化选择合适的大模型通用场景如政策问答选择平衡速度与准确性的模型如 Qwen
2.
B专业场景如法律、医疗选择专业领域微调模型如百炼法律大模型减少专业术语错误。
优化提示词模板明确 “限制条件” 和 “输出格式”例如请根据以下参考信息回答用户问题严格遵守规则 参考信息{召回片段1}{召回片段2} 用户问题{question} 规则
若参考信息中无答案直接回复“暂无相关信息”不编造内容
答案分点列出每点不超过20字
必须引用参考信息中的具体表述如“根据第3条XXX”。
调整模型参数温度Temperature设为
1-
3降低随机性避免幻觉最大生成长度根据片段长度设置如片段共 500 字最大生成长度设为 300 字避免输出过长或过短。
RAG 应用实战以 “企业 HR 问答系统” 为例结合上述流程与优化策略构建一个 “企业 HR 问答系统”具体步骤如下文档准备收集企业 HR 文档员工手册、年假政策、薪资计算规则等补充 “远程办公政策”“新员工入职流程” 等高频意图相关内容文档解析与切片将文档转为 Markdown 格式用 “Markdown 切片” 按 “# 章节→## 子标题” 分割每个切片包含 1 个完整子主题如 “年假申请条件”“年假天数计算”向量化与存储用百炼 Embedding 模型向量化切片存储到阿里云 DashVector生产环境检索优化检索前用户问 “我能休年假吗”结合用户画像入职时间 2 年改写为 “入职 2 年的员工能否申请年假”检索后召回 Top 10 片段用 ReRank 模型筛选 Top 3补充前后 1 个句子作为上下文生成答案用百炼大模型搭配优化后的提示词模板输出分点答案并引用手册条款。
五、
总结RAG 的
核心价值是 “让大模型基于真实信息回答”其效果优化需贯穿 “文档准备→检索→生成” 全链路。
新手入门时可先按 “句子切片 内存向量存储 基础提示词” 搭建最小原型再逐步通过 “问题改写、重排序、知识库补充” 提升效果。
在生产环境中优先选择云服务向量数据库和专业 Embedding 模型兼顾性能与运维效率。
如何学习AGI大模型作为一名热心肠的互联网老兵我决定把宝贵的AI知识分享给大家。
至于能学习到多少就看你的学习毅力和能力了 。
我已将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
因篇幅有限仅展示部分资料需要点击下方链接即可前往获取**
2025最新大模型学习路线一个明确的学习路线可以帮助新人了解从哪里开始按照什么顺序学习以及需要掌握哪些知识点。
大模型领域涉及的知识点非常广泛没有明确的学习路线可能会导致新人感到迷茫不知道应该专注于哪些内容。
我们把学习路线分成L1到L4四个阶段一步步带你从入门到进阶从理论到实战。
L1级别:AI大模型时代的华丽登场L1阶段我们会去了解大模型的基础知识以及大模型在各个行业的应用和分析学习理解大模型的核心原理
关键技术以及大模型应用场景通过理论原理结合多个项目实战从提示工程基础到提示工程进阶掌握Prompt提示工程。
L2级别AI大模型RAG应用开发工程L2阶段是我们的AI大模型RAG应用开发工程我们会去学习RAG检索增强生成包括Naive RAG、Advanced-RAG以及RAG性能评估还有GraphRAG在内的多个RAG热门项目的分析。
L3级别大模型Agent应用架构进阶实践L3阶段大模型Agent应用架构进阶实现我们会去学习LangChain、 LIamaIndex框架也会学习到AutoGPT、 MetaGPT等多Agent系统打造我们自己的Agent智能体同时还可以学习到包括Coze、Dify在内的可视化工具的使用。
L4级别大模型微调与私有化部署L4阶段大模型的微调和私有化部署我们会更加深入的探讨Transformer架构学习大模型的微调技术利用DeepSpeed、Lamam Factory等工具快速进行模型微调并通过Ollama、vLLM等推理部署框架实现模型的快速部署。
整个大模型学习路线L1主要是对大模型的理论基础、生态以及提示词他的一个学习掌握而L3 L4更多的是通过项目实战来掌握大模型的应用开发针对以上大模型的学习路线我们也整理了对应的学习视频教程和配套的学习资料。
大模型经典PDF书籍书籍和学习文档资料是学习大模型过程中必不可少的我们精选了一系列深入探讨大模型技术的书籍和学习文档它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。
书籍含电子版PDF
大模型视频教程对于很多自学或者没有基础的同学来说书籍这些纯文字类的学习教材会觉得比较晦涩难以理解因此我们提供了丰富的大模型视频教程以动态、形象的方式展示技术概念帮助你更快、更轻松地掌握核心知识。
大模型项目实战学以致用当你的理论知识积累到一定程度就需要通过项目实战在实际操作中检验和巩固你所学到的知识同时为你找工作和职业发展打下坚实的基础。
大模型面试题面试不仅是技术的较量更需要充分的准备。
在你已经掌握了大模型技术之后就需要开始准备面试我们将提供精心整理的大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。
因篇幅有限仅展示部分资料需要点击下方链接即可前往获取