🛠Tools🔥🔥

RyanCodrai、ベクター検索ライブラリ turbovec を公開──1,000 万ドキュメントの RAM 消費を 4GB に圧縮

Google Research の TurboQuant アルゴリズムを Rust で実装し、1,000 万件のベクターコーパスを float32 比で約 1/8 の 4GB に圧縮しつつ FAISS を上回る速度で検索可能にした。
リリース: 2026-08-18 · 読了 3

記事の要約

1. 核心(What)

  • Google Research の TurboQuant アルゴリズムを採用した Rust 製ベクター検索ライブラリ turbovec が公開された
  • 1,000 万件のベクターを 4GB の RAM に収め、FAISS を上回る高速検索を実現
  • Python および Rust の両方に対応し、LangChain や LlamaIndex などの主要フレームワークのストアを置き換え可能
  • インデックス作成時のトレーニング工程やパラメータチューニングが不要なオンラインインジェストをサポート

2. 影響(Why)

  • メモリ消費の劇的な圧縮: float32 で 31GB 必要だった 1,000 万ドキュメントのインデックスを 4GB に圧縮できるため、クラウドのサーバー費用を大幅に抑制できる。
  • フレームワークとの高い親和性: LangChain や LlamaIndex などのインメモリ用ストアの代替としてそのまま組み込めるため、既存パイプラインの移行コストが最小限で済む。

3. 根拠・詳細(How)

  • SIMD 手動最適化カーネル: ARM の NEON (SDOT/SMMLA) や x86 の AVX-512 VNNI / `vpermb` を手書きしたカーネルにより、FAISS IndexPQFastScan 比較で 4-bit 平均 3.4×、2-bit で 23% 高速化。
  • 検索時インプレースフィルタリング: 32 ベクターのブロック単位で SIMD カーネル内部に allowlist を渡し、LUT ルックアップ前に非該当スロットをショートサーキットで除外する設計。

4. 展望・課題(Next)

  • 実運用環境での性能検証: 実際のエンタープライズ RAG データセットにおける大スケールでのレイテンシと再現性の実証が求められる。