À suivreGuide suivant
RAG spéculatif et rédaction augmentée par récupération
Technique
GUIDE Technique
La récupération de documents parents, également appelée récupération de petit à grand, recherche sur de petits morceaux de texte précis, mais transmet au modèle de langage la plus grande section ou le document d'où provient chaque morceau.
C'est important car cela supprime le compromis habituel en matière de segmentation : les petits fragments correspondent avec précision aux requêtes et le parent plus grand donne au modèle suffisamment de contexte pour répondre correctement.
Le regroupement de taille fixe impose un compromis. De petits morceaux, par exemple quelques phrases, produisent des intégrations nettes : le vecteur représente une idée, donc une requête sur cette idée lui correspond étroitement. Mais un morceau de deux phrases contient rarement suffisamment de contexte pour que le modèle puisse répondre correctement ; il peut omettre la définition trois paragraphes plus tôt ou l'exception dans la phrase suivante. Les gros morceaux contiennent ce contexte, mais leurs incorporations brouillent plusieurs idées, de sorte que la récupération devient moins précise et le passage pertinent peut être surclassé par un morceau qui est simplement sur le sujet. La récupération petite à grande divise les deux tâches. Le système indexe les petits morceaux enfants pour la recherche, et chaque enfant conserve un pointeur vers un parent plus grand : une section, une page ou l'ensemble du document. Au moment de la requête, il trouve les meilleurs enfants, puis recherche et renvoie leurs parents. Si plusieurs enfants partagent un parent, le parent est envoyé une seule fois, ce qui supprime également les doublons. ParentDocumentRetriever de LangChain implémente cela avec un magasin de vecteurs pour les enfants et un magasin de documents séparé pour les parents. LlamaIndex propose des modèles associés : la récupération par fenêtre de phrase, qui renvoie une phrase correspondante plus un nombre fixe de phrases voisines, et la récupération par fusion automatique, qui remplace de nombreux fragments de feuilles récupérés par leur nœud parent partagé lorsqu'un nombre suffisant d'entre eux correspondent. Cette approche tend à éviter le regroupement de taille fixe sur des documents structurés tels que des manuels, des contrats, des politiques et des manuels scolaires, dont la signification dépend de la section environnante. Cela est moins utile lorsque les documents sont déjà courts ou lorsque les parents sont si volumineux que certains d'entre eux débordent de la fenêtre contextuelle ou enfouissent la réponse dans un texte non pertinent. Une idée fausse courante est qu’il s’agit simplement d’utiliser des morceaux plus gros. Ce n'est pas le cas : l'unité de récupération et l'unité de génération sont délibérément de tailles différentes, vous conservez donc une correspondance précise sans priver le modèle de contexte.
Les décisions en matière d'architecture déterminent les performances et les coûts d'exploitation pendant des années.
La formation technique aide les équipes à choisir la bonne pile, pas seulement la plus récente.
De meilleurs choix d’ingénierie réduisent les incidents de fiabilité en production.
Le petit au grand devient une valeur par défaut plutôt qu'une astuce, et les principaux frameworks exposent déjà la récupération hiérarchique ou fenêtrée comme options de configuration. Des fenêtres contextuelles plus grandes réduisent la pénalité liée à l'envoi de parents plus grands, ce qui rend le modèle moins coûteux à adopter. Des questions restent ouvertes sur le choix automatique des limites parentales, par exemple en utilisant l'analyse de la mise en page des documents ou la segmentation apprise au lieu de s'appuyer sur les titres. Il est de plus en plus associé à des reclassements et à des approches d'intégration contextuelle qui tentent de donner aux petits fragments une conscience de leur environnement au moment de l'indexation. Les tests sur vos propres documents, plutôt que sur des références générales, restent le moyen fiable de choisir la taille des enfants et des parents.
Un robot d'aide informatique interne indexe chaque étape de dépannage en tant que bloc enfant distinct, mais lorsqu'une étape correspond, il renvoie l'intégralité de la procédure. Le modèle ne demande donc pas aux utilisateurs d'effectuer l'étape 4 sans les étapes 1 à 3.
Un outil de recherche juridique associe une seule clause concernant les délais de préavis de résiliation, puis transmet au modèle la section complète du contrat, y compris les définitions et les exceptions qui modifient la signification de la clause.
Un assistant de cours universitaire recherche des morceaux de phrases dans les notes de cours et renvoie la page environnante, de sorte que les réponses sur une formule incluent également les conditions dans lesquelles elle s'applique.
Un assistant de réclamation d'assurance récupère plusieurs petites correspondances d'un document de police, les regroupe par parent et envoie cette section de police une seule fois au lieu de cinq fragments qui se chevauchent.
L’optimisation d’un benchmark peut masquer des faiblesses plus larges du système.
Les coûts d’infrastructure et de maintenance sont souvent sous-estimés.
Les lacunes en matière de sécurité et d’observabilité peuvent se creuser à mesure que les systèmes deviennent plus complexes.
Définissez les objectifs de latence, de qualité et de coût avant la mise en œuvre.
Benchmark dans des conditions de charge et de données réalistes.
Surveillance des instruments pour détecter les erreurs, la dérive et l'impact sur l'utilisateur.
Préparez les chemins de restauration et de réponse aux incidents avant la mise à l’échelle.
Free newsletter
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
La récupération de documents parents, également appelée récupération de petit à grand, recherche sur de petits morceaux de texte précis, mais transmet au modèle de langage la plus grande section ou le document d'où provient chaque morceau. C'est important car cela supprime le compromis habituel en matière de segmentation : les petits fragments correspondent avec précision aux requêtes et le parent plus grand donne au modèle suffisamment de contexte pour répondre correctement.
Les petits morceaux donnent des intégrations ciblées mais trop peu de contexte ; de gros morceaux donnent du contexte mais des intégrations floues. Small to big recherche petit et renvoie gros pour obtenir les deux.
Les enfants sont indexés pour une correspondance précise ; les parents ne sont recherchés qu'après les correspondances d'un enfant.
Le regroupement par parent signifie que la section est incluse une fois, ce qui enregistre les jetons et supprime les fragments en double.
Les enfants sont intégrés dans un magasin de vecteurs pour la recherche, tandis que les parents à part entière sont assis dans un magasin de documents et sont récupérés par identification.
La récupération de fenêtre de phrase correspond au niveau de la phrase, puis s'étend à une fenêtre de phrases environnantes pour fournir du contexte.
Continuez à apprendre
Plus de guides sélectionnés pour ce sujet
À suivreGuide suivant
RAG spéculatif et rédaction augmentée par récupération
Technique