第16章 RAG工作原理:文档→分块→向量→检索→生成

AI产品经理实战训练营 · 章节 16/44 · 60 学时

16.1 RAG的完整流程概览

RAG的工作流程分为两个阶段:索引阶段(离线,把文档处理成可检索的向量)和查询阶段(在线,用户提问时检索并生成答案)。

完整流程是5步:

  1. 文档处理:加载各种格式的文档(PDF、Word、Excel、网页、图片OCR)
  2. 文本分块:把长文档切成合适大小的片段(Chunk)
  3. 向量化:用Embedding模型把每个文本块转换成向量(一组数字)
  4. 检索:用户提问时,把问题也转成向量,在向量数据库中找到最相似的Top-K个文本块
  5. 生成:把检索到的文本块作为上下文,和用户问题一起发给大模型,生成最终答案

一句话理解:索引阶段是"把书拆开、做成索引卡片、按内容相似度排好";查询阶段是"用户提问→找到最相关的几张卡片→让大模型看着卡片回答"。

16.2 第一步:文档加载与解析

企业的文档格式千奇百怪:PDF、Word、Excel、PPT、图片、扫描件、网页、邮件、数据库……RAG的第一步是把这些文档都转换成纯文本。

常见文档格式的处理方式:

格式处理工具难点
PDF(文本型)PyPDF2、pdfplumber、Unstructured表格提取、多栏排版、页眉页脚
PDF(扫描件)OCR(PaddleOCR、Tesseract、阿里云OCR)识别准确率、表格还原、手写体
Word(.docx)python-docx、Unstructured样式提取、嵌套表格、图片
Excel(.xlsx)openpyxl、pandas多Sheet、合并单元格、公式
PPT(.pptx)python-pptx备注提取、图表文字
图片OCR + 多模态大模型流程图、架构图的语义理解
网页BeautifulSoup、Playwright、Trafilatura动态渲染、广告过滤、正文提取
数据库SQL查询 + 结构化转文本表关联、数据量控制

真实案例:PDF解析的坑
某制造企业的设备说明书是PDF格式,用PyPDF2提取文本后发现:
1. 多栏排版的内容被读成了"左栏第一行+右栏第一行+左栏第二行+右栏第二行",完全乱序
2. 表格中的数字和文字错位
3. 页眉页脚的"第X页 共Y页"被当成正文
4. 图片中的参数表完全丢失

解决方案:
1. 改用pdfplumber,它能更好地处理多栏和表格
2. 写规则过滤页眉页脚(固定位置、固定格式的文本)
3. 扫描件用OCR处理,关键参数表人工校对
4. 建立文档质量检查机制,解析后自动检查文本长度、乱码比例、表格完整性

教训:文档解析是RAG的地基,地基不牢���后面全白搭。产品经理必须重视文档解析质量,不能只看"能提取出文字"就行。

16.3 第二步:文本分块(Chunking)

文档解析后可能是几万字甚至几十万字的长文本,不能直接向量化(Embedding模型有输入长度限制,通常是512或8192个token),也不能直接检索(太长的文本会包含很多不相关信息,稀释相关性)。所以需要把长文本切成合适大小的片段,这就是分块(Chunking)。

分块是RAG中最影响效果的环节之一,分块太大或太小都会导致检索效果差。

常见分块策略:

策略原理优点缺点适用场景
固定长度分块按固定字符数(如500字)切分,可设置重叠(如50字)简单、快速、可控可能切断句子和段落,语义不完整通用场景、结构简单的文档
按段落分块按换行符、段落标记切分,过长的段落再二次切分语义相对完整段落长度差异大,有的太短有的太长文章、报告、说明书
按标题分块识别文档的标题层级(H1/H2/H3),按章节切分语义完整、结构清晰依赖文档结构,无标题的文档不适用有清晰结构的文档(手册、标准、报告)
递归分块先按大分隔符(段落)切分,太大再按小分隔符(句子)切分,递归直到符合长度要求兼顾语义完整和长度控制实现复杂通用场景(LangChain默认策略)
语义分块用Embedding计算相邻句子的相似度,相似度低的地方切分语义最完整计算量大、速度慢对质量要求高的场景
父-子分块检索时用小块(精准匹配),返回时用父块(完整上下文)兼顾检索精度和上下文完整性实现复杂、存储量大高质量知识库

分块大小的选择建议:
• 通用问答:256-512个token(约400-800字)
• 技术文档/说明书:512-1024个token(约800-1600字),需要保留完整的技术描述
• 法律合同:按条款分块,每个条款一个块,保留完整的法律语义
• 代码文档:按函数/类分块,保留完整的代码逻辑
• 重叠(Overlap):通常设为块大小的10%-20%,避免关键信息被切断

