【向量检索引擎】ANN 算法工程接口:从 HNSW/IVF 到 Knowhere 契约
把 HNSW、IVF、DiskANN、Flat 收成引擎侧 Train/Build/Load/Search 契约与构建期/查询期参数面;用生命周期图与召回–QPS–内存三角说明索引如何贴着 Segment,并与 db-frontier/08、第 8 篇 Knowhere 分工。
发布来自土法炼钢兴趣小组的知识、笔记、进展和应用。主题包括数据结构和算法、编程语言、网络安全、密码学等。
共 9 篇文章 · 返回首页
把 HNSW、IVF、DiskANN、Flat 收成引擎侧 Train/Build/Load/Search 契约与构建期/查询期参数面;用生命周期图与召回–QPS–内存三角说明索引如何贴着 Segment,并与 db-frontier/08、第 8 篇 Knowhere 分工。
按官方 Knowhere 文档说明其在 Milvus 中的位置、相对 Faiss 的扩展(bitset、SIMD 选择、二进制度量)、VecIndex 类层次与 IDMAP/IVF/HNSW 等类型,用插件注册、CPU/GPU 分发与 bitset 进查询三张图钉住工程契约,并与 db-frontier/08 的算法细节分工。
对照 Qdrant 与本系列 Milvus 主线:Segment 内的向量/payload/id mapper 三件套、WAL+序号版本化、后台 optimizer 四类任务,以及 Raft 只管拓扑不管点操作的分布式模型;说明何时单进程/小集群更合适。
补齐 ANN 算法与 RAG 应用之间的生产级向量引擎层:以 Milvus 2.6.x 为主线拆解 Segment、WAL、Segcore、Knowhere、混合过滤与一致性,并用 Qdrant、LanceDB 对照选型。
从 HNSW、IVF-PQ、DiskANN 到 Milvus、Qdrant、pgvector;从稠密稀疏混合到 Microsoft GraphRAG 的工程实操。
系统拆解 HNSW、DiskANN/Vamana、SPANN 三类主流 ANN 索引的原理、构建算法、查询流程与工程参数,并覆盖 IVF-PQ、ScaNN 的位置,最后给出 FAISS/Milvus/pgvector/Qdrant 的选型与一份 200 行 numpy HNSW 复现。
给定一条 768 维的文本嵌入向量(Embedding),要从一亿条同维度向量中找出最相似的 10 条。暴力计算需要对每条向量做 768 次乘法和一次求和——一亿条就是 768 亿次浮点运算,单核 CPU 跑完需要几十秒。如果这个操作发生在每一次用户搜索请求中,系统根本无法响应。
把前几篇的算法组装起来,构建一个真正可用的向量检索系统。
HNSW 是当前向量检索的事实标准算法。