向量检索层参数(Embedding / Vector DB)search_type dense / sparse / hybrid是什么意思?

内容纲要

在向量检索里,search_type = dense / sparse / hybrid指的是“用什么信号来判断‘相关’”。三者不是版本高低,而是信息来源不同


一句话先给直觉

  • dense(稠密向量)
    语义相似度找“意思像”的内容
  • sparse(稀疏向量)
    关键词匹配找“词一样”的内容
  • hybrid(混合)
    语义 + 关键词一起算分

一、dense(稠密向量检索)

Image

Image

是什么

把文本编码成一个低维、稠密的向量(如 768 / 1024 维),用向量距离(cosine / dot / L2)衡量语义相似度。

解决什么问题

“词不一样,但意思一样,能不能找到?”

典型能力

  • 同义表达
  • 改写、口语化
  • 抽象问题

示例

用户问:

“怎么提高 RAG 检索效果?”

即使文档里写的是:

“检索召回率优化策略”

dense 也能命中。

优缺点

优点

  • 语义强
  • 抗表达变化

缺点

  • 专有名词/精确词不敏感
  • 可能“语义像但不对题”

适合场景

  • 问答
  • 分析 / 总结
  • 文档理解
  • 用户自然语言输入

二、sparse(稀疏向量检索,关键词检索)

Image

Image

是什么

词频 / 关键词匹配(BM25、TF-IDF、倒排索引),向量维度极高但绝大多数为 0

解决什么问题

“我就要这个词,一个字都不能错”

典型能力

  • 精确字段
  • 报错信息
  • 代码 / 参数 / ID

示例

用户问:

“Milvus 中 IVF_FLAT 和 HNSW 区别?”

sparse 能直接锁定这些词。

优缺点

优点

  • 精准
  • 可解释
  • 对专业术语极强

缺点

  • 不懂同义
  • 不会“联想”

适合场景

  • 报错排查
  • API / 配置查询
  • 法律条文 / 标准
  • 日志、字段、SQL

三、hybrid(混合检索)

Image

Image

是什么

dense + sparse 一起用,然后合并打分(加权 / rerank)。

本质

意思像 + 关键词对,才是真的相关”

两种常见实现

  1. 并行检索

    • dense 查一批
    • sparse 查一批
    • 合并 → rerank
  2. 联合打分

    • score = α * dense_score + β * sparse_score

优缺点

优点

  • 稳定
  • 召回高
  • 工业级默认

缺点

  • 复杂
  • 成本更高
  • 参数更多

适合场景

  • 企业知识库
  • RAG 生产系统
  • 技术文档问答
  • Agent 工具检索

四、三者对比速查表

维度 dense sparse hybrid
关注点 语义 关键词 二者
抗改写
精确命中
复杂度
工业推荐 ⭐⭐ ⭐⭐ ⭐⭐⭐⭐

五、什么时候选哪个?(直接抄)

✅ 选 dense

  • 用户问题自然
  • 表达不稳定
  • 想“懂意思”
search_type = dense
top_k = 20~50

✅ 选 sparse

  • 问题短
  • 专有名词多
  • 要“一字不差”
search_type = sparse
top_k = 5~10

✅ 选 hybrid(强烈推荐)

  • 生产环境
  • 企业知识库
  • 不想赌用户表达
search_type = hybrid
dense_weight = 0.6
sparse_weight = 0.4
rerank = on

六、一句工程师总结(很关键)

dense 解决“你在说什么”,
sparse 解决“你说的是不是这个词”,
hybrid 解决“这事能不能稳定跑”。

close
arrow_upward