mcpField
S
similarity-search-patterns

similarity-search-patterns

github.com/wshobsonデータ・データベース41.9k10.8k 回インストール2 週間前に更新
リポジトリ

similarity-search-patterns について

類似性検索を効率よく運用するための本番向けパターンを扱うスキルです。距離指標やインデックスの選択、調整、評価を網羅し、セマンティック検索や検索、推薦システムの構築を支援します。

主な機能

  1. 01距離指標の選択
  2. 02Flat、HNSW、IVF+PQのインデックス指針
  3. 03再現率と速度の調整
  4. 04セマンティック検索とキーワード検索の併用
  5. 05検索品質の監視

活用シーン

  1. 01セマンティック検索システムの構築
  2. 02RAG検索の実装
  3. 03推薦エンジンの作成
  4. 04大規模検索のレイテンシ削減

インストール

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

$npx skills add https://github.com/wshobson/agents --skill similarity-search-patterns

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

同梱ファイルreferences/details.md

詳細

類似検索パターン

本番システムで効率的な類似検索を実装するためのパターンです。

このスキルを使う場面

  • セマンティック検索システムを構築するとき
  • RAG の検索を実装するとき
  • レコメンデーションエンジンを作成するとき
  • 検索レイテンシを最適化するとき
  • 数百万のベクトルにスケールするとき
  • セマンティック検索とキーワード検索を組み合わせるとき

中核となる概念

1. 距離メトリクス

| メトリクス | 計算式 | 最適な用途 | | ------------------ | ------------------ | --------------------- | --- | -------------- | | コサイン | 1 - (A·B)/(‖A‖‖B‖) | 正規化された埋め込み | | ユークリッド (L2) | √Σ(a-b)² | 生の埋め込み | | ドット積 | A·B | 大きさが重要 | | マンハッタン (L1) | Σ | a-b | | スパースベクトル |

2. インデックスの種類
┌─────────────────────────────────────────────────┐
│                 Index Types                      │
├─────────────┬───────────────┬───────────────────┤
│    Flat     │     HNSW      │    IVF+PQ         │
│ (Exact)     │ (Graph-based) │ (Quantized)       │
├─────────────┼───────────────┼───────────────────┤
│ O(n) search │ O(log n)      │ O(√n)             │
│ 100% recall │ ~95-99%       │ ~90-95%           │
│ Small data  │ Medium-Large  │ Very Large        │
└─────────────┴───────────────┴───────────────────┘

テンプレートと詳細な実例

テンプレートの完全なライブラリと詳細な実例は references/details.md にあります。具体的なテンプレートが必要な場合はそのファイルを読んでください。

ベストプラクティス

推奨事項
  • 適切なインデックスを使用する - ほとんどの場合は HNSW
  • パラメータを調整する - 再現率と速度のために ef_search、nprobe
  • ハイブリッド検索を実装する - キーワード検索と組み合わせる
  • 再現率を監視する - 検索品質を測定する
  • 可能な場合は事前フィルタリングする - 検索空間を削減する
非推奨事項
  • 評価を省略しない - 最適化する前に測定する
  • 過剰にインデックスを作成しない - flat から始めてスケールアップする
  • レイテンシを無視しない - P99 は UX にとって重要
  • コストを忘れない - ベクトルストレージは積み重なる

コメント