1. Knowhere 索引算法实现细节的内容
Knowhere 是 Milvus 的向量搜索引擎核心,作为 C++ 组件独立维护(milvus-io/knowhere)。它的核心思想是:提供统一向量索引抽象接口,封装多个实际后端引擎,并对接 Milvus 的标量过滤、异构计算和存储系统。
整体架构与代码组织
-
目录结构:src/index/ 下按索引类型组织,如 vector_index/、gpu_index/、disk_index/、bin_index/ 等。
-
关键基类和工厂:
-
Index 虚基类:定义 BuildAll(全量构建)、AddWithoutIds(追加)、Query/QueryWithParam(搜索)、Serialize/Load(序列化)等。
-
VecIndex 继承 Index,扩展向量维度、度量类型等。
-

