Skip to content

二十、Embedding 与向量检索(深入)⭐ RAG 地基

Embedding 把语义变成空间中的点,"找相近"="找距离近的点"。

原理

文字 → 向量(如1024个数=语义空间坐标),意思近则坐标近。维度越高越细腻但越慢。

相似度:余弦相似度

比两向量"方向/夹角",夹角小=意思近。范围-1~1,越近1越像。

⭐ 规模化:ANN(近似最近邻)

10万向量逐一比太慢 → ANN(HNSW等)聪明跳过大部分,牺牲微小精度换巨大速度。向量库(pgvector/Milvus)已实现。

选 Embedding 模型

中文强(bge/m3e/Qwen)· 维度权衡 · 敏感用本地 · 建库和查询必须用同一个(换模型要重建库)。

切块策略

按语义切(别切断句子)· 块间留重叠(50-100字)· 带元数据(出处)· 常见300-800字后按效果调。

⭐ 提质两招

  • 混合检索(Hybrid):向量(懂语义)+ 关键词(精确命中专有名词)融合 → 又懂语义又不漏。
  • 重排序(Rerank):粗筛top20(快)→ 强模型精排取top5(准)。两段式提准确率。

© 曹宇春 · 个人学习整理,欢迎交流