本文深入探讨了RAG系统中存在的“不知知”问题即无法有效将知识“喂”给LLM。文章从老子与王阳明的哲学思想出发阐述了检索质量的重要性。接着详细解析了重排序、分块重叠和余弦相似度三个关键机制并指出了embedding模型选择、混合检索和评估指标等RAG检索环节的基础和进阶问题。文章强调检索链条的强度取决于最弱的一环任何一环的失效都会影响最终结果。RAG 系统最大的病就是不知知。什么是不知知这个概念很多名人都有过解释。老子说“知不知尚矣不知知病也。” 意思是“知道自己不知道是高明的不知道却以为自己知道是病”。王阳明《传习录》中也说过“未有知而不行者知而不行只是未知。”要表达的是没有“知道了却不去做这回事”你说你知道但没做到那就是还没真知道。引申到 RAG 系统中就是如果只是能检索到相关文档算不得本事能把正确的知识“喂”给 LLM那才是真厉害。找到了一堆文档但是不能帮 LLM 输出正确的答案那就是没找到。如果此时还以为找到了那就是病得治。如何治想象一个常见的场景我们搭好了 RAG 管道向量数据库里写满了文档选了合适的 embedding 模型用最牛的 LLM。然后查询一跑返回的答案驴唇不对马嘴。问题出在哪里我们尽可能地优化了所有环节唯独没验证送进 LLM 嘴里的东西质量怎么样。做过开发的都明白一个道理想得到正确的输出就必须有正确的输入。棉花堆里是提炼不出黄金的。所以为了治病最重要的是理解三个机制重排序、分块重叠、余弦相似度。重排序顾名思义这个步骤就是对找到的结果再次进行排序把最相关的知识给 LLM。检索过程一般分两阶段。第一阶段是初始检索使用双编码器 Bi-encoder 从百万级文档中快速找出 Top-K 候选。这个阶段的优势是速度快劣势是精度偏低容易漏掉细微的语义关联。第二阶段是重排序使用交叉编码器 Cross-encoder 对 Top-K 候选进行二次筛选一对一重新打分挑出 Top-N 送进 LLM。这个阶段的优势是精度高劣势是速度慢。所以不适合做全库查询。总结操作路径初始检索拿回 Top-50 候选 → 交叉编码器一对一重新打分 → 按新分数排序 → 取 Top-5 送进 LLM。另外交叉编码器的推理成本比双编码器高得多。HuggingFace 给出的例子是 10 个查询 × 500 个候选文档Cross-encoder 需要 5000 次计算Bi-encoder 只需 510 次。具体倍数随候选数量变化在一些低延迟场景下要算清楚再确定如何使用。分块重叠假设有一句话“该方案的核心优势在于它能在不增加延迟的前提下将准确率提升 15%。”你设了 chunk size 500 tokens切分时刚好落在“它能在不增加延迟的”和“前提下将准确率提升 15%”之间。前半截块讲的是“不增加延迟”后半截块讲的是“准确率提升 15%”。两个块各自语义都不完整用户查“哪个方案能提升准确率又不加延迟”结果是两个块都匹配不上。答案明明在数据库里但检索不出来。分块重叠就是在相邻块之间留一段缓冲带让边界处的内容同时出现在两个块里。通常 10-20% 的重叠率就够。chunk size 500 tokens 的话重叠 50-100 tokens。结构化文本代码、表格可以少一些叙述性长文本需要多一些。但重叠只能解决边界信息丢失问题解决不了切分粒度本身选错的问题。chunk 太大噪声多chunk 太小语义碎片化。而且重叠会让向量数据库膨胀检索计算量也跟着涨不是越多越好。更根本的思路是语义切分Semantic Chunking。不按固定长度切而是按语义边界切。段落讲完一个完整意思就是一个 chunk天然不会把语义劈成两半。固定长度 重叠是最基础的方案能用但不是唯一方案。余弦相似度余弦相似度给了高分不代表内容真的相关。余弦相似度做的事情很简单把查询和文档块各自变成一个高维向量然后算两个向量之间夹角的余弦值。夹角越小余弦值越接近 1系统就判定“越相关”。它只看方向不看长度所以一句话和一整段话只要语义方向一致分数可以一样高。cosine_similarity cos(θ) (A · B) / (||A|| × ||B||) A 查询的 embedding 向量 B 文档块的 embedding 向量 θ 两个向量之间的夹角 结果范围[-1, 1]越接近 1 越相关听起来很优雅但问题在上游这些向量是谁生成的是 embedding 模型。如果你用一个通用 embedding 模型去处理高度专业的医学文献模型根本不理解那些术语之间的细微差异编码出来的向量方向就是错的。余弦相似度在错误的向量上算得再精确也是精确的垃圾。还有一个更隐蔽的问题余弦相似度是对称的sim(A, B) sim(B, A)。它分不清“谁有用、谁没用”。举个实际场景你的知识库里同时存了这两段块 A“RAG 系统的核心挑战是什么”一篇 FAQ 里的提问块 B“RAG 系统通过检索外部知识来增强生成质量。”一篇技术文档里的描述用户问“RAG 系统有什么问题”余弦相似度可能给 A 和 B 打出差不多的分因为它们在向量空间里方向接近都跟“RAG 系统”和“问题/挑战”沾边。但 A 只是在重复问题B 才是有用的上下文。余弦相似度分不出哪个是真正能帮 LLM 回答问题的内容。这就是为什么重排序是必要的补偿机制交叉编码器把查询和文档块拼在一起看能分辨“谁在问、谁在答”。RAG 检索质量的完整图景回过头看这三个部分是一条链上的三个杠杆点文档 → 分块带重叠→ Embedding → 向量数据库 ↓ 查询 → Embedding → 余弦相似度匹配 → Top-K 候选 → 重排序 → Top-N 精选 → LLM 生成链条的强度取决于最弱的那一环。分块切烂了后面的 embedding 和检索全在处理残次品。Embedding 模型不懂专业领域的专业名词余弦相似度算出来的“相关性”就是幻觉。检索结果没重排序LLM 就在一堆噪声里找答案。关键杠杆点 1. 分块策略粒度 重叠→ 决定信息完整性 2. Embedding 模型质量 → 决定语义表示精度 3. 重排序模型 → 决定最终上下文质量 任何一环崩了后面全白搭。01什么是AI大模型应用开发工程师如果说AI大模型是蕴藏着巨大能量的“后台超级能力”那么AI大模型应用开发工程师就是将这种能量转化为实用工具的执行者。AI大模型应用开发工程师是基于AI大模型设计开发落地业务的应用工程师。这个职业的核心价值在于打破技术与用户之间的壁垒把普通人难以理解的算法逻辑、模型参数转化为人人都能轻松操作的产品形态。无论是日常写作时用到的AI文案生成器、修图软件里的智能美化功能还是办公场景中的自动记账工具、会议记录用的语音转文字APP这些看似简单的应用背后都是应用开发工程师在默默搭建技术与需求之间的桥梁。他们不追求创造全新的大模型而是专注于让已有的大模型“听懂”业务需求“学会”解决具体问题最终形成可落地、可使用的产品。CSDN粉丝独家福利给大家整理了一份AI大模型全套学习资料这份完整版的 AI 大模型学习资料已经上传CSDN朋友们如果需要可以扫描下方二维码点击下方CSDN官方认证链接免费领取【保证100%免费】02AI大模型应用开发工程师的核心职责需求分析与拆解是工作的起点也是确保开发不偏离方向的关键。应用开发工程师需要直接对接业务方深入理解其核心诉求——不仅要明确“要做什么”更要厘清“为什么要做”以及“做到什么程度算合格”。在此基础上他们会将模糊的业务需求拆解为具体的技术任务明确每个环节的执行标准并评估技术实现的可行性同时定义清晰的核心指标为后续开发、测试提供依据。这一步就像建筑前的图纸设计若出现偏差后续所有工作都可能白费。技术选型与适配是衔接需求与开发的核心环节。工程师需要根据业务场景的特点选择合适的基础大模型、开发框架和工具——不同的业务对模型的响应速度、精度、成本要求不同选型的合理性直接影响最终产品的表现。同时他们还要对行业相关数据进行预处理通过提示词工程优化模型输出或在必要时进行轻量化微调让基础模型更好地适配具体业务。此外设计合理的上下文管理规则确保模型理解连贯需求建立敏感信息过滤机制保障数据安全也是这一环节的重要内容。应用开发与对接则是将方案转化为产品的实操阶段。工程师会利用选定的开发框架构建应用的核心功能同时联动各类外部系统——比如将AI模型与企业现有的客户管理系统、数据存储系统打通确保数据流转顺畅。在这一过程中他们还需要配合设计团队打磨前端交互界面让技术功能以简洁易懂的方式呈现给用户实现从技术方案到产品形态的转化。测试与优化是保障产品质量的关键步骤。工程师会开展全面的功能测试找出并修复开发过程中出现的漏洞同时针对模型的响应速度、稳定性等性能指标进行优化。安全合规性也是测试的重点需要确保应用符合数据保护、隐私安全等相关规定。此外他们还会收集用户反馈通过调整模型参数、优化提示词等方式持续提升产品体验让应用更贴合用户实际使用需求。部署运维与迭代则贯穿产品的整个生命周期。工程师会通过云服务器或私有服务器将应用部署上线并实时监控运行状态及时处理突发故障确保应用稳定运行。随着业务需求的变化他们还需要对应用功能进行迭代更新同时编写完善的开发文档和使用手册为后续的维护和交接提供支持。03薪资情况与职业价值市场对这一职业的高度认可直接体现在薪资待遇上。据猎聘最新在招岗位数据显示AI大模型应用开发工程师的月薪最高可达60k。在AI技术加速落地的当下这种“技术业务”的复合型能力尤为稀缺让该职业成为当下极具吸引力的就业选择。AI大模型应用开发工程师是AI技术落地的关键桥梁。他们用专业能力将抽象的技术转化为具体的产品让大模型的价值真正渗透到各行各业。随着AI场景化应用的不断深化这一职业的重要性将更加凸显也必将吸引更多人才投身其中推动AI技术更好地服务于社会发展。CSDN粉丝独家福利给大家整理了一份AI大模型全套学习资料这份完整版的 AI 大模型学习资料已经上传CSDN朋友们如果需要可以扫描下方二维码点击下方CSDN官方认证链接免费领取【保证100%免费】
RAG系统为何总出错?三大核心机制,让你的检索能力“知不知”!
发布时间:2026/6/4 21:16:10
本文深入探讨了RAG系统中存在的“不知知”问题即无法有效将知识“喂”给LLM。文章从老子与王阳明的哲学思想出发阐述了检索质量的重要性。接着详细解析了重排序、分块重叠和余弦相似度三个关键机制并指出了embedding模型选择、混合检索和评估指标等RAG检索环节的基础和进阶问题。文章强调检索链条的强度取决于最弱的一环任何一环的失效都会影响最终结果。RAG 系统最大的病就是不知知。什么是不知知这个概念很多名人都有过解释。老子说“知不知尚矣不知知病也。” 意思是“知道自己不知道是高明的不知道却以为自己知道是病”。王阳明《传习录》中也说过“未有知而不行者知而不行只是未知。”要表达的是没有“知道了却不去做这回事”你说你知道但没做到那就是还没真知道。引申到 RAG 系统中就是如果只是能检索到相关文档算不得本事能把正确的知识“喂”给 LLM那才是真厉害。找到了一堆文档但是不能帮 LLM 输出正确的答案那就是没找到。如果此时还以为找到了那就是病得治。如何治想象一个常见的场景我们搭好了 RAG 管道向量数据库里写满了文档选了合适的 embedding 模型用最牛的 LLM。然后查询一跑返回的答案驴唇不对马嘴。问题出在哪里我们尽可能地优化了所有环节唯独没验证送进 LLM 嘴里的东西质量怎么样。做过开发的都明白一个道理想得到正确的输出就必须有正确的输入。棉花堆里是提炼不出黄金的。所以为了治病最重要的是理解三个机制重排序、分块重叠、余弦相似度。重排序顾名思义这个步骤就是对找到的结果再次进行排序把最相关的知识给 LLM。检索过程一般分两阶段。第一阶段是初始检索使用双编码器 Bi-encoder 从百万级文档中快速找出 Top-K 候选。这个阶段的优势是速度快劣势是精度偏低容易漏掉细微的语义关联。第二阶段是重排序使用交叉编码器 Cross-encoder 对 Top-K 候选进行二次筛选一对一重新打分挑出 Top-N 送进 LLM。这个阶段的优势是精度高劣势是速度慢。所以不适合做全库查询。总结操作路径初始检索拿回 Top-50 候选 → 交叉编码器一对一重新打分 → 按新分数排序 → 取 Top-5 送进 LLM。另外交叉编码器的推理成本比双编码器高得多。HuggingFace 给出的例子是 10 个查询 × 500 个候选文档Cross-encoder 需要 5000 次计算Bi-encoder 只需 510 次。具体倍数随候选数量变化在一些低延迟场景下要算清楚再确定如何使用。分块重叠假设有一句话“该方案的核心优势在于它能在不增加延迟的前提下将准确率提升 15%。”你设了 chunk size 500 tokens切分时刚好落在“它能在不增加延迟的”和“前提下将准确率提升 15%”之间。前半截块讲的是“不增加延迟”后半截块讲的是“准确率提升 15%”。两个块各自语义都不完整用户查“哪个方案能提升准确率又不加延迟”结果是两个块都匹配不上。答案明明在数据库里但检索不出来。分块重叠就是在相邻块之间留一段缓冲带让边界处的内容同时出现在两个块里。通常 10-20% 的重叠率就够。chunk size 500 tokens 的话重叠 50-100 tokens。结构化文本代码、表格可以少一些叙述性长文本需要多一些。但重叠只能解决边界信息丢失问题解决不了切分粒度本身选错的问题。chunk 太大噪声多chunk 太小语义碎片化。而且重叠会让向量数据库膨胀检索计算量也跟着涨不是越多越好。更根本的思路是语义切分Semantic Chunking。不按固定长度切而是按语义边界切。段落讲完一个完整意思就是一个 chunk天然不会把语义劈成两半。固定长度 重叠是最基础的方案能用但不是唯一方案。余弦相似度余弦相似度给了高分不代表内容真的相关。余弦相似度做的事情很简单把查询和文档块各自变成一个高维向量然后算两个向量之间夹角的余弦值。夹角越小余弦值越接近 1系统就判定“越相关”。它只看方向不看长度所以一句话和一整段话只要语义方向一致分数可以一样高。cosine_similarity cos(θ) (A · B) / (||A|| × ||B||) A 查询的 embedding 向量 B 文档块的 embedding 向量 θ 两个向量之间的夹角 结果范围[-1, 1]越接近 1 越相关听起来很优雅但问题在上游这些向量是谁生成的是 embedding 模型。如果你用一个通用 embedding 模型去处理高度专业的医学文献模型根本不理解那些术语之间的细微差异编码出来的向量方向就是错的。余弦相似度在错误的向量上算得再精确也是精确的垃圾。还有一个更隐蔽的问题余弦相似度是对称的sim(A, B) sim(B, A)。它分不清“谁有用、谁没用”。举个实际场景你的知识库里同时存了这两段块 A“RAG 系统的核心挑战是什么”一篇 FAQ 里的提问块 B“RAG 系统通过检索外部知识来增强生成质量。”一篇技术文档里的描述用户问“RAG 系统有什么问题”余弦相似度可能给 A 和 B 打出差不多的分因为它们在向量空间里方向接近都跟“RAG 系统”和“问题/挑战”沾边。但 A 只是在重复问题B 才是有用的上下文。余弦相似度分不出哪个是真正能帮 LLM 回答问题的内容。这就是为什么重排序是必要的补偿机制交叉编码器把查询和文档块拼在一起看能分辨“谁在问、谁在答”。RAG 检索质量的完整图景回过头看这三个部分是一条链上的三个杠杆点文档 → 分块带重叠→ Embedding → 向量数据库 ↓ 查询 → Embedding → 余弦相似度匹配 → Top-K 候选 → 重排序 → Top-N 精选 → LLM 生成链条的强度取决于最弱的那一环。分块切烂了后面的 embedding 和检索全在处理残次品。Embedding 模型不懂专业领域的专业名词余弦相似度算出来的“相关性”就是幻觉。检索结果没重排序LLM 就在一堆噪声里找答案。关键杠杆点 1. 分块策略粒度 重叠→ 决定信息完整性 2. Embedding 模型质量 → 决定语义表示精度 3. 重排序模型 → 决定最终上下文质量 任何一环崩了后面全白搭。01什么是AI大模型应用开发工程师如果说AI大模型是蕴藏着巨大能量的“后台超级能力”那么AI大模型应用开发工程师就是将这种能量转化为实用工具的执行者。AI大模型应用开发工程师是基于AI大模型设计开发落地业务的应用工程师。这个职业的核心价值在于打破技术与用户之间的壁垒把普通人难以理解的算法逻辑、模型参数转化为人人都能轻松操作的产品形态。无论是日常写作时用到的AI文案生成器、修图软件里的智能美化功能还是办公场景中的自动记账工具、会议记录用的语音转文字APP这些看似简单的应用背后都是应用开发工程师在默默搭建技术与需求之间的桥梁。他们不追求创造全新的大模型而是专注于让已有的大模型“听懂”业务需求“学会”解决具体问题最终形成可落地、可使用的产品。CSDN粉丝独家福利给大家整理了一份AI大模型全套学习资料这份完整版的 AI 大模型学习资料已经上传CSDN朋友们如果需要可以扫描下方二维码点击下方CSDN官方认证链接免费领取【保证100%免费】02AI大模型应用开发工程师的核心职责需求分析与拆解是工作的起点也是确保开发不偏离方向的关键。应用开发工程师需要直接对接业务方深入理解其核心诉求——不仅要明确“要做什么”更要厘清“为什么要做”以及“做到什么程度算合格”。在此基础上他们会将模糊的业务需求拆解为具体的技术任务明确每个环节的执行标准并评估技术实现的可行性同时定义清晰的核心指标为后续开发、测试提供依据。这一步就像建筑前的图纸设计若出现偏差后续所有工作都可能白费。技术选型与适配是衔接需求与开发的核心环节。工程师需要根据业务场景的特点选择合适的基础大模型、开发框架和工具——不同的业务对模型的响应速度、精度、成本要求不同选型的合理性直接影响最终产品的表现。同时他们还要对行业相关数据进行预处理通过提示词工程优化模型输出或在必要时进行轻量化微调让基础模型更好地适配具体业务。此外设计合理的上下文管理规则确保模型理解连贯需求建立敏感信息过滤机制保障数据安全也是这一环节的重要内容。应用开发与对接则是将方案转化为产品的实操阶段。工程师会利用选定的开发框架构建应用的核心功能同时联动各类外部系统——比如将AI模型与企业现有的客户管理系统、数据存储系统打通确保数据流转顺畅。在这一过程中他们还需要配合设计团队打磨前端交互界面让技术功能以简洁易懂的方式呈现给用户实现从技术方案到产品形态的转化。测试与优化是保障产品质量的关键步骤。工程师会开展全面的功能测试找出并修复开发过程中出现的漏洞同时针对模型的响应速度、稳定性等性能指标进行优化。安全合规性也是测试的重点需要确保应用符合数据保护、隐私安全等相关规定。此外他们还会收集用户反馈通过调整模型参数、优化提示词等方式持续提升产品体验让应用更贴合用户实际使用需求。部署运维与迭代则贯穿产品的整个生命周期。工程师会通过云服务器或私有服务器将应用部署上线并实时监控运行状态及时处理突发故障确保应用稳定运行。随着业务需求的变化他们还需要对应用功能进行迭代更新同时编写完善的开发文档和使用手册为后续的维护和交接提供支持。03薪资情况与职业价值市场对这一职业的高度认可直接体现在薪资待遇上。据猎聘最新在招岗位数据显示AI大模型应用开发工程师的月薪最高可达60k。在AI技术加速落地的当下这种“技术业务”的复合型能力尤为稀缺让该职业成为当下极具吸引力的就业选择。AI大模型应用开发工程师是AI技术落地的关键桥梁。他们用专业能力将抽象的技术转化为具体的产品让大模型的价值真正渗透到各行各业。随着AI场景化应用的不断深化这一职业的重要性将更加凸显也必将吸引更多人才投身其中推动AI技术更好地服务于社会发展。CSDN粉丝独家福利给大家整理了一份AI大模型全套学习资料这份完整版的 AI 大模型学习资料已经上传CSDN朋友们如果需要可以扫描下方二维码点击下方CSDN官方认证链接免费领取【保证100%免费】