🧠AI RAG

Embedding与向量索引

面试回答

常见问法

Embedding 和向量库分别在 RAG 里做什么?为什么说它们不是一回事?

回答

Embedding 负责把文本映射成向量表示,让“语义相近”的内容在向量空间里更接近;向量索引负责高效存储和检索这些向量。

所以:

  • Embedding 决定你“表征得准不准”
  • 索引决定你“查得快不快、近似得怎么样”

这两个层面都能影响召回质量,但问题性质不同。

追问

  • 为什么换个 embedding 模型,召回效果可能变化很大
  • 向量索引为什么常做近似搜索
  • 什么时候要加 metadata filter

原理展开

RAG 检索链路里,常见步骤是:

  1. 文档 chunk 化
  2. 生成 embedding
  3. 写入向量索引
  4. 查询也转成 embedding
  5. 做相似度检索

面试里高频判断点有两个:

  • 如果召回不准,可能是 embedding 语义表征不适合业务
  • 如果召回太慢,可能是索引结构和参数不合适

所以不要把“向量库效果不好”一股脑归给同一个原因。

易错点

  • 把 embedding 模型问题和索引参数问题混成一类
  • 只看向量相似度,不结合 metadata 和业务过滤
  • 以为向量检索一定比关键词检索更好

记忆技巧

记住:

  1. Embedding = 把文本变成语义向量
  2. 索引 = 让相似搜索变快
  3. 召回效果 = 表征能力 + 检索策略共同决定