La récupération traditionnelle (BM25, TF-IDF) fait correspondre les mots-clés de la requête aux mots-clés des documents, pondérés par la fréquence et l'importance. C'est rapide, interprétable et excellent pour les correspondances exactes. La récupération sémantique encode requêtes et documents comme des embeddings et trouve les plus proches voisins dans l'espace vectoriel. Elle gère la paraphrase et la similarité conceptuelle mais peut manquer des correspondances exactes de mots-clés. La récupération hybride combine les deux, typiquement en utilisant la fusion de rang réciproque pour fusionner les résultats.
Pour le RAG, les documents doivent être découpés en fragments avant l'embedding. La taille des fragments est une décision de conception critique : trop petits et tu perds le contexte, trop grands et tu dilues l'information pertinente avec du bruit. Les stratégies courantes incluent les fragments de taille fixe avec chevauchement, le découpage par phrase, le découpage par paragraphe et le découpage récursif qui respecte la structure du document (en-têtes, sections). L'approche optimale dépend de tes documents et de tes requêtes.
Un pattern courant : récupérer un ensemble large de candidats (disons 50) en utilisant la récupération rapide, puis les reclasser avec un modèle plus précis (mais plus lent). Les reclasseurs cross-encoder (comme Cohere Rerank ou BGE-Reranker) traitent les paires requête-document ensemble, produisant des scores de pertinence plus précis que la similarité d'embedding seule. Ce pipeline à deux étapes équilibre vitesse (récupération initiale rapide) et précision (reclassement précis des meilleurs candidats).