
面试官你们项目用了 RAG能说说完整的流程吗越详细越好。我先把文档切块然后向量化存进向量数据库用户提问时检索出相关内容把内容和问题一起送给大模型生成答案。面试官好那文档进来之后有没有做预处理直接切块的我有用 PDF 解析工具提取文本然后按 512 个 token 切块。面试官PyPDF2 提取出来的表格是什么格式里面的行列关系还在吗我表格会变成一段文字中间用空格分隔。面试官那这段文字向量化之后检索效果怎么样用户问”A产品价格是多少”能准确找到表格里那一行吗我……应该还好吧。面试官你觉得整个流程里哪个环节最容易出问题工程时间花得最多我我觉得是生成环节大模型有幻觉。面试官其实不是。你们真正花时间最多的那个环节通常既不是生成也不是向量化。今天把这道题彻底讲清楚。简要回答RAG 的完整流程分两个阶段共 5 个核心环节。索引阶段一次性提前完成文档预处理、文本分块、向量化建库。查询阶段每次用户提问时实时执行查询处理和检索、生成。竞品几乎所有的流程介绍都只画一条干净的箭头。现实里每个环节都有自己的失败模式。真正区分”用过 RAG”和”背过 RAG”的是你能不能说出哪个环节最容易出问题以及出问题的时候你是怎么发现和修的。结论先放影响效果最大的环节是检索工程时间花得最多的环节是文档预处理。环节一文档预处理最被低估的环节文档上传进来不能直接就用。真实的业务文档通常是 PDF、Word 或 HTML里面夹着表格、图片、页眉页脚、水印甚至有些是扫描件。把文档比作一份带格式的外卖菜单你要先把菜单上的有效信息抄到一张白纸上才能开始处理。预处理就是这个”抄写”的过程不同的文档类型抄写难度差很多。纯文本和 Markdown 最简单几乎不需要额外处理。问题出在 PDF 上。PDF 分两种可编辑 PDF 和扫描 PDF。可编辑 PDF 里文字是可以选中的可以用 PyMuPDF 或 pdfplumber 提取。但提取出来的文本不等于”正常文本”格式信息会丢失。一个两列的表格提取出来可能变成两行文字混在一起列与列之间的关系完全消失了。用户问”A 产品的价格是多少”表格里确实有这一行但提取出来的文本里价格和产品名已经错位向量化之后检索出来是乱的。扫描 PDF 里没有可选中的文字需要先做 OCR光学字符识别。OCR 在中文字体上的识别准确率通常在 95% 左右但 5% 的错误率在一个 10000 字的文档里意味着约 500 个错别字这会直接拉低 Embedding 的质量。常见预处理失败模式表格被展平成无结构文字列关系丢失、OCR 扫描件错别字、页眉页脚保留进来干扰语义、图片内容完全丢失。这里有一个反直觉的结论实际项目里花时间最多的通常是预处理而不是向量化或模型调优。我们做某个企业知识库项目时处理文档预处理问题花了两周向量化和检索调通只花了两天。面试里主动说出这一点是区分”真做过”和”背过流程”的关键。环节二文本分块和向量化建库文档清洗完之后进入分块环节。这一步决定了知识库里每条”记录”包含多少信息。把分块想象成把一本字典拆成一张张词条卡片放进抽屉。卡片太小一张卡片只写了半句话没有上下文卡片太大一张卡片里塞了五六个主题检索时很难精准匹配。分块之后是向量化Embedding。每一块文本通过 Embedding 模型转成一个向量存进向量数据库。向量数据库会为这些向量建立 HNSW 索引一种层级图结构让后续的近似最近邻搜索能快速完成。这个环节相对稳定只要 Embedding 模型选得合理中文场景优先选 BGE 系列不容易出大问题。有一点需要记住如果一个完整的知识点被分块切断成两块单独召回其中一块就得不到完整答案。这是分块策略调优期间最频繁出现的召回问题来源和 Embedding 模型本身无关。环节三查询处理和检索效果天花板在这里用户提问来了系统要做的第一件事不是直接去检索而是处理用户的问题。用户的原始问题往往口语化、不完整甚至带着代词”刚才那个功能怎么用”。更深层的问题是用户的问法是疑问句知识库里的文档是陈述句这两种文体在向量空间里的坐标并不完全重合直接拿原始问题去检索效果通常不够好。查询的完整处理链路用户问题 → 可选Query 改写 / 关键词提取→ 转成向量 → 向量库里找 Top-K 最相似的块 → 过滤和排序 → 返回结果。这一步是整个 RAG 系统效果的天花板。不管大模型有多强检索不到正确的内容生成就没有原材料可用。实际项目中75% 的回答质量问题都可以追溯到检索环节而不是生成环节。一个典型的检索失败场景用户问”骨折住院能报销多少”知识库里写的是”因意外伤害导致骨骼骨折住院治疗费用可按 70% 比例报销”。语义相近但具体词汇不同如果用纯向量检索相似度可能不够高这一段排在 Top-10 之外召回失败。另一个场景用户问”A 产品和 B 产品的价格和保障范围分别是什么”。这个问题对应至少 4 个不同的文档片段单次检索只能找到其中一部分答案天然不完整。环节四生成检索回来的 Top-K 块被组装成 Prompt送给大模型生成最终答案。Prompt 的基本结构通常是系统指令 检索到的文档块 用户问题。这一步有两个容易被忽略的细节。第一Prompt 里的约束指令要明确。如果只说”参考以下资料”模型有时候会把资料和训练数据里的知识混合使用产生”半幻觉”答案里一部分来自文档一部分是编造的。改成”只能基于以下资料资料里没有的不要回答”效果会明显好很多。第二文档的排列顺序影响生成质量。研究表明LLM 对 Prompt 里中间位置的内容注意力最低这个现象叫 Lost in the Middle。如果把相关度最高的块放在 Prompt 结尾而不是中间生成质量会更高。这是很多项目没有做的细节优化。生成环节的幻觉问题是真实存在的但它不是 RAG 里最难解决的问题。80% 的生成幻觉来源于检索失败而不是模型本身所以优先优化检索比反复调 Prompt 更有效率。对比总结面试总结回答”说说 RAG 的完整流程”常见的失分点是只画了一条干净的箭头没有提任何失败模式。面试官想知道的不只是你知道这条链路而是你是否真的做过、踩过坑。回答可以按三个层次来讲第一步20 秒先说两个阶段五个环节不要上来就细说每一步。”RAG 分两个阶段索引阶段三步预处理、分块、向量化建库查询阶段两步检索和生成。”第二步60 秒展开每个环节重点说失败模式不要平铺直叙。”每个环节都有自己的坑但影响效果最大的是检索不是生成。75% 的回答质量问题来自检索召回不准而不是大模型幻觉。”然后举一个具体的 badcase比如”用户问骨折文档写的是骨骼损伤向量相似度不够高召回失败”。第三步20 秒主动说工程时间分布给出一个反直觉的结论。”实际项目里花时间最多的不是向量化也不是模型调优而是文档预处理。原始文档格式复杂表格和扫描件的处理往往花掉三分之一的工程时间。”如果面试官追问”你们项目哪个环节遇到的问题最多”回答要点是检索环节。给出具体指标比如初始版本召回命中率只有 68%通过分块策略优化和 Query 改写提升到 85%这样的答案比泛泛说”检索不准”有说服力得多。如果面试官追问”生成环节的幻觉怎么解决”回答要点是幻觉大部分来自检索失败优先提升检索质量其次是 Prompt 里加明确约束强制模型只参考检索内容不要用训练数据里的知识补充最后考虑的才是模型本身。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】