Q19RAG 检索增强RAG 检索增强AgentAlpha 社区约 10 分钟更新 2026-09-28

第 1 章 · RAG 面试导学

本导读梳理了 RAG 章节的考点地图与学习路线。从文本切分、向量库选型到多路检索与系统评测,带你避开常见面试陷阱,高效掌握检索增强生成的核心机制。

面试官原题

Agent 岗面试 RAG 章节考什么?按什么顺序刷题?

面试官 · Agent 岗面试现场

RAG 是大模型应用开发中基础的模块,也是 Agent 岗面试中基本每场都会涉及的考察点。本章适合刚接触大模型应用开发、准备梳理检索增强技术脉络的工程师作为首个复习模块,建议投入两到四天的时间。复习过程需要从基础的文本切分和向量表征开始,逐步过渡到复杂的检索策略与评测设计。

考点地图

Embedding 原理与文本分块

主要考察文本转化为连续向量表示的底层机制,以及切分策略对检索结果的物理影响。面试官通常会问固定长度切分或基于语义切分在什么场景下适用,并追问不同切分长度如何影响语义完整性与处理效率。这部分是 RAG 流程的输入端,文本块大小和重叠率直接决定后续向量库的存储密度。切分粒度过大会稀释核心语义;切分过小容易切断上下文关联,使检索片段无法支撑模型生成完整回答。

向量数据库选型与索引机制

重点关注不同向量数据库的底层索引算法,如 HNSW 图索引、IVF 倒排索引的构建原理与查询时间复杂度。面试官会基于具体数据量,追问在内存占用、查询延迟和召回率之间如何做技术权衡,以及标量与向量混合查询的实现方式。它是连接文本处理和检索操作的中间存储层,制约着系统并发场景下的吞吐量。理解这些机制有助于说明为何在特定业务中选择 Milvus,或在简单应用中选择 FAISS。

多路检索与重排序策略

考察如何结合稀疏检索与稠密检索,弥补单一向量检索在专有名词匹配上的缺陷。面试官常要求说明 Cross-Encoder 架构为何比 Bi-Encoder 更适合重排序阶段的精确打分,以及两者在计算开销上的差异。检索和重排是提升系统回答准确性的干预节点,承接前端查询请求,决定了最终输入给大模型提示词的上下文质量。该策略选择决定了系统能否在海量噪声中定位到决定性信息。

系统评测与长文档处理

涉及如何构建客观评价指标体系,分别衡量检索模块的召回能力与生成模块的准确程度。面试官会关注能否把用户主观反馈转化为 NDCG、MRR 等量化指标,并询问面对数百页文档时,是依赖大模型原生长上下文能力,还是构建多层级 RAG 检索树。评测是迭代系统的客观依据,反向指导前三个环节的参数调优;长文档处理则考察工程师对硬件算力瓶颈与上下文窗口限制的实际把控能力。

站内学习路线

复习本章需要遵循从组件认知到系统调优的逻辑,建议分为打地基、攻高频和深挖长文三个阶段。

先打地基阶段,重点是建立对 RAG 物理运转过程的准确理解。首先阅读 RAG 的完整流程是什么?从文档到答案要过几道工序?,把解析、分块、向量化、入库、检索、组装提示词到最终生成的过程串联起来。再看 文档切分(Chunking)怎么做?块切多大合适?,明确不同长度和重叠率对后续步骤的连锁反应。接着学习 Embedding 模型怎么选?看哪些指标?,掌握如何根据语言类型、上下文窗口和维度要求挑选合适的表征模型。这三篇速答构成了输入端基础,确保面对数据准备提问时能给出符合工程常识的回答。

