密ベクトルの類似検索とクラスタリングを効率化する、PythonバインディングとオプションのGPUアクセラレーションを備えたC++ライブラリ。
RyanCodrai/turbovec
TurboQuantで埋め込みを次元あたり2または4ビットに圧縮し、圧縮したまま検索できるPython・Rust向けインプロセスベクトルインデックス。
代替できる製品:FAISS
- スター
- 17,411
- フォーク
- 1,488
- 未解決の Issue
- 23
- 最終コミット
- 15 日前
これは何?
turbovecは、PythonとRust向けのベクトルインデックスライブラリです。TurboQuant量子化方式を使って各埋め込みを次元あたり2または4ビットで保存し、SIMDカーネルで圧縮形式のまま最近傍検索を実行します。そのため、別サービスを使わず、インデックスをプロセス内メモリに保持できます。
このプロジェクトはRAGパイプラインなどの検索ワークロードを想定しており、大量の埋め込みをfloat32で保存する必要がある場合に役立ちます。再学習なしでベクトルを追加・削除でき、変更分のみを書き込むsync呼び出しによる増分永続化にも対応しています。また、ユーザー定義のuint64 IDをキーにするIdMapIndexバリアントもあります。検索対象をIDの許可リストで絞り込むこともできます。LangChain、LlamaIndex、Haystack、Agno向けのドロップイン連携も用意されています。
グラフインデックスではなく総当たりスキャンを行うため、クエリコストはコーパスのサイズに比例して増加します。量子化は不可逆であり、OpenAIおよびGloVeの埋め込みを使ったFAISSとのベンチマークが公開されています。
主な機能
- 01ベクトルを次元あたり2または4ビットで保存し、4ビットの場合はfloat32に比べて約7.8倍省スペースです。
- 02圧縮コードを直接SIMD最適化検索できます。Python APIとRust APIを提供します。
- 03学習やインデックスの再構築をせずにベクトルを追加・削除できます。
- 04増分sync()では変更されたデータのみをアトミックに書き込みます。
- 05IDベースのインデックス作成と、検索時の許可リストによる絞り込みに対応しています。
ユースケース
- 埋め込みをプロセス内メモリに保持するローカルRAGリトリーバーの構築。
- RAMが限られたマシンで、大規模な埋め込みコレクションを検索。
- 別のデータベースを稼働させずに、LangChainまたはLlamaIndexアプリケーションへベクトルストアを追加。
- データをプロセス外に出せないオフライン環境やプライバシー重視のセマンティック検索。
クイックスタート
- 1
PyPIからPythonパッケージをインストールする
pip install turbovec - 2
TurboQuantIndexでベクトルを構築・インデックス化する(READMEの例を参照)
使う前に知っておきたいこと
- すべてのベクトルをスキャンするため、厳しいレイテンシ要件がある非常に大規模なコーパスには適していません。
- 量子化は不可逆なため、結果は正確な浮動小数点の結果ではなく近似値です。
トピック
よくある質問
- turbovec とは?
- TurboQuantで埋め込みを次元あたり2または4ビットに圧縮し、圧縮したまま検索できるPython・Rust向けインプロセスベクトルインデックス。 turbovecは、PythonとRust向けのベクトルインデックスライブラリです。TurboQuant量子化方式を使って各埋め込みを次元あたり2または4ビットで保存し、SIMDカーネルで圧縮形式のまま最近傍検索を実行します。そのため、別サービスを使わず、インデックスをプロセス内メモリに保持できます。
- turbovec は無料で使えますか?ライセンスは?
- turbovec は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- turbovec は今もメンテナンスされていますか?
- 活発にメンテナンス中。turbovec の最終コミットは 2026年10月7日 です。
- turbovec は何に使えますか?
- 埋め込みをプロセス内メモリに保持するローカルRAGリトリーバーの構築。 RAMが限られたマシンで、大規模な埋め込みコレクションを検索。 別のデータベースを稼働させずに、LangChainまたはLlamaIndexアプリケーションへベクトルストアを追加。 データをプロセス外に出せないオフライン環境やプライバシー重視のセマンティック検索。
- turbovec のインストール方法は?
- PyPIからPythonパッケージをインストールする: pip install turbovec TurboQuantIndexでベクトルを構築・インデックス化する(READMEの例を参照)
- turbovec はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/RyanCodrai/turbovec
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
オンデマンドで埋め込みを再計算し、ストレージを約97%削減するローカルベクトルインデックス兼RAGツールキット。ノートPC上の個人データを検索できます。
WebページやPDFをスクリーンショット化して画像検索し、表やグラフを保持したままRAGに活用できるオープンソースパイプライン。
RAG、ベクトル検索、エージェント、評価、監視を使ったLLMアプリケーション構築を学ぶ、無料のオープンソース10週間オンラインコース。
Qdrantベクトル検索エンジンの公式Pythonクライアントライブラリ。同期・非同期のREST/gRPC接続と、ローカルのインメモリモードに対応。
ローカルLLMを使い、クラウドAPIに頼らずJavaScriptでRAGを一から段階的に学べるプロジェクト。