没有万能的分块大小,必须根据你的文档类型和用户提问习惯做A/B测试,找到最优值。

16.4 第三步:向量化(Embedding)

分块后,每个文本块还是文字,计算机无法直接计算"相似度"。需要用Embedding模型把文本转换成向量(一组浮点数,比如1536维的向量就是1536个数字)。

Embedding的核心特性:语义相似的文本,向量距离也近。比如"如何重置密码"和"忘记密码怎么办",文字不同但语义相似,它们的向量距离就很近;而"如何重置密码"和"今天天气怎么样"语义不相关,向量距离就很远。

常用的相似度计算方式:

  • 余弦相似度(Cosine Similarity):计算两个向量的夹角余弦值,范围[-1,1],越接近1越相似。最常用,不受向量长度影响。
  • 欧氏距离(Euclidean Distance):计算两个向量的直线距离,越小越相似。受向量长度影响。
  • 点积(Dot Product):计算两个向量的点积,越大越相似。向量归一化后等价于余弦相似度。

直观理解:向量空间
想象一个三维空间(实际是几百到几千维,但原理一样):
• "苹果"的向量坐标是(0.8, 0.6, 0.1)
• "香蕉"的向量坐标是(0.7, 0.5, 0.2)——和"苹果"距离近,因为都是水果
• "汽车"的向量坐标是(0.1, 0.2, 0.9)——和"苹果"距离远,因为语义不相关

用户问"什么水果好吃",这个问题的向量是(0.75, 0.55, 0.15),计算它和各个向量的距离,最近的是"苹果"和"香蕉",就把这两个文本块检索出来。

这就是向量检索的本质:把语义相似度转换成空间距离,用数学计算找到最相关的内容。

16.5 第四步:检索(Retrieval)

用户提问时,系统做以下事情:

  1. 把用户问题用同一个Embedding模型转成向量
  2. 在向量数据库中计算问题向量和所有文本块向量的相似度
  3. 找到最相似的Top-K个文本块(K通常是3-10)
  4. 把这些文本块按相关度排序,作为上下文传给大模型

检索的核心挑战:

  • 召回率(Recall):相关的文档有没有被检索到?如果正确答案在文档里但没被检索到,大模型再厉害也答不出来。
  • 精确率(Precision):检索到的文档是不是都相关?如果检索了一堆不相关的文档,会稀释上下文,干扰大模型生成。
  • 速度:百万级文档中检索Top-K,要在几百毫秒内完成,需要向量数据库做索引优化(如HNSW、IVF)。

提升检索效果的常用技巧:
1. 查询改写(Query Rewriting):用户问题可能太口语化、太简短,先用大模型改写成更适合检索的查询。比如用户问"咋弄",改写成"如何操作设备保养流程"。
2. 多路召回(Hybrid Search):同时用向量检索(语义匹配)和关键词检索(BM25,精确匹配),合并结果。向量检索能找到同义词相关的内容,关键词检索能精确匹配专有名词,两者互补。
3. 重排序(Rerank):先粗筛出Top-50,再用更精准的重排序模型(如Cohere Rerank、BGE Reranker)算出Top-10。重排序模型更精准但更慢,所以只对粗筛结果用。
4. 元数据过滤:检索时按文档类型、部门、时间等元数据过滤,缩小检索范围。比如只在"设备说明书"类文档中检索,不检索"行政通知"。
5. 假设性文档生成(HyDE):先让大模型根据问题生成一个"假设的答案",再用这个假设答案去检索。因为答案和文档的相似度通常比问题和文档的相似度更高。

16.6 第五步:生成(Generation)

检索到Top-K个文本块后,把它们和用户问题一起组装成Prompt,发给大模型生成答案。

典型的RAG生成Prompt模板:

你是一个专业的知识库问答助手。请根据以下参考资料回答用户的问题。

【参考资料】
{检索到的文本块,每个标注来源}

【用户问题】
{用户问题}

【回答要求】
1. 只根据参考资料回答,不要使用参考资料以外的知识
2. 如果参考资料中没有相关信息,请回答"根据现有资料无法回答这个问题"
3. 回答要准确、简洁、有条理
4. 关键信息标注来源,如"(来源:《设备手册》第15页)"
5. 不要编造参考资料中没有的信息

真实案例:Prompt设计的重要性
某企业上线RAG知识库后,发现答案经常"幻觉",明明文档里没有的信息,大模型也能编出来。分析原因发现:
1. Prompt中没有明确要求"只根据参考资料回答"
2. Prompt中没有"无法回答时怎么说"的兜底规则
3. 没有要求标注来源,大模型编造了也无法发现

优化Prompt后(加上上面的5条要求),幻觉率从35%降到5%以下。用户反馈"答案靠谱多了,能看到来源,用着放心"。

