Retrieval is the layer of a RAG system that finds candidate passages before Claude ever sees them, and the two families of retrievers fail in opposite ways. Keyword search (typically the BM25 ranking algorithm — a decades-old, well-understood relevance formula) is precise on exact terms: product codes, error strings, names, statute numbers. Semantic search (dense vectors — embeddings that place similar meanings near each other) handles paraphrase: a user asking "can I get my money back?" finds the "refund policy" section that shares no words with the question. Hybrid retrieval runs both and merges the results. This article is mostly architecture guidance — retrieval happens entirely outside Claude — with the Claude-specific integration points sourced from official documentation.
The standard hybrid architecture
The recommended shape has four stages, all of them deterministic infrastructure you own:
1. Index twice. Every chunk (see chunking strategies) goes into a keyword index and a vector index. Most enterprise search stacks and managed search services on the major clouds support both index types; check your provider's documentation for specifics.
2. Query both, in parallel. Take the top 20–50 candidates from each side. Recall is cheap at this stage; precision comes later.
3. Merge. The common technique is reciprocal rank fusion — score each document by the sum of the reciprocals of its ranks in each list — because it needs no score normalization between two systems whose scores aren't comparable. A weighted blend works too once you have evaluation data to tune the weights.
4. Re-rank, then cut. A re-ranker rescores the merged candidates against the query and keeps the best handful. A dedicated re-ranking model is the classic choice; a capable, cheap LLM pass is an increasingly common one — Haiku 4.5 at $1/$5 per million tokens is priced for exactly this kind of high-volume judgment call, scoring each candidate's relevance before the main model answers.
When hybrid actually beats either alone
Hybrid earns its complexity when your query mix is genuinely bimodal: some queries are identifier-shaped ("error TLS-4402", "clause 12.3(b)"), others are meaning-shaped ("why was my order cancelled?"). Support knowledge bases, legal and policy corpora, and product catalogs typically are. If your logs show queries are overwhelmingly one kind, run one retriever well instead of two badly — and note that Anthropic's own prompt-engineering guidance stresses building empirical tests against clear success criteria before optimizing; a few hundred labeled query-passage pairs will tell you whether hybrid moves your numbers.
Where Claude fits
Generation with citations. Retrieved chunks enter the request as document blocks with "citations": {"enabled": true}; the documented RAG guidance is one chunk per plain-text document block for sentence-level citations. Citations are GA on the Claude API, Claude Platform on AWS, Amazon Bedrock, Google Vertex AI, and Microsoft Foundry — so this generation layer is portable across all four 3P platforms even though your retrieval stack lives entirely in your own infrastructure.
Generous context loosens the precision knife-edge. With 1M-token context windows on most current models (200K on Haiku 4.5), you can pass 10–20 re-ranked chunks rather than gambling on the top 3. Follow the long-context guidance — retrieved content at the top in <document> tags with <source> subtags, question at the end, which can improve response quality by up to 30%.
A precedent from Anthropic's own tooling. The pattern of "regex/BM25 for lookup, ranked results into context" is one Anthropic itself ships: the server-side tool search tool offers exactly a BM25 variant and a regex variant for discovering relevant tool definitions on demand. That tool solves tool discovery, not document retrieval — but it's a useful signal that keyword-style ranking into a model's context is a first-class pattern, not a legacy compromise.
Where to go next
If hybrid sounds heavier than your corpus deserves, citation grounding without embeddings shows the no-vector-store alternatives. The platform overview covers which cloud door you're building behind.