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 流水線。