zilliztech/knowhere

Vector search engine inside Milvus, integrating FAISS, HNSW, DiskANN.

解决的问题

Knowhere 旨在满足轻量级、高性能向量搜索引擎的需求,可嵌入到更大的系统中。它作为 Milvus 的内部核心,负责处理向量数据索引和搜索的繁重任务。

工作原理

Knowhere 使用 C++ 编写,提供向量索引和暴力搜索功能。它可以通过 cuVS 构建以支持 GPU。该项目提供 C ABI、Java JNI 和 Python wheel 绑定,支持跨语言集成。构建过程使用 Makefile,并支持针对单元测试、调试模式和自定义编译器的可配置标志。

适用人群

需要可嵌入向量搜索核心的开发者,特别是从事 Milvus 或类似系统开发的人员。它也适合希望从源码构建和测试 Knowhere 的贡献者,因为仓库提供了全面的构建和测试说明。

主要亮点

  • 作为 Milvus 的内部核心,提供可重用的向量搜索引擎。
  • 支持 CPU 和 GPU (cuVS) 构建。
  • 通过 C ABI 和 Java JNI 绑定公开索引、暴力搜索和命名索引 blob。
  • 构建可移植的 Python wheel 以实现轻松部署。
  • 包含支持 AddressSanitizer 的单元测试。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目