Skip to content

RAG 面试高频 100 题

定位: RAG 知识库的"检验场"——通过面试题验证对 RAG 各板块的理解 使用方式: 先读原理笔记,再用本题自测 题数: 按领域分类,覆盖 6 大板块


一、RAG 基础与原理(15 题)

考察范围: **RAG基础索引**

1.1 什么是 RAG?它解决了 LLM 的哪些核心缺陷?

考察点: 概念理解、问题分析 → 详阅 **什么是RAG**

1.2 RAG 的三段式架构是什么?每个阶段的关键变量是什么?

考察点: 架构理解、Pipeline 设计 → 详阅 **什么是RAG**

1.3 Naive RAG vs Advanced RAG vs Modular RAG 的区别?

考察点: 架构演进、技术选型 → 详阅 **RAG系统架构总览**

1.4 RAG 中检索的 K 值如何选择?太大或太小有什么问题?

考察点: 参数理解、系统设计 → 详阅 **RAG系统架构总览**

1.5 RAG 的幻觉是如何产生的?怎么减轻?

考察点: 问题诊断、优化思维 → 详阅 **什么是RAG**

1.6 RAG 和 Fine-tuning 的核心区别是什么?各自解决什么问题?

考察点: 对比分析、技术选型 → 详阅 **RAGvs微调-技术选型对比**

1.7 什么场景应该选 RAG?什么场景选 Fine-tuning?什么场景两者结合?

考察点: 场景判断、组合策略 → 详阅 **RAGvs微调-技术选型对比**

1.8 RAG + Fine-tuning 组合的常见模式有哪些?

考察点: 组合策略、工程思维 → 详阅 **RAGvs微调-技术选型对比**

1.9 Modular RAG 相比前两代架构的核心优势?

考察点: 架构理解 → 详阅 **RAG系统架构总览**

1.10 RAG 的延迟瓶颈一般在哪里?如何优化?

考察点: 系统思维、性能优化 → 详阅 **RAG系统架构总览**

1.11 RAG 适合什么场景?不适合什么?

考察点: 边界理解 → 详阅 **什么是RAG**

1.12 为什么说 RAG 不改变模型,而是改变模型能看到的信息?

考察点: 核心思想理解 → 详阅 **什么是RAG**

1.13 倒排索引相比向量检索的优缺点?

考察点: 检索基础 → 详阅 **RAG系统架构总览**

1.14 Embedding 模型何时被使用?在 RAG Pipeline 中出现几次?

考察点: 架构理解 → 详阅 **RAG系统架构总览**

1.15 RAG 是否适用于多轮对话场景?需要注意什么?

考察点: 场景扩展 → 详阅 **什么是RAG**


二、检索系统(25 题)

考察范围: **检索系统索引**

2.1 文本分块时 chunk_size 和 chunk_overlap 如何确定?

考察点: 参数理解 → 详阅 **文本分块策略**

2.2 递归字符分块(RecursiveCharacterTextSplitter)的原理是什么?

考察点: 算法理解 → 详阅 **文本分块策略**

2.3 分块太小或太大会有什么问题?

考察点: 质量分析 → 详阅 **文本分块策略**

2.4 Embedding 模型的作用是什么?它如何将文本转为向量?

考察点: 基础概念 → 详阅 **Embedding模型与向量化**

2.5 常见的 Embedding 模型有哪些?中文场景推荐什么?

考察点: 技术选型 → 详阅 **Embedding模型与向量化**

2.6 向量维度高低如何选择?维度越大越好吗?

考察点: 维度理解、成本意识 → 详阅 **Embedding模型与向量化**

2.7 为什么索引和检索必须使用同一 Embedding 模型?

考察点: 原理理解 → 详阅 **Embedding模型与向量化**

2.8 对比 FAISS、Chroma、Pinecone、Milvus 的适用场景。

考察点: 数据库选型 → 详阅 **向量数据库选型与对比**

2.9 HNSW 索引的原理和参数选择?

考察点: 索引原理 → 详阅 **向量数据库选型与对比**

2.10 ANN 搜索和 KNN 搜索的区别?

考察点: 算法理解 → 详阅 **向量数据库选型与对比**

2.11 混合检索(Hybrid Search)解决了什么问题?

