☰
AI Agent 面试全攻略:RAG技术完整指南,分块、向量库、重排序与24+高频面试题
2026/10/1 3:14:24 网站建设 项目流程

AI Agent 面试全攻略:RAG技术完整指南,分块、向量库、重排序与24+高频面试题

【免费下载链接】ai-agent-interview-guideAI Agent 面试全攻略:从零到Offer,包含200+面试题、企业级项目(Python/Java/Go)、简历模板、STAR面试稿、哆啦A梦漫画图解项目地址: https://gitcode.com/gh_mirrors/ai/ai-agent-interview-guide

准备AI Agent 面试时,RAG(检索增强生成)是技术面出场率最高的考点。本文面向新手,用大白话讲透 RAG 技术全链路:文档分块策略、向量数据库选型、混合检索与重排序,并整理 24+ 道高频 RAG 面试题速查,帮你从"背八股"升级到"能讲清设计"。

📌 为什么 RAG 是 AI Agent 面试必考核心?

大模型有两个天然短板:知识有截止日期(新知识不知道)、会编造(幻觉)。RAG 的思路很简单——先查资料、再回答:把企业文档切成小块建好索引,用户提问时先检索出最相关的几段,塞进 Prompt 让大模型"照着资料答"。

方案知识更新成本适合场景
RAG更新索引即可,快低事实问答、客服知识库
微调需重新训练,慢高改输出风格、格式、口吻
长上下文仍需塞入上下文高、延迟高单篇超长文档全局推理

💡 面试高频对比题:"什么时候优先微调而不是 RAG?"答:目标是行为与格式(输出 JSON、领域口吻),且训练数据稳定可标注时;事实类问题永远优先 RAG。

🔍 RAG 完整流程:从离线建库到在线问答

整个 RAG 系统分两条线:

  • 离线流水线:原始文件(PDF/Word/Markdown)→ 解析清洗 →分块(Chunking)→ Embedding 向量化 → 写入向量库(可再加 BM25 倒排索引)
  • 在线问答:用户提问 →(可选)查询改写 → 检索 Top-K →(可选)重排序→ 拼进 Prompt → 大模型生成带引用的答案

项目里的漫画图解把这两步画得非常直白——哆啦A梦在图书馆里"检索→增强→生成":

一句话口述版(面试直接背): "离线负责把非结构化知识变成可检索索引;在线负责理解意图、检索、融合、约束生成,并控制延迟成本。"

✂️ 文档分块:决定检索质量的第一道关

分块(Chunking)就是把长文档切成"一块块能被检索、又不缺上下文"的文本。主流策略:

策略一句话理解注意点
固定长度每 512 token 一刀切简单,但容易把句子切半
递归字符分割优先在段落→句子→空格边界断开生产默认基线,推荐
语义分块相似度骤降处切,贴着话题边界效果好但计算贵
按结构分块按 Markdown 标题/HTML 小节切块内主题一致,适合文档类
父子块小块用于检索、大块用于喂给 LLM兼顾精度与上下文完整性

两个黄金参数(面试官最爱追问):

  • chunk_size:覆盖一个"完整命题"(一条规定、一个步骤),太小缺主语、太大混噪声
  • chunk_overlap:一般为 size 的10%–20%,防止关键句被切在两块边界

项目中的分块实现支持固定/递归/段落三种策略,默认 512 token + 64 重叠:chunker.py,解析与整条 ETL 流水线见 parser.py 和 pipeline.py。

❓高频题:分块太大或太小分别会怎样?太小 → 语义不完整,片段缺主语或条件;太大 → 混入无关内容、embedding 语义变模糊、费用上升。答完补一句"我们用评估集扫网格调参"会更加分。

📦 向量数据库选型:FAISS、Milvus、Qdrant 怎么挑?

向量数据库解决的核心问题是:上百万条高维向量,怎么毫秒级找出"最像的 Top-K"?答案是ANN(近似最近邻)算法——用一点点精度换数量级速度。

产品特点适用场景
FAISSMeta 出品的算法库,非完整数据库原型、离线实验
Milvus云原生、分布式、可扩展百亿级大规模生产(本项目采用)
Chroma轻量、易上手小项目、Demo
QdrantRust 实现、元数据过滤强自托管 + 复杂过滤

三个必会的 ANN 算法名词:

  • HNSW:图索引,延迟低、召回高,但吃内存(调大efSearch= 召回升、延迟升)
  • IVF:先聚类分桶再搜部分桶,适合数据量大、内存紧
  • PQ:向量压缩省内存,精度略降,常与 IVF 组合

一句话区别题(出现率极高):

❓FAISS 和 Milvus 本质区别?FAISS 是ANN 算法库,存储、服务、容灾要自己搭;Milvus 是向量数据库系统,带分布式存储和运维能力。

项目里 Milvus 封装在 milvus_client.py,Java 版对应 MilvusService.java。

🎯 混合检索与重排序:效果提升的两个大杀器

