Retrieval-Augmented Generation: comment adapter soi-même les modèles d’IA génératives comme GPT ou LLama.

17/01/2025 | Paroles d’experts, Société & tendances

Temps de lecture  5 minutes

Les grands modèles de langage (LLMs), comme ChatGPT, sont évidemment limités par le choix des données qui ont servi à les entraîner. Le RAG vise alors à générer des réponses plus précises et actualisées que ces modèles très génériques.

Courant 2025 paraîtra la quatrième édition de notre ouvrage “Data Scientist et langage R” qui va s’enrichir des dernières techniques d’IA génératives et, parmi celles-ci, la plus utile à savoir coder aujourd’hui : le RAG ou Retrieval-Augmented Generation. Revenons un peu sur cette technique…

Par Eva et Henri Laude, spécialistes de l’IA, de la Data science (entre autres) et auteurs aux Editions ENI (voir tous leurs ouvrages)

Introduit en 2020, le Retrieval-Augmented Generation est une technique hybride qui exploite des bases de données externes en conjonction avec un modèle génératif que l’on veut améliorer ou spécialiser au regard d’un contexte particulier (un sujet précis, les documents confidentiels d’une organisation …). Il s’agit de d’intégrer des données nouvelles dans le modèle déjà entraîné sans entacher sa cohérence ou son efficacité.

Cette technique est peu coûteuse et à la portée de toutes les organisations, car elle ne mobilise pas les moyens informatiques monstrueux nécessaires à l’entraînement d’un modèle génératif fondamental et polyvalent (foundation model) comme les GPT, les LLama …

Les principales étapes d’un tel processus sont la récupération d’informations pertinentes (retriever), puis  la génération augmentée par ces informations.

schema RAG

Limiter les biais de l’IA

 

Pour manipuler les informations, les données d’un LLM sont pré-traitées et indexées sous forme de grands vecteurs encodés dans une forme accessible permettant de capturer les relations sémantiques entre les mots des textes (on parle d’embedding).

Dans le cas du RAG, ce réseau sémantique appliqué à la question que l’on se pose facilite le travail du retriever qui identifie et classe les documents les plus pertinents en fonction de la requête émise par l’utilisateur, sans pour autant rester servilement “scotché”  à une liste de mots clés. Tout ceci produit une réponse complète et cohérente, tenant compte à la fois du contexte de la requête, de connaissances externes et  des immenses compétences du  foundation model.

Quand les documents retrouvés ou imposés au RAG sont pertinents, le LLM n’est alors plus enfermé dans des données statiques, ce qui permet des réponses plus en phase avec le monde réel et limite le phénomène d’hallucination des modèles en les empêchant de sortir du champ sémantique que l’on désire explorer.

L’utilité du RAG est d’autant plus grande qu’il est important pour l’utilisateur de mettre en œuvre un dialogue de qualité pour échanger avec le modèle LLM. Par exemple, dans le domaine de la santé, un système RAG accédera aux dernières études de cas et permettra à un médecin d’étendre le champ de ses diagnostics sans parcourir toute la littérature médicale.

Correctifs, spéculatifs, fusionnels : les RAG en pleine évolution

Les processus RAG ne cessent de s’améliorer, souvent en intégrant un mécanisme de validation permettant de  corriger les réponses en comparant les informations générées à des sources fiables avant de les présenter : on parle alors de “RAG correctif“.

Ces processus correctifs ne sont pas évidents à mettre en place, car il faut disposer de questions et de réponses issues du domaine qui permettront la mise en place d’un retrieval evaluator qui qualifiera les réponses comme étant correctes, incorrectes ou ambiguës. Les couples “question versus réponse correcte” permettront l’amélioration du modèle (knowledge refinement) et les autres inciteront à itérer le processus de recherche d’informations complémentaires.

Plus sophistiqués encore on trouve des RAG spéculatifs qui produisent plusieurs réponses potentielles et sélectionnent la plus pertinente via un mécanisme de rétroaction, particulièrement utile dans des contextes ambigus.

On trouve également des RAG fusionnels qui synthétisent des informations issues de multiples sources afin de créer une réponse équilibrée, comme le ferait un groupe d’experts du domaine. Comme dans une discussion entre humains, ceux-ci étendent ou transforment parfois le libellé et le champ sémantique de la question posée. Les contradictions sont résolues par une introspection guidée, typiquement une forme de chaîne de raisonnement (CoT, pour Chain of Thought). Ce questionnement permet de mettre en évidence diverses  incohérences, ce qui favorise une meilleure inexplicabilité du résultat.  Comme dans la  maïeutique de Socrate, on s’appuie donc ici sur une certaine autonomie cognitive de l’apprenant pour émerger à la connaissance.

Notez qu’il ne faut pas confondre RAG et “fine tuning” : le RAG travaille sur l’intégration de nouvelles données, alors que les techniques de fine tuning visent à améliorer les paramètres du modèle sur des grands ensembles de données ciblées, ce qui est plus coûteux. Évidemment, de nombreux travaux alternent ou intègrent simultanément ces deux techniques, mais nous suggérons au développeurs IA en herbe de commencer par le RAG avant de s’attaquer au fine tuning.

Vous l’aurez compris, le travail sur l’amélioration des modèles relève tout aussi bien des sciences cognitives, de la philosophie de la connaissance, que de la programmation ou des mathématiques de l’intelligence artificielle. Pour autant, chacun peu bricoler dans son coin une nouvelle IA et participer à peu de frais à cette petite révolution.

Pour aller plus loin, ne manquez pas la sortie de notre livre « Data Scientist et langage R » (4e édition) prévue en 2025 aux Editions ENI et sur la plateforme ENI elearning pour les professionnels (si vous êtes abonnés aux newsletters et réseaux sociaux des Editions ENI ou des nôtres, vous en serez informés 😉).

D’ici là, la 3e édition reste complètement d’actualité pour qui souhaite une formation complète sur les data sciences et l’usage du langage R :

livre Data Scientist et langage R

Pour aller plus loin

Scratch et Raspberry Pi Projets maker pour s'initier à l'électronique et à la robotique

Livre

Business Intelligence avec Excel et Copilot Des données brutes à l’analyse stratégique
Flutter Développez vos applications mobiles multiplateformes avec Dart

Livre

L’IA et la génération de texte Comprendre et maîtriser ChatGPT, Gemini, Perplexity, Mistral, Claude
Flutter Développez vos applications mobiles multiplateformes avec Dart

Livre

Business Intelligence avec Python Créez vos outils BI de A à Z
Flutter Développez vos applications mobiles multiplateformes avec Dart

Livre

Microsoft Copilot Optimisez votre productivité en collaborant avec l’IA

POUR LES ENTREPRISES

Découvrez nos solutions de formation pour vos équipes et apprenants :

Réfléchir en amont
elearning

En e-learning avec
notre offre pour les professionnels

formateur

Avec un formateur, en présentiel ou à distance

Restez connecté !

Suivez-nous
LinkedIn
Youtube
X
Facebook
Instagram
Contactez-nous
E-mail