🧠AI RAG
Embedding与向量索引
面试回答
常见问法
Embedding 和向量库分别在 RAG 里做什么?为什么说它们不是一回事?
回答
Embedding 负责把文本映射成向量表示,让“语义相近”的内容在向量空间里更接近;向量索引负责高效存储和检索这些向量。
所以:
- Embedding 决定你“表征得准不准”
- 索引决定你“查得快不快、近似得怎么样”
这两个层面都能影响召回质量,但问题性质不同。
追问
- 为什么换个 embedding 模型,召回效果可能变化很大
- 向量索引为什么常做近似搜索
- 什么时候要加 metadata filter
原理展开
RAG 检索链路里,常见步骤是:
- 文档 chunk 化
- 生成 embedding
- 写入向量索引
- 查询也转成 embedding
- 做相似度检索
面试里高频判断点有两个:
- 如果召回不准,可能是 embedding 语义表征不适合业务
- 如果召回太慢,可能是索引结构和参数不合适
所以不要把“向量库效果不好”一股脑归给同一个原因。
易错点
- 把 embedding 模型问题和索引参数问题混成一类
- 只看向量相似度,不结合 metadata 和业务过滤
- 以为向量检索一定比关键词检索更好
记忆技巧
记住:
- Embedding = 把文本变成语义向量
- 索引 = 让相似搜索变快
- 召回效果 = 表征能力 + 检索策略共同决定