similarity-search-patterns について
類似性検索を効率よく運用するための本番向けパターンを扱うスキルです。距離指標やインデックスの選択、調整、評価を網羅し、セマンティック検索や検索、推薦システムの構築を支援します。
主な機能
- 01距離指標の選択
- 02Flat、HNSW、IVF+PQのインデックス指針
- 03再現率と速度の調整
- 04セマンティック検索とキーワード検索の併用
- 05検索品質の監視
活用シーン
- 01セマンティック検索システムの構築
- 02RAG検索の実装
- 03推薦エンジンの作成
- 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 にとって重要
- コストを忘れない - ベクトルストレージは積み重なる
コメント
Markdown 対応