qdrant-hybrid-search
について
このスキルは、Qdrantでハイブリッド検索を実装する方法を説明します。これは、Query APIの`prefetch`機能を使用して並列検索を実行し、キーワード検索とセマンティック検索を組み合わせるものです。開発者に対して、スパースベクトルと密ベクトルの結果を統合し、キーワードマッチングの欠落などの問題に対処する方法を案内します。複合検索手法を設定する場合や、複数の検索表現を扱う際にご利用ください。
クイックインストール
Claude Code
推奨npx skills add qdrant/skills -a claude-code/plugin add https://github.com/qdrant/skillsgit clone https://github.com/qdrant/skills.git ~/.claude/skills/qdrant-hybrid-searchこのコマンドをClaude Codeにコピー&ペーストしてスキルをインストールします
ドキュメント
Hybrid Search in Qdrant
Hybrid search means running two or more different searches in parallel and combining their results into one.
In Qdrant this is powered by the Query API via prefetch: each prefetch runs exactly one type of search independently, and the outer query combines results from parallel prefetches.
Prefetches can be nested and searches can be multi-stage, all pipeline happening in one request through Query API. See Universal Query API for examples.
Identify the user's problem and pick building blocks:
- What can go into one prefetch, e.g. power one search, in Search Types
- How to combine results of these searches (RRF, DBSF, FormulaQuery, reranking) in Combining Searches
Based on what you've picked, test your approach:
- Configure Qdrant collection with named vectors, where each named vector usually corresponds to one representation (different embedding models or different vector types) of a data point.
- Construct a hybrid search request with Query API from your building blocks. You can search independently among one type of vectors, with
prefetch+using, like shown in examples in Hybrid Queries documentation. - Evaluate hybrid search quality on real user data and provide user with improvements and tradeoffs (speed/resources).
How Isolated Are Parallel Searches?
Use when: different tenants share one collection and you need to understand hybrid search isolation guarantees.
If user wants to isolate/share hybrid search pipelines between tenants, consider that:
- Indexes (sparse, payload and dense) and IDF modifier for sparse vectors are computed independently per shard, not per tenant.
- Prefetch runs independently per shard to retrieve #limit results, so for collection-level prefetches if collection has several shards, Qdrant will always prefetch under the hood #limit * #shard results. Final results are merged based on scores.
- In nested prefetches (deeper than 1 level), methods described in "Combining Searches" might be done on a shard level first, then per-shards results once again will be merged based on scores.
What NOT to Do
- Choose a hybrid search pattern based on "vibes" without any hybrid search quality evaluation in-place.
- Create too many named vectors without a need. An unfilled named vector might take as much resources as a filled one.
GitHub リポジトリ
関連スキル
release-standards
ドキュメント処理このスキルは、ソフトウェアリリースのためのセマンティックバージョニング(semver)ガイドラインと変更履歴(changelog)のフォーマット標準を提供します。リリース準備時に使用することで、バージョン番号(メジャー/マイナー/パッチ)を正しく増分し、変更履歴のエントリを構造化できます。プレリリース識別子のルールと、開発者向けの明確な例も含まれています。
commit-standards
ドキュメント処理このスキルは、Conventional Commits標準に従ってGitコミットメッセージをフォーマットします。コミットの作成やレビュー時に一貫性を保つため、テンプレートとタイプ定義(`feat`、`fix`、`refactor`など)を提供します。コミットプロセスで使用することで、明確で構造化されたコミット履歴を作成できます。
huggingface-tokenizers
ドキュメント処理このスキルは、HuggingFaceのRustベースライブラリを使用した高性能トークン化を提供し、1GBのテキストを20秒未満で処理します。BPE、WordPiece、Unigramアルゴリズムをサポートし、カスタムトークナイザーのトレーニングとアライメント追跡を可能にします。本番環境レベルの高速トークン化が必要な場合や、transformersエコシステムと統合されたカスタムトークナイザーを構築する際にご利用ください。
nano-pdf
ドキュメント処理nano-pdfは、特定のページのテキスト変更や誤字修正など、自然言語による指示を使ってPDFを編集できるCLIツールです。ターミナルから直接、迅速かつプログラム的にPDFを修正するのに最適です。ページ番号はバージョンによって異なる場合があるため、出力は必ず確認してください。