教训:RAG的效果不仅取决于检索质量,生成阶段的Prompt设计同样重要。明确的规则、兜底机制、来源标注,是减少幻觉的关键。

16.7 RAG效果评估指标

作为产品经理,你需要量化RAG系统的效果,不能只靠"感觉还行"。核心指标:

指标定义目标值测量方式
检索命中率正确答案所在的文本块是否在Top-K中>90%标注测试集,人工判断
答案准确率生成的答案是否正确、完整>85%人工评分或用大模型打分
幻觉率答案中包含参考资料以外信息的比例<5%人工检查或自动检测
可溯源率答案中的关键信息是否都有来源标注100%自动检查
拒答准确率无法回答时是否正确拒答,而不是编造>95%用无答案的问题测试
响应时间从用户提问到返回答案的时间<3秒系统监控
用户满意度用户对答案的"有用/没用"反馈>80%有用用户点赞/点踩

16.8 本章小结

RAG的工作原理是5步:文档加载→文本分块→向量化→检索→生成。每一步都影响最终效果:

  • 文档加载是地基,解析质量差后面全白搭
  • 分块是关键,太大太小都不行,要根据文档类型调优
  • 向量化是桥梁,Embedding模型的质量决定语义匹配的准确度
  • 检索是核心,召回率和精确率要平衡,多路召回+重排序是标配
  • 生成是门面,Prompt设计决定答案质量,明确规则+兜底+来源标注是减幻觉关键

作为AI产品经理,你不需要深入每个技术细节,但必须理解每一步的作用、常见问题、优化方向,才能在项目中做出正确的产品决策,和技术团队有效沟通。

下一章我们会讲向量数据库的选型,这是RAG系统的核心基础设施。

📝 本章练习(5题)

答案与解析请在 互动学习看板 中作答查看。

进入互动学习看板学习本章 →

← 上一章下一章 →

📚 AI产品经理实战训练营 课程目录(44 章)

  1. 第1章 AI产品经理是做什么的?和传统PM有什么区别?
  2. 第2章 2026年AI产品经理就业市场:哪些行业在招?薪资多少?
  3. 第3章 零经验转行AI产品经理的3条路径
  4. 第4章 AI产品全景图:从聊天机器人到Agent,一文搞懂
  5. 第5章 AI产品经理能力模型:你需要掌握哪些技能?
  6. 第6章 实战:拆解3个你每天在用的AI产品
  7. 第7章 大模型是什么?用大白话讲清楚
  8. 第8章 主流大模型对比:GPT-4o、Claude、DeepSeek、豆包、Kimi怎么选?
  9. 第9章 Prompt入门:写好提示词的5个原则
  10. 第10章 Prompt进阶:System Prompt、COT思维链、Few-shot示例
  11. 第11章 结构化输出:让大模型返回JSON、表格、代码
  12. 第12章 Prompt优化实战:从垃圾Prompt到高质量Prompt
  13. 第13章 大模型的"幻觉"问题:产品经理怎么应对?
  14. 第14章 实战:为一个智能客服设计完整Prompt体系
  15. 第15章 RAG是什么?为什么企业都在做知识库?
  16. 第16章 RAG工作原理:文档→分块→向量→检索→生成
  17. 第17章 向量数据库选型:Milvus、Pinecone、Chroma、pgvector怎么选?
  18. 第18章 Embedding模型选型:OpenAI、BGE、M3E、GTE对比
  19. 第19章 Reranker重排序:让检索结果更精准
  20. 第20章 查询改写与混合检索:提升召回率的实战技巧
  21. 第21章 知识库运营:文档治理、更新机制、效果监控
  22. 第22章 实战:从零搭建一个企业知识库(完整流程)
  23. 第23章 Agent是什么?和聊天机器人有什么区别?
  24. 第24章 Agent核心能力:感知、规划、工具调用、记忆
  25. 第25章 主流Agent框架与协议:Agent Harness、MCP、A2A全解析
  26. 第26章 工具调用(Function Calling)原理与实战
  27. 第27章 Agent记忆系统:短期记忆、长期记忆、向量记忆
  28. 第28章 多Agent协作:多个智能体怎么分工配合?
  29. 第29章 Agent评估体系:成功率、成本、延迟怎么监控?
  30. 第30章 实战:设计一个制造业生产异常处理Agent
  31. 第31章 AI产品需求分析:怎么识别真需求还是伪需求?
  32. 第32章 AI产品竞品分析:怎么调研和拆解竞品?
  33. 第33章 AI产品PRD撰写:技术可行性、数据需求、评估指标
  34. 第34章 AI产品原型设计:对话流、状态机、异常处理
  35. 第35章 AI产品数据指标体系:从DAU到模型准确率,全面监控
  36. 第36章 AI项目管理:从需求到上线的全流程管控
  37. 第37章 实战项目1:从零搭建制造业AI智能质检系统
  38. 第38章 实战项目2:从零搭建企业级AI知识库(RAG系统)
  39. 第39章 AI产品经理简历优化:让HR一眼看中你
  40. 第40章 项目经验包装:把普通项目讲成亮眼案例
  41. 第41章 AI产品经理面试常见问题:提前准备,从容应对
  42. 第42章 案例分析面试:用结构化思维征服面试官
  43. 第43章 薪资谈判:拿到你应得的报酬
  44. 第44章 入职前3个月:快速站稳脚跟,建立信任