考察点: 问题分析 → 详阅 **检索与重排序**

2.12 BM25 和向量检索各自的优势和劣势?

考察点: 检索理解 → 详阅 **检索与重排序**

2.13 RRF(Reciprocal Rank Fusion)的原理是什么?

考察点: 算法理解 → 详阅 **检索与重排序**

2.14 Bi-Encoder 和 Cross-Encoder 的区别?

考察点: 编码器理解 → 详阅 **检索与重排序**

2.15 为什么需要重排序(Reranking)?它和向量检索的定位有何不同?

考察点: 架构设计 → 详阅 **检索与重排序**

2.16 主流 Reranker 模型有哪些?(中文场景推荐)

考察点: 技术选型 → 详阅 **检索与重排序**

2.17 文档加载中 PDF 提取有哪些坑?怎么解决?

考察点: 实践经验 → 详阅 **文档加载与解析**

2.18 不同类型文档(PDF/网页/数据库)的加载策略有何不同?

考察点: 多源处理 → 详阅 **文档加载与解析**

2.19 Metadata 在 RAG 检索中的作用有哪些?

考察点: 工程理解 → 详阅 **文档加载与解析**

2.20 语义分块和递归分块的区别?什么场景用语义分块?

考察点: 策略对比 → 详阅 **文本分块策略**

2.21 向量数据库中标量过滤对性能的影响?

考察点: 性能理解 → 详阅 **向量数据库选型与对比**

2.22 大规模向量检索(上亿级别)的挑战和解决方案?

考察点: 系统设计 → 详阅 **向量数据库选型与对比**

2.23 PQ(乘积量化)索引的原理和优缺点?

考察点: 索引理解 → 详阅 **向量数据库选型与对比**

2.24 如何评估检索质量?常用的指标有哪些?

考察点: 评估理解 → 详阅 **检索与重排序**

2.25 如果检索结果中混入了不相关的文档,会如何影响生成质量?

考察点: 链路理解 → 详阅 **检索与重排序**


三、生成与融合(20 题)

考察范围: **生成融合索引**

3.1 RAG 场景下生成模型选型最重要的因素有哪些?

考察点: 选型理解 → 详阅 **生成模型选择与Prompt设计**

3.2 一个好的 RAG Prompt 模板应该包含哪些部分?

考察点: Prompt 设计 → 详阅 **生成模型选择与Prompt设计**

3.3 如何通过 Prompt 设计降低 RAG 的幻觉?

考察点: 反幻觉设计 → 详阅 **生成模型选择与Prompt设计**

3.4 上下文窗口不够时,有哪些处理策略?

考察点: 窗口管理 → 详阅 **上下文窗口管理**

3.5 MMR(最大边际相关性)排序的原理是什么?

考察点: 排序算法 → 详阅 **上下文窗口管理**

3.6 上下文压缩(Context Compression)的原理和 trade-off?

考察点: 压缩理解 → 详阅 **上下文窗口管理**

3.7 MapReduce RAG 适用什么场景?

考察点: 分治理解 → 详阅 **上下文窗口管理**

3.8 HyDE 的原理是什么?解决了什么问题?

考察点: 算法理解 → 详阅 **HyDE与查询转换**

3.9 Multi-Query 和 HyDE 的区别和适用场景?

考察点: 策略对比 → 详阅 **HyDE与查询转换**

3.10 Step-back Prompting 的适用场景?

考察点: 查询优化 → 详阅 **HyDE与查询转换**

3.11 查询路由(Query Routing)如何设计?

考察点: 架构设计 → 详阅 **HyDE与查询转换**

3.12 多模态 RAG 的三种架构方案?各有什么优劣?

考察点: 架构理解 → 详阅 **多模态RAG**

3.13 多模态 RAG 中如何将图片检索结果提供给生成模型?

考察点: 实现理解 → 详阅 **多模态RAG**

3.14 LLM 上下文窗口越来越大(100K+),是否完全解决了窗口管理问题?

考察点: 深度思考 → 详阅 **上下文窗口管理**

3.15 RAG 生成结果中引用来源的最佳实践?

考察点: 工程实践 → 详阅 **生成模型选择与Prompt设计**

3.16 模型温度参数对 RAG 生成的影响?