单路向量检索的短板:专有名词、产品型号、工单编号等"精确词"经常漏检。业界标配组合拳:

  1. 混合检索:向量(抓语义)+ BM25(抓字面)两路召回,用RRF(倒数排名融合)合并——只比排名不比分数,天然规避两路分数尺度不一致的问题,经典参数k=60
  2. Cross-Encoder 重排序:向量检索是"独立编码"求快,Cross-Encoder 把 query 和文档拼一起深度交互打分,精度更高但慢,所以放在召回 Top-K(几十到几百条)之后,精排出 Top 3–10
  3. MMR 去冗余:防止 Top-K 里塞满几乎重复的段落,lambda越大越偏相关、越小越偏多样

项目实现路径(Python 版):

  • 多路检索 + RRF 融合:retriever.py
  • Cross-Encoder 重排:reranker.py
  • 带引用标注的答案生成:generator.py

Go 版同模块见 internal/rag/(retriever.go / reranker.go / generator.go)。

❓高频题:Cross-Encoder 为什么不能直接替代向量索引?因为它必须对每个文档与 query 跑一次模型,复杂度扛不住百万级全库实时扫描,只能做小规模精排。

🚀 RAG 进阶四件套:答出"深度感"的加分项

面试官问"还了解哪些 RAG 变体"时,记住这四个名字:

变体一句话解释
GraphRAG抽实体关系建知识图谱,擅长多跳关系和全局总结类问题,成本高
Agentic RAG由 Agent 动态决定"何时检索、检索什么、要不要再查",多步循环
Self-RAG模型生成中插入反思 token,自我检查"证据够不够、要不要再查"
Corrective RAG检索质量不达标时自动改写查询/换数据源纠偏

❓加分追问:长上下文模型出来后 RAG 会消失吗?不会。私域数据规模与成本、检索聚焦证据、合规审计、增量更新,这些需求长上下文替代不了。

❓ 24+ 高频 RAG 面试题速查(含标准答案要点)

完整题库(含追问应对)在 03-RAG技术.md,这里列出最高频的 24 道速查:

#面试题答案要点
1简述 RAG 两步流水线离线:解析→分块→嵌入→建索引;在线:检索→重排→拼 Prompt→生成
2RAG 和微调如何配合微调管格式与表达,RAG 管可更新事实,事实类优先 RAG
3为什么需要 chunk_overlap防关键句被切断在边界,代价是存储略增
4递归分块的分隔符顺序为何重要优先在更大语义单元(段落)断开,减少碎片化
5语义分块一定更好吗不一定,成本高、阈值敏感,用数据 A/B 测试
6父子文档怎么存子块带parent_id,命中子块→映射父块文本再生成
7Embedding 要归一化吗用余弦/内积时建议归一化,相似度更稳定
8IndexFlatIP 与 HNSW 区别Flat 精确但慢;HNSW 近似快,适合大规模
9混合检索权重怎么定验证集网格搜索,或用 RRF 免调权
10RRF 为什么鲁棒只用排名融合,规避分数尺度问题
11HyDE 风险如何缓解重排 + 引用约束 + 拒答 + 多路对比
12BM25 中文要分词吗要,常需分词或 n-gram,否则粒度不当
13Cross-Encoder 为何不能全库扫复杂度太高,只能对 Top-K 小范围精排
14MMR 的 lambda 含义调"相关性 vs 多样性",越大越偏相关
15GraphRAG 解决什么痛点多跳关系与全局聚合类问题
16Agentic RAG 与一次检索差异多步工具决策 + 再检索,更灵活但成本高
17Self-RAG 核心思想生成中自评"要不要检索、证据是否充分"
18Corrective RAG 触发条件检索置信度低或证据矛盾时改查/换源
19RAGAS 评估的局限依赖裁判模型,有偏好与盲区,需人工抽检
20低成本在线评估怎么做采样 + 用户点赞/纠错 + 点击引用等弱监督
21索引频繁更新如何保一致版本号 + 双写切换 + 灰度重建,读写分离
22如何防 Prompt 注入污染 RAG文档清洗、权限隔离、引用限制、异常指令检测
23HNSW 和 IVF 怎么取舍中等规模要低延迟选 HNSW;超大且内存紧张选 IVF(+PQ)
24只看答案对错够吗不够,要分评检索质量与忠实度,定位瓶颈在哪

项目面试时,还可以结合 面试问答集 里的 100+ 道项目题,以及 STAR 面试稿 练习话术:

📚 学习路径与动手项目

建议按"看原理 → 跑项目 → 练话术"三步走:

  1. 吃透八股:RAG 技术模块(每个主题都有概念、原理、面试问答、追问应对)
  2. 跑通企业级项目(三选一):
    • Python 版:FastAPI + Milvus + Redis,推荐首选
    • Java 版:Spring Boot 3 + Spring AI
    • Go 版:Gin + 自研框架
  3. 简历与话术:简历模板 + STAR 面试稿 + 学习路线图

💡最后的高分技巧:简历里准备一条可量化指标(如"Top-5 召回率提升 X%""P99 延迟下降 X%")和一次失败案例分析(到底是检索错了还是生成胡编),比背 24 道题更有说服力。

【免费下载链接】ai-agent-interview-guideAI Agent 面试全攻略:从零到Offer,包含200+面试题、企业级项目(Python/Java/Go)、简历模板、STAR面试稿、哆啦A梦漫画图解项目地址: https://gitcode.com/gh_mirrors/ai/ai-agent-interview-guide

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询