Hybrid Search
La hybrid search est une technique de récupération qui exécute en parallèle une recherche vectorielle dense (sémantique) et une recherche par mots-clés creuse (BM25), puis fusionne les résultats en une seule liste classée. Elle capture à la fois la « similarité de sens » et la « correspondance exacte de tokens » en une seule requête.
La hybrid search est une technique de récupération qui exécute en parallèle une recherche vectorielle dense (sémantique) et une recherche par mots-clés creuse (BM25), puis fusionne les résultats en une seule liste classée. Elle capture à la fois la « similarité de sens » et la « correspondance exacte de tokens » en une seule requête.
Pourquoi c'est important
La recherche vectorielle dense excelle dans les correspondances sémantiques (« ordinateurs portables abordables » ≈ « notebooks économiques ») mais échoue sur les tokens rares comme les codes produit, les SKU et les noms propres. La recherche par mots-clés cible parfaitement les tokens exacts mais manque les reformulations. La hybrid search gagne sur les deux tableaux : les systèmes RAG en production chez Anthropic, OpenAI et Elastic rapportent tous que l'approche hybride surpasse systématiquement chaque approche seule, généralement avec une amélioration du rappel de 10 à 30 % sur des benchmarks de récupération réels.
Comment ça fonctionne
1. Récupération double : la même requête passe par les deux index, un index vectoriel (embeddings denses) et un index inversé (BM25 ou TF-IDF).
2. Normalisation des scores : les scores denses et creux vivent sur des échelles différentes. Ils sont normalisés, par min-max, z-score ou par rang.
3. Fusion : les scores sont combinés en un seul classement. Les méthodes les plus populaires :
- Reciprocal Rank Fusion (RRF) :
score = Σ 1/(k + rank_i), basée sur le rang, sans réglage nécessaire, extrêmement robuste. - Somme pondérée :
α * dense + (1-α) * sparse, nécessite de régler α par domaine. - Fusion apprise : un petit modèle prédit le poids optimal par requête.
4. Reranking optionnel : un cross-encoder reclasse les k meilleurs candidats fusionnés pour une précision finale.
Quand l'utiliser
Vocabulaire spécifique à un domaine : codes médicaux, citations juridiques, références de pièces.
Types de requêtes mixtes : lorsque les utilisateurs recherchent à la fois en langage naturel et par chaînes exactes.
Le rappel de la longue traîne compte : requêtes rares où BM25 brille encore.
Vous n'obtenez aucun résultat avec les vecteurs seuls : souvent un échec de correspondance exacte, l'approche hybride le corrige.
Compromis
Latence : deux index signifient deux requêtes. Atténué par une exécution parallèle.
Stockage des index : vous devez maintenir à la fois un index vectoriel et un index inversé.
Complexité du réglage : la fusion pondérée nécessite des données étiquetées pour le réglage. RRF contourne cela.
Pas toujours un gain : sur les domaines où les embeddings sont très performants (tâches de pure reformulation), l'approche dense seule peut égaler l'approche hybride.
Hybrid Search vs recherche vectorielle pure
| Aspect | Vectorielle pure | Hybride |
|---|---|---|
| Correspondances sémantiques | Forte | Forte |
| Correspondances exactes de tokens | Faible | Forte |
| Tokens rares, SKU | Faible | Forte |
| Infrastructure | Simple | Deux index |
| Gain de rappel typique | Référence | +10 à 30 % |
Les bases de données vectorielles modernes (Pinecone, Weaviate, Qdrant, Elasticsearch) proposent la hybrid search comme fonctionnalité de premier ordre, de sorte que le coût opérationnel est faible.
Sources: