RAG Implementation
wshobson/agents
Build retrieval-augmented generation systems: pick a vector database and embedding model, choose retrieval and reranking strategies, and start from a LangGraph pipeline.
Constructing prefetch queries for hybrid retrieval, including sparse/dense and multi-field setups, and choosing a sparse embedding model.
$ npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install qdrant/skills qdrant-hybrid-search-prefetches --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/qdrant/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types .claude/skills/qdrant-hybrid-search-prefetches && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "qdrant-hybrid-search-prefetches" agent skill from https://github.com/qdrant/skills/tree/main/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types into .claude/skills/qdrant-hybrid-search-prefetches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qdrant-hybrid-search-prefetches", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/qdrant/skills/tree/main/skills/qdrant-search-quality/search-strategies/hybrid-search/search-typesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install qdrant/skills qdrant-hybrid-search-prefetches --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qdrant/skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types .agents/skills/qdrant-hybrid-search-prefetches && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "qdrant-hybrid-search-prefetches" agent skill from https://github.com/qdrant/skills/tree/main/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types into .agents/skills/qdrant-hybrid-search-prefetches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qdrant-hybrid-search-prefetches", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install qdrant/skills qdrant-hybrid-search-prefetches --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qdrant/skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types .cursor/skills/qdrant-hybrid-search-prefetches && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "qdrant-hybrid-search-prefetches" agent skill from https://github.com/qdrant/skills/tree/main/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types into .cursor/skills/qdrant-hybrid-search-prefetches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qdrant-hybrid-search-prefetches", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/qdrant/skills.git --path skills/qdrant-search-quality/search-strategies/hybrid-search/search-types--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install qdrant/skills qdrant-hybrid-search-prefetches --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qdrant/skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types .gemini/skills/qdrant-hybrid-search-prefetches && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "qdrant-hybrid-search-prefetches" agent skill from https://github.com/qdrant/skills/tree/main/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types into .gemini/skills/qdrant-hybrid-search-prefetches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qdrant-hybrid-search-prefetches", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install qdrant/skills qdrant-hybrid-search-prefetchesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/qdrant/skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types .github/skills/qdrant-hybrid-search-prefetches && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "qdrant-hybrid-search-prefetches" agent skill from https://github.com/qdrant/skills/tree/main/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types into .github/skills/qdrant-hybrid-search-prefetches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qdrant-hybrid-search-prefetches", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install qdrant/skills qdrant-hybrid-search-prefetches --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/qdrant/skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types .opencode/skills/qdrant-hybrid-search-prefetches && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "qdrant-hybrid-search-prefetches" agent skill from https://github.com/qdrant/skills/tree/main/skills/qdrant-search-quality/search-strategies/hybrid-search/search-types into .opencode/skills/qdrant-hybrid-search-prefetches/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "qdrant-hybrid-search-prefetches", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
qdrant-hybrid-search-prefetchesConstructing prefetch queries for hybrid retrieval, including sparse/dense and multi-field setups, and choosing a sparse embedding model.
Qdrant Hybrid Search Prefetches is an agent skill from qdrant/skills, published by the product's own GitHub organization. Constructing prefetch queries for hybrid retrieval, including sparse/dense and multi-field setups, and choosing a sparse embedding model. Use when someone asks 'dense and sparse in one search?', 'how to combine multiple fields for retrieval?', 'payloads or sparse vectors for lexical?', 'which sparse embedding model to use?', or 'BM25 vs SPLADE?'
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in AI & LLM Engineering, covering Vector databases, Retrieval-augmented generation and Embeddings. It works with Qdrant. The repository describes itself as: Agent skills for Qdrant vector search: scaling, performance optimization, search quality, monitoring, deployment, model migration, version upgrades, and SDK usage across Python…. The licence is Apache-2.0.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1780b6d. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
skills.qdrant.techFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Qdrant Hybrid Search Prefetches loads about 2.4k tokens when it runs. Until then it costs about 95 tokens; SKILL.md has 1,126 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from qdrant/skills at commit 1780b6d, republished under its Apache-2.0 licence (© qdrant). 1,126 words, ~2,414 tokens.
.claude/skills/qdrant-hybrid-search-prefetches/SKILL.md (or your agent's skills folder).Each prefetch runs exactly one search per one query.
Understand if user wants to run several parallel searches on:
If first, help user to design logic of constructing query or/and filters on application side and then check Combining Searches. Don't forget to create indices on filterable payload fields, immediately after collection creation, prior to building HNSW, so filterable HNSW could be constructed.
If second, use named vectors, which allow to store multiple vector types per point in one collection. On Qdrant 1.18 or newer, named vectors can be added to or removed from an existing collection without recreating it Update vector schema; on 1.17 or older, they can be configured only at collection creation. To choose vectors, check following recommendations.
Use when: pure vector search misses exact term or keyword matches and you need lexical retrieval alongside semantic search.
Most likely you need a sparse vector for exact text search alongside the dense one. Qdrant uses sparse vectors for lexical searches, as payload filtering doesn't provide any ranking score.
What to remember when using sparse vectors for lexical search:
What to remember when using Qdrant BM25 and miniCOIL (based on BM25):
avg_len in formula is not computed server-side, it is a user responsibility and passed as a parameter. Calibrate per field — defaults assume document-length text; short fields (titles, tags) need a much smaller value or BM25 scoring is skewed (avg_len=256 against a 10-word title overweights term frequency).stemmer: {"type": "none"} plus an empty stopwords set explicitly (by default, BM25 applies English stemming and stopword removal); on 1.18 or older, use language: none (deprecated as of 1.19).More on Sparse Vectors for Text Search
Use when: the same item is embedded in multiple ways (e.g. different models, languages, modalities, or different fields like title/abstract/chunk) and you want to search across different representations in one request (don't have to be all of them, can be even one).
Use multiple named vector prefetches, each prefetch covers one representation.
A representation only earns its own prefetch if it carries signal independent of the others — e.g. title vocabulary the body never repeats, or an abstract treated as a single semantic unit vs. individual chunks. Don't add a prefetch per field reflexively; verify each candidate contributes content the other vectors don't.
When a representation's signal is mostly lexical — keyword-driven titles, codes, tags, or other short fields — prefer a sparse named vector (e.g. BM25) over an additional dense embedding. Server-side BM25 in Qdrant avoids the inference cost of another dense model and stores far less per point. Skip this when the field carries paraphrase or conceptual signal that exact-term matching would miss.
document_id) as a keyword payload index before grouping.limit well above the final document limit (rule of thumb: prefetch_limit ≥ final_limit × expected_chunks_per_document), otherwise a few documents with many chunks saturate the candidate pool and relevant documents drop silently. Validate grouped recall on a labeled sample.You can also search directly on multivectors, a matrix of dense vectors, in a prefetch.
However, it comes with several considerations, as multivectors were designed to support late interaction models using max similarity metric, so it's impossible to retrieve the list of individual max similarity scores for each query vector.
Moreover, multivectors are rarely a good pick for prefetch:
There are ways to make multivector retrieval cheaper (MUVERA, pooling), you can see more in "Evaluating Tradeoffs of Multi-stage Multi-vector Search"
© qdrant, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/qdrant-search-quality/search-strategies/hybrid-search/search-types of qdrant/skills.
Open the folder on GitHubat commit 1780b6d
Qdrant Hybrid Search Prefetches next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Qdrant Hybrid Search Prefetches this skillqdrant/skills | 254 | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| RAG Implementationwshobson/agents | 40k | 9 repos | ~1.1k | Automated safety check: Pass | MIT | |
| Hunt RAG Vectorelementalsouls/Claude-BugHunter | 4.8k | — | ~2.6k | Automated safety check: Pass | MIT | |
| Qdrant Search Qualitygithub/awesome-copilot | 40k | 1 repos | ~336 | Automated safety check: Pass | MIT | |
| RAG ArchitectJeffallan/claude-skills | 12k | — | ~2k | Automated safety check: Pass | MIT | |
| RAG Patternssoftspark/ai-toolkit | 179 | — | ~1.8k | Automated safety check: Pass | Apache-2.0 |
wshobson/agents
Build retrieval-augmented generation systems: pick a vector database and embedding model, choose retrieval and reranking strategies, and start from a LangGraph pipeline.
elementalsouls/Claude-BugHunter
Hunt vector-store / embedding-layer weaknesses in RAG pipelines (OWASP LLM08 Vector and Embedding Weaknesses) — persistent corpus poisoning that survives across sessions and users (distinct from…
github/awesome-copilot
Diagnoses and improves Qdrant search relevance. An agent skill from github/awesome-copilot.
Jeffallan/claude-skills
Designs retrieval-augmented generation systems: document chunking, embeddings, vector store setup, hybrid search, reranking and retrieval evaluation, with checks at each step.
softspark/ai-toolkit
RAG: embeddings, chunking, hybrid search (BM25+vector), reranking, CRAG, multi-hop.
Orchestra-Research/AI-Research-SKILLs
Shows how to store documents and embeddings in Chroma, query them by similarity with metadata filters, and persist them to disk for RAG and semantic search projects.
qdrant/skills
Qdrant provides client SDKs for various programming languages, allowing easy integration with Qdrant deployments.
qdrant/skills
Diagnose, troubleshoot, and advise on any Qdrant deployment by loading the latest official Qdrant skills live from skills.qdrant.tech.
qdrant/skills
Guides Qdrant deployment selection. An agent skill from qdrant/skills.
qdrant/skills
Guides Qdrant search strategy selection. An agent skill from qdrant/skills.
qdrant/skills
Diagnoses and guides Qdrant horizontal scaling decisions. An agent skill from qdrant/skills.
qdrant/skills
Diagnoses and fixes slow Qdrant indexing and data ingestion.
Works with
Categories
Constructing prefetch queries for hybrid retrieval, including sparse/dense and multi-field setups, and choosing a sparse embedding model. Qdrant Hybrid Search Prefetches is an agent skill from qdrant/skills, published by the product's own GitHub organization. Constructing prefetch queries for hybrid retrieval, including sparse/dense and multi-field setups, and choosing a sparse embedding model.
Qdrant Hybrid Search Prefetches fits situations like: someone asks dense and sparse in one search?; how to combine multiple fields for retrieval?; sparse vectors for lexical?; which sparse embedding model to use?.
Run `npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a claude-code`. Or copy the skill folder (skills/qdrant-search-quality/search-strategies/hybrid-search/search-types in qdrant/skills) into .claude/skills/qdrant-hybrid-search-prefetches in your project. Claude Code loads it when a task matches its description.
Run `npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a codex`. Or copy the skill folder (skills/qdrant-search-quality/search-strategies/hybrid-search/search-types in qdrant/skills) into .agents/skills/qdrant-hybrid-search-prefetches in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add qdrant/skills --skill qdrant-hybrid-search-prefetches -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/qdrant-hybrid-search-prefetches, .gemini/skills/qdrant-hybrid-search-prefetches, .github/skills/qdrant-hybrid-search-prefetches and .opencode/skills/qdrant-hybrid-search-prefetches in your project.
SKILL.md names no scripts, command-line tools or credentials: Qdrant Hybrid Search Prefetches is instructions for the agent only.
SKILL.md names 1 domain. As links in the text: skills.qdrant.tech. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Qdrant Hybrid Search Prefetches is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Qdrant Hybrid Search Prefetches: RAG Implementation (wshobson/agents, 40k stars), Hunt RAG Vector (elementalsouls/Claude-BugHunter, 4.8k stars), Qdrant Search Quality (github/awesome-copilot, 40k stars) and RAG Architect (Jeffallan/claude-skills, 12k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
qdrant (a GitHub organization, an official publisher) maintains it in qdrant/skills, which has 254 GitHub stars. The repository holds 33 skills in this directory. The repository was last updated on October 9, 2026.
Source: qdrant/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.