Turbovec – Rustで実装されたGoogleのベクトル検索用TurboQuant
Turbovec – Google's TurboQuant for vector search in Rust
Turbovecは、Google ResearchのTurboQuantアルゴリズムに基づいたRust製ベクトルインデックスで、Pythonバインディングも提供します。このアルゴリズムは、データに依存しない量子化手法であり、歪みが少なく、追加の学習フェーズが不要です。オンラインでのベクトル追加が可能で、インデックスの再構築なしにコーパスの成長に対応します。SIMD命令(ARMのNEON、x86のAVX-512 VNNI/vpermbon、AVX2)を活用した高速検索機能は、多くの設定でFAISS IndexPQFastScanを上回ります。変更点のみを永続化するインクリメンタル保存機能や、検索時にIDリストでフィルタリングする機能も備えています。プライバシー、メモリ、レイテンシが重要なRAG(Retrieval-Augmented Generation)スタック構築に適しており、ローカル環境で動作します。LangChain、LlamaIndex、Haystackなどのフレームワークとも連携可能です。1000万ドキュメントのコーパスを31GBから4GBに圧縮し、検索速度も向上させます。特に、低ビット幅での量子化における歪みを低減するため、各座標の経験的分位数をコードブックの外側中心にマッピングするパーディネートキャリブレーション(TQ+)や、エンコード時に計算したスカラーを検索時に適用して内積推定器のバイアスを解消する長さ正規化レンダリングなどの技術が用いられています。
- Google ResearchのTurboQuantアルゴリズムに基づくRust製ベクトルインデックスTurbovecが公開され、Pythonバインディングも提供されている
- 1000万ドキュメントのコーパスを31GBから4GBに圧縮し、検索速度も向上させる性能を実証
- SIMD命令(ARM NEON、x86 AVX-512 VNNI/vpermbon、AVX2)を活用した高速検索で、多くの設定でFAISS IndexPQFastScanを上回る
Google ResearchのTurboQuantアルゴリズムに基づくオープンソースのベクトルインデックスTurbovecは、量子化技術により1000万ドキュメントのコーパスを31GBから4GBへ約87%圧縮しつつ、FAISS IndexPQFastScanを上回る検索速度を実現している点が注目に値する。RAGスタックの効率化は生成AI実装のコスト削減とレイテンシ改善に直結するため、基盤技術の進展として投資判断の参考になる。