本页保留高频问题和 60 秒回答;完整原理参见 RAG工程全流程 与 RAG高级检索与优化。
高频面试问题
RAG 和微调有什么区别?
RAG 在推理时注入可更新、可引用的外部事实;微调主要改变模型行为、表达格式或领域任务能力。需要最新/私域/可追溯事实优先 RAG;需要稳定格式、风格或任务能力考虑微调;两者可以组合。
BM25 和向量检索怎么选?
BM25 擅长精确词、编号和低频实体,Dense 擅长语义和同义表达。生产中通常先做混合召回,再融合和重排,而不是二选一。
为什么需要 Rerank?
第一阶段目标是低成本、高召回,候选中必然有噪声;Rerank 用更昂贵的联合编码模型提升前几名精度,满足生成阶段“少而准”的需求。
Top-K 和相似度阈值怎么定?
不能拍脑袋。候选 K 服务于召回,最终 K 服务于上下文质量;用 Recall@K、Faithfulness、正确率、延迟和成本联合调参。不同模型/索引的分数不可直接横向比较,阈值要在本系统数据上校准。
RAG 能彻底消除幻觉吗?
不能。它可能没有召回证据、召回错误/冲突/恶意证据,模型也可能忽略证据或错误引用。需要召回评测、忠实度评测、拒答、引用校验和安全边界共同控制。
长上下文会取代 RAG 吗?
不会完全取代。小而固定的语料可直接放长上下文,但大规模语料仍需检索来控制成本、权限、时效和噪声;长上下文本身也不保证模型能稳定利用位于中间的信息。
RAG 和 Agent 的区别?
RAG 解决“为回答找证据”;Agent 解决“为目标规划步骤、调用工具并改变状态”。RAG 可以作为 Agent 的一个检索工具,Agent 也可以决定是否改写、分解和重复检索。
60 秒标准回答
“我会把 RAG 分成离线建库和在线问答两条链路。离线侧先接入并解析数据,按文档结构切块,保存来源、版本和权限元数据,再生成 Embedding,同时建立 BM25 倒排索引和向量索引。在线侧先做权限过滤和多轮问题改写,然后并行做关键词与语义召回,用 RRF 融合,再通过 Cross-Encoder 重排,去重并按 token 预算组装少量高质量证据。生成时要求模型只依据证据回答、证据不足就拒答并带引用,之后做忠实度、引用和安全校验。评测不能只看答案,要分别看检索 Recall@K/MRR/nDCG、生成正确性与 Faithfulness,以及端到端延迟、成本和权限安全。出问题时先定位语料和解析,再看召回、重排与上下文,最后才考虑换大模型。”
相关笔记
- RAG工程全流程 — 完整工程链路
- RAG高级检索与优化 — Query、混合检索与重排
- RAG评测与排障 — 指标与 Badcase 定位
- RAG 专题导航