再攻高频阶段,关注检索质量提升和策略选择。推荐先看 混合检索和重排序(Rerank)是什么?为什么向量检索不够用?,理解稀疏检索词频匹配与稠密检索语义匹配如何互补。随后深入 Bi-Encoder 和 Cross-Encoder 是什么?Rerank 为什么非它不可?,掌握两种架构在计算复杂度和打分精度上的本质区别。阅读 Query 改写是什么?为什么用户原句直接拿去检索效果差?,学习在用户输入端通过大模型进行意图补全以提高初始召回率。接下来看 RAG 的效果怎么评估?有哪些指标?,把学到的策略落实到量化指标上。最后通过 RAG 和微调怎么选?什么场景该用哪个? 明确在知识更新频率和计算成本限制下两种技术路线的边界。

掌握基础和高频考点后,通过站内 4 篇深度长文应对系统设计追问。第一篇 RAG 首字响应慢?把延迟拆到链路每一层去找 教你分析网络请求、数据库查询到模型推理的耗时分布。第二篇 动态 RAG 的数据质量怎么评估:别让脏知识污染答案 探讨知识库更新时的脏数据过滤机制。第三篇 动态 RAG 的缓存体系怎么设计 讲解通过语义缓存拦截高频查询,降低调用成本。第四篇 RAG 为什么越用越慢?反向调优的排查顺序 提供从索引退化到并发阻塞的完整排查方法论。这四篇文章能让你展现处理高并发复杂系统的经验。

完成上述学习后,前往 /interview/quiz 进行模拟面试抽题,检验即时反应速度。如需查阅其他速答题目,可进入 /interview/category/rag 分类页进行复习。

高频追问与避坑

面试官追问原话:「如果检索出来的文档片段都是碎片化的,拼凑在一起给大模型会导致回答缺乏逻辑,你怎么解决这个问题?」 答法方向:从检索前和检索后两个阶段设计方案。检索前采用父子文档结构,向量化时使用小切片保证匹配精度,组装提示词时召回其对应的完整大段落;检索后通过大模型对碎片化内容进行信息抽取或摘要聚合,再输入给生成节点。 浅答错在哪:单纯回答换参数更多的 Embedding 模型或把切分块调大。前者无法解决物理切断的上下文,后者会导致向量表征语义被稀释,使初次检索召回率下降,未触及工程本质。

面试官追问原话:「当业务文档发生修改或删除时,你的 RAG 系统如何保证大模型生成的答案不会引用旧的知识?」 答法方向:在向量数据库中建立文档元数据与向量 ID 的映射表,更新时采用软删除或版本号控制。检测到文档变更时,先根据唯一标识定位并作废旧向量,再对新文档切分入库,同时设计缓存失效策略清理中间层的旧结果。 浅答错在哪:回答每天定时全量重新向量化一遍。这种做法在面对海量文档时会产生高昂计算成本,且在重建索引的时间段内系统无法提供准确服务,脱离了生产环境的实际要求。

面试官追问原话:「如果你使用了多路检索,比如向量检索找到了一段话,但基于知识图谱的检索找到了另一段结论相反的话,系统该听谁的?」 答法方向:引入置信度评分机制或基于规则的优先级策略,例如特定垂直领域中,图谱查询的确定性实体关系优先级高于向量相似度。也可将两路冲突上下文同时提交给大模型,在提示词中要求模型评估来源可靠性,生成带有条件假设的回答。 浅答错在哪:回答直接把两段都塞进去让大模型自己判断,或只取相似度得分最高的那个。不加说明地塞入冲突信息会导致模型产生幻觉,而单纯比较不同路径得分是无效的,因为稀疏检索分数与稠密检索余弦相似度在数学尺度上不可比。

刷完站内上述几十道速答和深度长文后,建议前往飞书专项真题集进行延伸练习,那里收录了近期真实的面试原题与场景变体。通过反复模拟真实的追问节奏,能够进一步巩固对检索增强技术底层机制的理解。

—— 本场面试完 ——

我们不做玩具级 Demo 教学。训练营的作业是开源项目和论文——我们想陪伴你,做出能改变生活、最后改变世界的项目。