alibaba/zvec
A lightweight, lightning-fast, in-process vector database
解決する課題
Zvecは、アプリケーションに直接組み込み可能な、軽量で高性能なベクトルデータベースを提供します。これにより、個別のデータベースサーバーの管理や複雑な設定の必要性を排除しながら、数十億のベクトルにわたる低レイテンシの類似性検索を可能にします。
仕組み
Zvecはスタンドアロンのサーバーではなく、組み込みライブラリとして機能し、アプリケーションコードが実行される場所(ノートブックやエッジデバイスを含む)で動作します。密な埋め込み(dense embeddings)と疎な埋め込み(sparse embeddings)の両方をサポートし、メモリからディスクまでスケールする複数のインデックスタイプを提供します。データの安全性を確保するため、永続化にはライトアヘッドロギング(WAL)を使用し、複数のプロセスが同時に同じコレクションを読み取れるようにしています。
対象ユーザー
別途サーバーを運用するオーバーヘッドなしに、プロダクショングレードの類似性検索とベクトルストレージを必要とする開発者、特にサーバー、CLIツール、またはエッジデバイスで動作するアプリケーション向けに設計されています。
ハイライト
- ハイブリッド検索: ベクトル類似性、全文検索(FTS)、および構造化フィルタを単一のクエリで組み合わせます。
- インプロセス・アーキテクチャ: サーバーのセットアップは不要で、アプリケーションに直接組み込まれるため、レイテンシを最小限に抑えます。
- 幅広い言語サポート: Python, Node.js, Go, Rust, および Dart/Flutter 用の公式SDKを提供しています。
- 高度なインデックス作成: HNSW, HNSW-RaBitQ, DiskANN をサポートし、再現率(recall)を向上させるランダム回転量子化などの機能を備えています。
- 全文検索: Unicode標準のトークナイザーを備えたネイティブなFTSパイプラインを含み、34以上の言語をサポートしています。