alibaba/zvec

A lightweight, lightning-fast, in-process vector database

解決的問題

Zvec 提供了一個輕量級、高性能的向量資料庫,可以作為進程內函式庫直接嵌入到應用程式中。它消除了管理單獨資料庫伺服器或複雜配置的需要,同時實現了跨數十億向量的低延遲相似性搜尋。

工作原理

Zvec 作為嵌入式函式庫而非獨立伺服器運行,可以在應用程式程式碼執行的任何地方運行(包括 notebook 和邊緣裝置)。它支援稠密與稀疏嵌入,並提供從記憶體到磁碟的可擴展多種索引類型。為了確保資料安全,它使用預寫日誌 (WAL) 進行持久化,並允許多個進程同時讀取同一個集合。

適用對象

專為需要生產級相似性搜尋與向量儲存,且不想承擔單獨伺服器開銷的開發者設計,特別是針對在伺服器、CLI 工具或邊緣裝置上運行的應用程式。

亮點

  • 混合搜尋:在單一查詢中結合向量相似性、全文搜尋 (FTS) 與結構化篩選器。
  • 進程內架構:無需伺服器設定;直接嵌入應用程式以實現極低延遲。
  • 廣泛的語言支援:提供 Python、Node.js、Go、Rust 和 Dart/Flutter 的官方 SDK。
  • 進階索引:支援 HNSW、HNSW-RaBitQ 和 DiskANN,並具有透過隨機旋轉量化 (random rotation quantization) 來提高召回率的功能。
  • 全文搜尋:包含具有 Unicode 標準分詞器並支援 34 多種語言的原生 FTS 流水線。