混合搜索
混合搜索(Hybrid Search)是一种结合dense向量语义搜索和BM25稀疏向量关键词搜索的检索技术,通过RRF(Reciprocal Rank Fusion)对两路结果进行融合排序。SocratiCode使用Qdrant的原生混合查询能力实现这一机制。
工作原理
- 语义搜索:使用dense向量理解概念性查询(如"认证中间件"、“结算主流程”)
- 关键词搜索:使用BM25稀疏向量精确命中标识符、类名、函数名和常量
- RRF融合:对两路搜索结果进行统一排序,避免手工调权重
配置参数
SEARCH_MIN_SCORE=0.10:噪声过滤阈值- 支持路径、语言、项目、分支等过滤器
- 支持自定义搜索结果的默认数量
实际意义
传统grep搜索很准但听不懂概念,纯向量搜索能猜意思但对工程命名一头雾水。混合搜索让AI同时拥有"语言理解能力"和"工程检索能力",在大规模工程中兼顾"懂意思"和"找得准"。