真实面经题目 · 原创解析

RAG 和 Embedding 分别是什么,在大模型应用中各自解决什么问题?

这道题看似是定义题,实际考察大模型应用的知识接入链路。Embedding 是把对象映射成可计算的语义向量,RAG 是检索增强生成架构;RAG 常用 embedding 做召回,但不等于向量库加大模型,还需要文档切分、索引、混合检索、重排、权限、引用、拒答、评估和监控。

出现于:美团 · 后端开发

60 秒回答模板

Embedding 是把文本、图片、商品或用户行为映射成稠密向量,使语义相近的对象距离更近,常用于语义检索、去重、聚类、推荐和相似问匹配。RAG 是 Retrieval-Augmented Generation,先从外部知识库、文档或数据库检索相关证据,再把证据和问题一起交给大模型生成答案,用来解决模型知识过期、私有知识不可见、长尾事实记忆不可靠和幻觉问题。二者关系是:embedding 通常是 RAG 的召回基础设施之一,但完整 RAG 还包括文档解析、chunking、向量/关键词混合检索、metadata 过滤、rerank、上下文压缩、Prompt 组织、引用溯源、权限控制、拒答策略和评估监控。生产里还要关注 freshness、p95 延迟、召回质量、faithfulness 和权限隔离。

考点 Embedding 是向量表示
难度 真实面经题
回答目标 让候选人区分 Embedding 的语义表示能力和 RAG 的检索增强生成架构,并能说明生产级 RAG 的完整链路和评估边界。

深入解析

01

Embedding 解决表示

Embedding 把文本、图片、商品、用户等对象变成向量,让相似性可以用内积、cosine 或距离计算。它本身不生成答案,主要用于召回、聚类、去重、相似问匹配和推荐。

02

RAG 解决知识接入

RAG 在生成前检索外部证据,让模型基于最新、私有或长尾知识回答。它缓解知识过期和幻觉,但前提是检索到的证据相关、完整、可信,并且被正确注入上下文。

03

完整链路

离线阶段解析文档、清洗、切块、生成 embedding、写入向量库和元数据索引;在线阶段 query 改写、混合检索、权限过滤、rerank、上下文压缩、Prompt 组装、生成、引用和日志记录。

04

不只向量检索

向量检索擅长语义相似,但对编号、时间、金额、精确字段、否定条件和权限过滤不一定稳定。生产 RAG 常结合 BM25、结构化查询、SQL、搜索引擎和工具调用。

05

质量边界

RAG 不能完全消除幻觉。召回错、chunk 不完整、rerank 失败、Prompt 放不下、证据冲突或权限过滤错误,都可能导致错误答案。必须有置信度、引用和证据不足时的拒答策略。

06

评估监控

检索侧看 Recall@K、Precision@K、MRR、NDCG;生成侧看 factual accuracy、faithfulness、answer relevance、引用正确率和拒答准确率;系统侧看延迟、成本、索引新鲜度和失败率。

易错点

  • 把 RAG 简化成向量库加大模型,忽略切块、重排、权限和评估。
  • 认为 embedding 相似度高就一定能回答问题。
  • chunk 切得过大造成上下文污染,切得过小造成语义不完整。
  • 只用向量检索处理日期、编号、权限和结构化字段。
  • 没有证据不足拒答策略,导致 RAG 仍然幻觉。
  • 知识库更新后索引不刷新,答案使用过期内容。

面试官追问

为什么 RAG 不能完全消除幻觉?

RAG 只是给模型提供证据。如果召回不到、证据不完整、重排错、上下文太长被截断、证据互相冲突或 Prompt 约束弱,模型仍可能编造。因此要有引用、faithfulness 评估和拒答策略。

如何设计 chunk size 和 overlap?

chunk 太大容易召回噪声并浪费上下文,太小会丢语义和跨段信息。通常按文档结构、段落、标题和任务粒度切分,并通过 Recall@K、引用命中和答案准确率调参。overlap 用于保留边界信息,但过多会增加重复。

向量检索和 BM25 为什么常做混合检索?

向量检索擅长语义改写和相似表达,BM25 擅长关键词、专有名词、编号和精确匹配。混合检索能提高召回覆盖,再用 reranker 统一排序。

如何判断是召回失败还是生成失败?

先看 gold evidence 是否在 TopK 召回中;如果不在,是召回或索引问题。如果证据在上下文中但答案错误,通常是重排、上下文组织、Prompt 或模型生成问题。需要分层评估。