Définition
La génération augmentée par récupération (RAG) est une méthode où un système récupère d'abord des passages pertinents dans une collection de documents, puis les donne à un LLM avec la question, pour que la réponse s'appuie sur ce texte.
Comment fonctionne la génération augmentée par récupération
Le terme vient d’un article de 2020 de Lewis et ses collègues. Il combinait un modèle séquence à séquence pré-entraîné avec un index interrogeable de passages de Wikipédia. Un module de récupération neuronal cherchait les passages pertinents pour l’entrée, et le générateur s’en servait pour produire sa sortie. L’idée est plus ancienne et plus large que cette conception précise, et le nom recouvre aujourd’hui de nombreux systèmes.
Une version typique comporte quatre étapes.
- Indexer. Les documents sont découpés en passages et stockés dans un index interrogeable, souvent sous forme de plongements numériques pour que la recherche fonctionne sur le sens autant que sur les mots.
- Récupérer. La question de l’utilisateur est transformée en requête, et les passages les plus proches sont renvoyés.
- Augmenter. Ces passages sont placés dans l’entrée du LLM, à côté de la question et des instructions.
- Générer. Le modèle rédige une réponse, idéalement en n’utilisant que ce que disent les passages.
L’avantage est qu’on peut changer ce que sait le système en changeant les documents, sans réentraîner de modèle. Une base de connaissances est la collection de documents qu’interroge un tel système.
La récupération ne garantit pas une réponse correcte. La recherche peut renvoyer le mauvais passage ou aucun, les passages peuvent se contredire et le modèle peut quand même ajouter des choses qui n’y figurent pas. La récupération réduit l’hallucination et ne la supprime pas.
Pourquoi c’est important pour les agents vocaux
Pendant un appel, la récupération a lieu pendant que l’appelant attend. La recherche et l’entrée plus longue s’ajoutent à la latence vocale : les équipes gardent donc les passages courts, limitent leur nombre et ne cherchent parfois que lorsque la question l’exige.
La requête part en outre d’une transcription de parole. Un nom de produit mal entendu ou une phrase inachevée peut envoyer la recherche au mauvais endroit. Reformuler la question avant la recherche et donner au moteur de reconnaissance une liste de termes attendus aident tous deux.
La sortie s’entend et ne se lit pas. Un appelant ne voit ni liste de sources ni long extrait : l’agent doit donc transformer le texte récupéré en une ou deux phrases orales et dire clairement quand rien de pertinent n’a été trouvé.
Exemple
Une récupération illustrative pour la ligne d’une clinique :
- Appelant : « Prenez-vous sans rendez-vous le samedi ? »
- Passage récupéré : « Horaires du samedi : de 9 h à 13 h, sur rendez-vous uniquement. »
- Agent : « Le samedi, c’est uniquement sur rendez-vous, de 9 h à 13 h. Souhaitez-vous en réserver un ? »