考察点: 参数理解 → 详阅 **生成模型选择与Prompt设计**

3.17 RAG 的 Prompt 和普通 LLM Prompt 设计有什么不同?

考察点: 对比理解 → 详阅 **生成模型选择与Prompt设计**

3.18 当检索结果内容冲突时,Prompt 应该如何设计?

考察点: 异常处理 → 详阅 **生成模型选择与Prompt设计**

3.19 长上下文模型中,检索结果如何排列对生成效果更好?

考察点: 排列策略 → 详阅 **上下文窗口管理**

3.20 跨模态 Embedding(如 CLIP)的工作方式?

考察点: 多模态理解 → 详阅 **多模态RAG**


四、进阶 RAG 模式(15 题)

考察范围: **进阶RAG索引**

4.1 Agentic RAG 比传统 RAG 强在哪里?

考察点: 架构对比 → 详阅 **AgenticRAG**

4.2 Agentic RAG 可能面临的挑战和风险?

考察点: 风险评估 → 详阅 **AgenticRAG**

4.3 Self-RAG 的核心创新(反思 Token)是什么?

考察点: 论文理解 → 详阅 **SelfRAG与CorrectiveRAG**

4.4 Corrective RAG(CRAG)和 Self-RAG 的区别?

考察点: 对比分析 → 详阅 **SelfRAG与CorrectiveRAG**

4.5 Self-RAG 在实践中的主要难点?

考察点: 实践理解 → 详阅 **SelfRAG与CorrectiveRAG**

4.6 Graph RAG 解决了向量检索的什么局限?

考察点: 问题理解 → 详阅 **GraphRAG**

4.7 Microsoft GraphRAG 的社区摘要机制是什么?

考察点: 论文理解 → 详阅 **GraphRAG**

4.8 Graph RAG 的主要代价和适用场景?

考察点: 成本意识 → 详阅 **GraphRAG**

4.9 RAPTOR 的树状结构和传统分块的区别?

考察点: 架构对比 → 详阅 **RAPTOR与分层检索**

4.10 RAPTOR 的两种检索策略(自顶向下 vs 全层)各有什么特点?

考察点: 检索策略 → 详阅 **RAPTOR与分层检索**

4.11 RAPTOR 和 Graph RAG 的区别和联系?

考察点: 对比理解 → 详阅 **RAPTOR与分层检索**

4.12 如果 Agent 在 Agentic RAG 中陷入循环,如何解决?

考察点: 工程实践 → 详阅 **AgenticRAG**

4.13 基础 RAG → Advanced RAG → Agentic RAG → Self-RAG 的关系?

考察点: 演进理解 → 详阅 **SelfRAG与CorrectiveRAG**

4.14 Graph RAG 和向量检索是否可以结合?如何结合?

考察点: 组合思维 → 详阅 **GraphRAG**

4.15 生产环境应该选哪种进阶 RAG 模式?为什么?

考察点: 场景判断 → 详阅 **AgenticRAG**


五、评估与优化(15 题)

考察范围: **评估优化索引**

5.1 RAGAS 是什么?它是如何评估 RAG 系统的?

考察点: 框架理解 → 详阅 **RAGAS评估框架**

5.2 RAGAS 的核心指标有哪些?每个指标的评估对象是什么?

考察点: 指标理解 → 详阅 **评估指标详解**

5.3 Faithfulness 和 Answer Relevancy 的区别是什么?

考察点: 对比理解 → 详阅 **评估指标详解**

5.4 Context Precision 和 Context Recall 的 trade-off 是什么?

考察点: 权衡理解 → 详阅 **评估指标详解**

5.5 RAG 系统调优应该从哪个指标入手?为什么?

考察点: 调优方法论 → 详阅 **RAG系统调优策略**

5.6 同一个改动(如加 Reranker)同时影响哪些指标?

考察点: 链路理解 → 详阅 **RAG系统调优策略**

5.7 如何设计 RAG 系统的 A/B 实验?

考察点: 实验思维 → 详阅 **RAG系统调优策略**

5.8 RAG 系统中效果最显著的优化是什么?为什么?

考察点: 实践见解 → 详阅 **RAG系统调优策略**

5.9 为什么传统 NLG 指标(BLEU/ROUGE)不适合评估 RAG?