🔥 热门文章

行业热门标准、政策解读与碳管理干货

标准指南
智能制造能力成熟度模型(CMMM)全面解读
👀 725 阅读
广东省
《广东省企业(单位)二氧化碳排放信息报告指南(2024年修订)》解读
👀 461 阅读
标准指南
GB/T 39567-2020《智能制造系统架构》标准解读
👀 428 阅读
行业动态
⚡ 2026年能源政策趋势盘点:电价改革、新能源与用能企业应对指南
👀 398 阅读
标准指南
JS/T 303—2026《公共机构碳排放核算指南》全文解读
👀 378 阅读
标准指南
ISO 14040/14044 生命周期评价(LCA)标准解读:企业碳足迹核算的国际基石
👀 369 阅读
标准指南
IPCC 国家温室气体清单指南解读:全球碳排放核算的方法论根基
👀 298 阅读
subsidy-report
【深圳】2026年企业技术改造与数字化转型扶持政策解读:单个项目最高资助1亿元
👀 232 阅读

免费获取政策补贴方案

专业顾问1对1,帮您匹配可申请的补贴资金

政策补贴 碳排放管理 能源管理 绿色工厂 数字化转型 MES系统

💬 免费咨询

留下联系方式,获取专属解决方案

📞 电话咨询
📞

📞 联系我们

👤 赵先生: 13189195857

👤 麦先生: 18665632270

👤 ⬆
📞 工业数字化免费咨询: 131-8919-5857 | 186-6563-2270 | 支持上门演示 & 30天免费试用

如何选择适合自己的双碳与工业互联网课程?

数晰智研社职业培训围绕双碳与工业互联网两大方向开设系统课程:四大双碳岗位课程(碳排放管理员 12 章、碳排放核查员 10 章、碳排放交易员 9 章、碳咨询顾问 10 章)覆盖从政策合规到交易实战的全链路,另设 IoT 物联平台、能源管理系统、碳排放管理系统、MES 制造执行系统等工业互联网实操课程。全部课程免费开放学习,增值服务按需选购。

零基础入门:从碳排放管理员开始

面向控排企业碳管理岗位,课程覆盖双碳政策、MRV 体系、监测计划、核算实操、报告编制、配合核查全流程,是零基础学员建立碳管理体系认知的首选路径。

岗位进阶:核查员 / 交易员 / 碳咨询顾问

碳排放核查员(10 章)面向第三方核查能力培养;碳排放交易员(9 章)面向碳资产岗位,覆盖配额管理、市场规则、交易策略、CCER 开发与抵销、碳金融与风险管理;碳咨询顾问(10 章)面向咨询与 ESG 岗位,覆盖咨询方法论、产品碳足迹、绿色金融、碳资产管理。

企业培训:定制课程 + 现场辅导

面向企业批量培训提供碳管理、MES、IoT 定制课程与现场辅导服务,帮助企业快速建立团队数字化与双碳能力。

学习路径建议

零基础学员建议按"碳排放管理员 → 碳排放核查员 → 碳排放交易员 → 碳咨询顾问"的顺序进阶;已从事能源或生产管理的人员可直接选择对应工业互联网实操课程(IoT 物联平台 / 能源管理系统 / 碳排放管理系统 / MES 制造执行系统),并配合课程章节练习与智能错题本巩固。

常见问题(FAQ)

课程收费吗?

全部课程免费开放学习。增值服务按需选购:职业培训专项包(年度)129 元/年,解锁 9 门课程全部权益与学习服务,一年内无限学习;企业批量培训 699 元/年,含定制课程与现场辅导。

学完能获得证书吗?

学完全部章节后,可申请结业认证与职业技能证书,用于岗位能力证明。

单课学习与专项包的区别?

单课可免费学习基础内容;职业培训专项包解锁全部课程权益与学习服务(章节练习、智能错题本、结业认证等),适合系统备考双碳岗位。

企业批量培训怎么合作?

企业批量培训 699 元/年,可定制碳管理、MES、IoT 课程并安排现场辅导,适合企业团队整体能力建设。