mcpField
V
vector-search

vector-search

github.com/ruvnetデータ・データベース80.0k751 回インストール今日更新
リポジトリ

vector-search について

プラグインのベクトル検索経路から、コーパス検索向けの HNSW 埋め込みと、少数の優先パターン向けの WASM ルーターを選ぶためのガイドです。量子化検索、階層型埋め込み、調整方法、CLI の代替手段も扱います。

主な機能

  1. 01大規模コーパス向け HNSW 検索
  2. 02RaBitQ 量子化検索
  3. 03テキストの類似度比較
  4. 04階層データ向け双曲埋め込み
  5. 05最大 11 パターンの WASM ルーティング
  6. 06検索調整と CLI コマンド

活用シーン

  1. 01500 件以上の文書コーパスを検索
  2. 02大規模なベクトル集合のメモリ削減
  3. 03少数パターンへのクエリ振り分け
  4. 04コードツリーなど階層データの検索

MCP 対応

Ruflo の MCP ツールによる埋め込みの生成と検索、量子化インデックス作成、名前空間横断のメモリ検索、WASM パターンルーティングを説明します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/ruvnet/ruflo --skill vector-search

インストール後、Claude Code で/vector-searchを入力して読み込まれたか確認します。

詳細

ベクトル検索

このプラグインには、異なる2つのベクトル検索経路があります。適切なものを選んでください。互換性はありません。

経路ツールファミリーバックエンド容量レイテンシ
大規模コーパスembeddings_*@claude-flow/memory HNSW(Rust/ネイティブ)最大数百万ベクトルN=20kで約1.9倍、N=5kで総当たり検索比約3.2倍~4.7倍(実測値、recall@10 ≈ 0.99)。クロスオーバーを超えるとANNが優位
ホットパスルーターruvllm_hnsw_*WASMベースのルーター(v2.0.1)最大約11パターン(ruvllm-tools.ts:58)1ミリ秒未満。高優先度のルーティング向けに設計されており、コーパス検索には不向き

「12,500倍」という見出しは、大規模な embeddings_search 経路に適用されます。WASMルーターはその経路ではありません。

使用する場面

必要なこと経路
N ≥ 500件のドキュメントからなるコーパスを検索するembeddings_search
メモリに制約のあるコーパス(5,000ベクトル以上)RaBitQ量子化。「量子化検索」を参照してください
2つの文字列を比較するembeddings_compare
階層型/分類体系データembeddings_hyperbolic(ポアンカレ球)
クエリを最大11個のホットパターンのいずれかにルーティングするruvllm_hnsw_route
名前空間をまたいで検索するmemory_search_unified

標準検索

  1. ステータスを確認する — mcp__plugin_ruflo-core_ruflo__embeddings_status で埋め込みエンジンを確認します。
  2. 初期化する — アクティブでない場合は、mcp__plugin_ruflo-core_ruflo__embeddings_init を実行します。
  3. 生成する — テキスト入力には mcp__plugin_ruflo-core_ruflo__embeddings_generate を実行します。
  4. 検索する — クエリを指定して mcp__plugin_ruflo-core_ruflo__embeddings_search を実行します。
  5. 比較する — 類似度を測定するには mcp__plugin_ruflo-core_ruflo__embeddings_compare を実行します。
  6. 統合検索 — 名前空間をまたいで検索するには mcp__plugin_ruflo-core_ruflo__memory_search_unified を実行します。

量子化検索(メモリを32分の1に削減)

5,000ベクトル以上のコーパスや、メモリに制約のある環境では、RaBitQの1ビット量子化ワークフローを使用します。5,000ベクトル未満の場合は、再構築のコストが削減量を上回るため、代わりに標準の経路を使用してください。

手順ツール用途
1embeddings_initエンジンをウォームアップ
2embeddings_rabitq_buildコーパス読み込み後に1ビットインデックスを一度だけ構築
3embeddings_rabitq_searchハミング距離による事前フィルタリングで上位N件の候補IDを返す(低コスト)
4embeddings_search候補セットを任意で正確に再ランキングする(フル精度)
5embeddings_rabitq_statusインデックスの健全性、メモリ使用量、構築時間

注:embeddings_rabitq_search が返すのは候補IDのみです。手順4での再ランキングはユーザーの責任です(embeddings-tools.ts:911 のdocstringと同様です)。再ランキングしない場合、結果は近似値です。再ランキングすれば、メモリを32分の1に抑えながらフル精度の品質が得られます。

チューニング

HNSWには、再現率とレイテンシのバランスを調整する3つのパラメーターがあります。「12,500倍」という見出しはデフォルト値を前提としています。ワークロードに合わせて慎重に調整してください。

プロファイルefSearchM使用する場面
recall-first20032計画時のパターン再現率。ミリ秒単位の速度より品質を重視
balanced(デフォルト)6416汎用的なセマンティック再現
latency-first168p99レイテンシが重要なホットパスルーティング

efSearch は ruvllm_hnsw_create で渡します(ruvllm-tools.ts:64)。現在、M はレジストリレベルの設定です。MCPから調整できるようにする必要があれば、今後対応してください。ライトインデックスの efConstruction はデフォルトで200です(hnsw-index.ts:537)。

HNSWパターンルーター(WASM、最大11パターン)

少数の高優先度パターンをルーティングする場合:

  • mcp__plugin_ruflo-core_ruflo__ruvllm_hnsw_create — WASMインデックスを作成(上限約11件)
  • mcp__plugin_ruflo-core_ruflo__ruvllm_hnsw_add — パターンを追加
  • mcp__plugin_ruflo-core_ruflo__ruvllm_hnsw_route — 受信したクエリをルーティング

これはコーパスインデックスではありません。厳選されたパターンのセットを対象とする高速分類器として扱ってください。

双曲埋め込み

階層型データ(コードツリー、組織図)には、ポアンカレ球空間に写像する mcp__plugin_ruflo-core_ruflo__embeddings_hyperbolic を使用します。距離はコサイン距離ではなく測地距離です。

CLI の代替手段

npx @claude-flow/cli@latest embeddings search --query "authentication patterns"
npx @claude-flow/cli@latest embeddings init
npx @claude-flow/cli@latest memory search --query "your query"

パフォーマンス

測定値(出典:scripts/benchmark-intelligence.mjs、ruvector NAPI バックエンド、recall@10 ≈ 0.99)。以前の「150×~12,500×」という数値は総当たりフォールバックによるもので、現在は廃止されています。プロジェクトの CLAUDE.md の「V3 Performance Targets」を参照してください。

方法総当たりと比較した測定速度向上
総当たりスキャン基準
HNSW(N=5,000)約3.2×~4.7×高速
HNSW(N=20,000)約1.9×高速
HNSW(損益分岐点未満の小さなN)総当たりと同等/低速
RaBitQ 量子化メモリを32×削減、N≈14.7kでクエリあたり0.60 ms
ruvllm_hnsw_route(n≤11)ルートあたり1 ms未満、固定コスト

コメント