考察点: 评估理解 → 详阅 **RAGAS评估框架**

5.10 Faithfulness 低时,如何定位是检索问题还是 Prompt 问题?

考察点: 诊断能力 → 详阅 **评估指标详解**

5.11 如何评估一个 RAG 系统的检索质量?

考察点: 评估方法 → 详阅 **RAGAS评估框架**

5.12 什么是"大海捞针"测试?对 RAG 评估有什么启示?

考察点: 评测理解 → 详阅 **RAGAS评估框架**

5.13 RAG 的测试集应该包含哪些类型的问题?

考察点: 测试设计 → 详阅 **评估指标详解**

5.14 LLM-as-Judge 评估方式的可靠性和偏差?

考察点: 评估认知 → 详阅 **RAGAS评估框架**

5.15 RAG 系统优化的终点是什么?何时可以停止调优?

考察点: 工程智慧 → 详阅 **RAG系统调优策略**


六、工程化实践(10 题)

考察范围: **工程化索引**

6.1 LangChain 的 LCEL 是什么?相比传统 Chain API 的优势?

考察点: 框架理解 → 详阅 **LangChain实践指南**

6.2 LangChain 和 LlamaIndex 的核心区别?

考察点: 框架对比 → 详阅 **LangChain实践指南**

6.3 LlamaIndex 有哪些索引类型?各自适用什么场景?

考察点: 索引理解 → 详阅 **LlamaIndex实践指南**

6.4 RAG 系统生产部署的主要挑战?

考察点: 工程理解 → 详阅 **RAG系统部署与监控**

6.5 RAG 系统监控的核心指标有哪些?

考察点: 运维理解 → 详阅 **RAG系统部署与监控**

6.6 如何降低 RAG 系统的端到端延迟?

考察点: 性能优化 → 详阅 **RAG系统部署与监控**

6.7 RAG 系统的 Prompt 注入攻击面有哪些?

考察点: 安全理解 → 详阅 **安全与隐私**

6.8 如何防护文档级别的 Prompt 注入?

考察点: 安全设计 → 详阅 **安全与隐私**

6.9 RAG 多租户场景的数据隔离怎么做?

考察点: 架构设计 → 详阅 **安全与隐私**

6.10 LangChain 和 LlamaIndex 可以一起用吗?怎么用?

考察点: 组合思维 → 详阅 **LlamaIndex实践指南**


七、综合与开放题(10 题)

7.1 请设计一个面向企业内部知识库的 RAG 系统,画出架构图并说明各组件选型理由。

考察范围: 全知识库

7.2 如果你的 RAG 系统回答总是不准确,你会如何系统性排查?

考察范围: **评估优化索引**

7.3 如何判断一个问题是否适合用 RAG 解决?

考察范围: **什么是RAG**

7.4 设计一个 RAG 系统的评估方案(指标、数据集、流程)。

考察范围: **评估优化索引**

7.5 对比两种检索优化方案:更多检索路径 vs 更强的 Reranker。

考察范围: **检索系统索引**

7.6 RAG 系统上线后,如何持续追踪和改进质量?

考察范围: **RAG系统调优策略**

7.7 从成本角度分析:RAG vs Fine-tuning vs RAG+FT,各需考虑哪些成本?

考察范围: **RAGvs微调-技术选型对比**

7.8 如何让 RAG 系统具备"不知道就说不知道"的能力?

考察范围: **生成模型选择与Prompt设计**

7.9 如果检索结果包含矛盾信息,RAG 系统应该如何处理?

考察范围: **上下文窗口管理**

7.10 你理想中的下一代 RAG 架构应该是什么样的?

考察范围: 全知识库


使用说明

如何自测

正确做法:
  1. 先阅读对应板块的原理笔记
  2. 尝试回答每个问题(口述或写下来)
  3. 回到原理笔记验证答案
  4. 标记不确定的题目,隔天再测

错误做法:
  1. 直接背面试题答案
  2. 题海战术不求甚解

答案定位

每题标注了对应的原理笔记,答案要点都可在笔记中找到。开放题(第7部分)需要综合多个板块的知识回答。


📚 相关链接

  • **RAG文库设计文档** — 知识库蓝图
  • 各板块索引页 — 深入复习薄弱环节

Knowledge4J — Java 知识库