Qu'est-ce que la génération augmentée de récupération (RAG, retrieval-augmented generation) ?

Alan Zeichick | Responsable de la stratégie du contenu technologique | 19 septembre 2023

L'intelligence artificielle générative (IA) excelle dans la création de réponses textuelles basées sur de grands modèles de langage (LLM), où l'IA est entraînée sur un grand nombre de points de données. La bonne nouvelle est que le texte généré est souvent facile à lire et fournit des réponses détaillées qui sont largement applicables aux questions posées par le logiciel, habituellement appelées invites.

La mauvaise nouvelle est que les informations utilisées pour générer la réponse sont limitées aux informations utilisées pour entraîner l'IA, souvent un LLM généralisé. Les données du LLM peuvent être périmées depuis des semaines, des mois ou des années et, dans un chatbot d'IA d'entreprise, elles peuvent ne pas prendre en compte des informations spécifiques aux produits ou services de l'entreprise. Cela peut conduire à des réponses incorrectes qui érodent la confiance en la technologie de certains clients et collaborateurs.

Qu'est-ce que la génération augmentée de récupération (RAG, retrieval-augmented generation) ?

C'est là qu'intervient la génération augmentée de récupération (RAG). La RAG fournit un moyen d'optimiser le résultat d'un LLM avec des informations ciblées, sans modifier le modèle sous-jacent lui-même ; ces informations ciblées peuvent être plus récentes que le LLM ainsi que spécifiques à une entreprise et à un secteur particuliers. Cela signifie que le système d'IA générative peut fournir des réponses contextuellement appropriées aux invites et les baser sur des données extrêmement récentes.

La RAG a d'abord attiré l'attention des développeurs d'IA générative suite à la publication de « Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks », un article publié en 2020 par Patrick Lewis et une équipe de Facebook AI Research. Le concept de la RAG a été adopté par de nombreux chercheurs universitaires et industriels, qui le considèrent comme un moyen d'améliorer considérablement la valeur des systèmes d'IA générative.

Explication de la génération augmentée de récupération

Prenez l'exemple d'une ligue sportive qui souhaite que les fans et les médias puisse utiliser un chat pour accéder à ses données et obtenir des réponses à leurs questions sur les joueurs, les équipes, l'histoire et les règles du sport, ainsi que les statistiques et les classements actuels. Un LLM généralisé pourrait répondre à des questions sur l'histoire et les règles ou peut-être décrire le stade d'une équipe donnée. Il ne serait pas en mesure de discuter du jeu de la nuit dernière ou de fournir des informations actuelles sur la blessure d'un athlète, parce que le LLM n'aurait pas ces informations. Étant donné qu'un LLM a besoin d'une puissance de calcul importante pour se réentraîner, il n'est pas possible de maintenir le modèle à jour.

En plus du LLM assez statique, la ligue sportive possède ou peut accéder à de nombreuses autres sources d'information, y compris les bases de données, les entrepôts de données, les documents contenant les biographies des joueurs et les flux d'actualités détaillées concernant chaque jeu. La RAG permet à l'IA générative d'assimiler ces informations. Désormais, le chat peut fournir des informations plus opportunes, plus adaptées au contexte et plus précises.

En termes simples, la RAG aide les LLM à donner de meilleures réponses.

Points à retenir

  • La RAG est une technique d'intelligence artificielle relativement nouvelle qui peut améliorer la qualité de l'IA générative en permettant aux grands modèles de langage (LLM) d'exploiter des ressources de données supplémentaires sans réentraînement.
  • Les modèles de RAG créent des référentiels de connaissances basés sur les données appartenant à l'entreprise, et les référentiels peuvent être continuellement mis à jour pour aider l'IA générative à fournir des réponses contextuelles et opportunes.
  • Les chatbots et autres systèmes conversationnels qui utilisent le traitement du langage naturel peuvent grandement bénéficier de la RAG et de l'IA générative.
  • La mise en œuvre de la RAG nécessite des technologies telles que des bases de données vectorielles, qui permettent le codage rapide de nouvelles données, et des recherches sur ces données pour alimenter le LLM.

Comment fonctionne la génération augmentée de récupération ?

Prenez en compte toutes les informations dont dispose une entreprise : les bases de données structurées, les PDF non structurés et d'autres documents, les blogs, les flux d'actualités, les transcriptions des discussions des sessions passées du service client. Dans la RAG, cette grande quantité de données dynamiques est convertie dans un format commun et stockée dans une bibliothèque de connaissances accessible au système d'IA générative.

Les données de cette bibliothèque de connaissances sont ensuite traitées en représentations numériques à l'aide d'un type spécial d'algorithme appelé modèle de langage intégré et stockées dans une base de données vectorielle, qui peut être rapidement recherchée et utilisée pour récupérer les informations contextuelles correctes.

La RAG et les grands modèles de langages (LLM)

Maintenant, disons qu'un utilisateur final envoie au système d'IA générative une invite spécifique, telle que : « Où sera joué le match de ce soir, qui sont les joueurs titulaires, et que disent les journalistes à propos de cette rencontre ? » La requête est transformée en vecteur et utilisée pour interroger la base de données de vecteurs, qui extrait des informations pertinentes pour le contexte de cette question. Ces informations contextuelles ainsi que l'invite d'origine sont ensuite introduites dans le LLM, qui génère une réponse textuelle basée à la fois sur ses connaissances généralisées quelque peu obsolètes et sur les informations contextuelles extrêmement opportunes.

Il est intéressant de noter que si le processus de formation du LLM généralisé est long et coûteux, c'est tout à fait l'inverse pour les mises à jour du modèle RAG. De nouvelles données peuvent être chargées dans le modèle de langage intégré et traduites en vecteurs de manière continue et incrémentielle. Les réponses de l'ensemble du système d'IA générative peuvent être renvoyées dans le modèle RAG, améliorant ses performances et sa précision, car il sait comment il a déjà répondu à une question similaire.

La RAG présente aussi l'avantage d'utiliser la base de données vectorielle, ce qui permet à l'IA générative de fournir la source spécifique des données citées dans sa réponse, ce que les LLM ne peuvent pas faire. Par conséquent, s'il y a une inexactitude dans le résultat de l'IA générative, le document qui contient cette information erronée peut être rapidement identifié et corrigé, puis l'information corrigée peut être introduite dans la base de données vectorielle.

En bref, la RAG fournit une rapidité, un contexte et une précision fondés sur des éléments probants de l'IA générative, allant plus loin que ce que le LLM lui-même peut fournir.

Génération augmentée de récupération ou recherche sémantique

La RAG n'est pas la seule technique utilisée pour améliorer la précision de l'IA générative basée sur les LLM. La recherche sémantique est une autre technique qui aide le système d'IA à affiner la signification d'une requête en recherchant une compréhension approfondie des mots et des phrases spécifiques dans l'invite.

La recherche traditionnelle est axée sur les mots-clés. Par exemple, une requête de base sur les espèces d'arbres originaires de France pourrait rechercher dans la base de données du système d'IA les mots-clés « arbres » et « France » et trouver des données qui contiennent les deux mots-clés. Cependant, le système pourrait ne pas vraiment comprendre la notion d'arbres en France et peut donc récupérer trop d'informations, ou pas assez, ou même de mauvaises informations. Cette recherche par mot-clé peut également omettre des informations car la recherche par mot-clé est trop littérale : les arbres originaires de Normandie pourraient être omis, même s'ils sont en France, car ce mot-clé était manquant.

La recherche sémantique va au-delà de la recherche par mot-clé en déterminant la signification des questions et des documents source et en utilisant ce sens pour obtenir des résultats plus précis. La recherche sémantique fait partie intégrante de la RAG.

Utilisation de la RAG dans les applications de discussion

Lorsqu'une personne s'attend à recevoir une réponse instantanée à sa question, il est difficile de battre l'immédiateté et la convivialité d'un chatbot. La plupart des bots sont formés sur un nombre limité d'intentions, c'est-à-dire les tâches ou les résultats souhaités par le client, et ils répondent à ces intentions. Les fonctionnalités RAG peuvent améliorer les bots actuels en permettant au système d'IA de fournir des réponses en langage naturel aux questions qui ne figurent pas dans la liste des intentions.

Le paradigme « poser une question, obtenir une réponse » fait des chatbots un cas d'utilisation parfait pour l'IA générative, pour de nombreuses raisons. Les questions nécessitent souvent un contexte spécifique pour générer une réponse précise, et étant donné que les attentes des utilisateurs de chatbots sur la pertinence et la précision sont souvent élevées, il est évident que les techniques RAG s'appliquent. Pour de nombreuses entreprises, les chatbots peuvent en effet être le point de départ de l'utilisation des RAG et de l'IA générative.

Les questions nécessitent souvent un contexte spécifique pour fournir une réponse précise. Les requêtes des clients sur un nouveau produit, par exemple, ne sont pas utiles si les données se rapportent au modèle précédent et peuvent être trompeuses. Un randonneur qui veut savoir si tel parc est ouvert ce dimanche attend des informations précises sur ce parc en particulier à cette date spécifique.

Avantages de la génération augmentée de récupération

Les techniques RAG peuvent être utilisées pour améliorer la qualité des réponses d'un système d'IA générative aux invites, au-delà de ce qu'un LLM seul peut fournir. Les avantages sont les suivants :

  • La RAG a accès à des informations qui peuvent être plus récentes que les données utilisées pour entraîner le LLM.
  • Les données du référentiel de connaissances de la RAG peuvent être continuellement mises à jour sans entraîner de coûts importants.
  • Le référentiel de connaissances de la RAG peut contenir des données plus contextuelles que celles d'un LLM généralisé.
  • La source de l'information dans la base de données vectorielle de la RAG peut être identifiée. Comme les sources de données sont connues, des informations incorrectes dans la RAG peuvent être corrigées ou supprimées.

Défis liés à la génération augmentée de récupération

Étant donné que la RAG est une technologie relativement nouvelle, proposée pour la première fois en 2020, les développeurs d'IA apprennent toujours à améliorer ses mécanismes de récupération d'informations dans l'IA générative. Les principaux défis sont les suivants :

  • Amélioration des connaissances organisationnelles et de la compréhension de cette toute nouvelle technologie qu'est la RAG
  • Augmentation des coûts : bien que la mise en oeuvre de l'IA générative avec la RAG est plus coûteux que l'utilisation d'un LLM seul, il s'agit d'un meilleur investissement à long terme en raison du réentrainement fréquent du LLM
  • Détermination de la meilleure façon de modéliser les données structurées et non structurées au sein de la bibliothèque de connaissances et de la base de données vectorielle
  • Développement des exigences permettant d'introduire progressivement des données dans le système RAG
  • Mise en place des processus pour traiter les rapports d'inexactitudes et pour corriger ou supprimer ces sources d'information dans le système RAG

Exemples de génération augmentée de récupération

Il existe de nombreux exemples possibles d'IA générative augmentée par RAG.

Cohere, un leader dans le domaine de l'IA générative et la RAG, a écrit sur un chatbot qui peut fournir des informations contextuelles sur une location de vacances dans les îles Canaries, y compris des réponses factuelles sur l'accessibilité à la plage, les sauveteurs des plages voisines et l'existence de terrains de volleyball accessibles à pied.

Oracle a décrit d'autres cas d'utilisation pour la RAG, tels que l'analyse de rapports financiers, l'aide à la découverte de gaz et de pétrole, l'examen des transcriptions des échanges avec les clients des centres d'appels et la recherche de documents de recherche pertinents dans les bases de données médicales.

L'avenir de la génération augmentée de récupération

À l'heure actuelle, alors que la RAG en est à ses débuts, la technologie est utilisée pour fournir des réponses opportunes, précises et contextuelles aux requêtes. Ces cas d'utilisation sont adaptés aux chatbots, aux e-mails, aux SMS et à d'autres applications conversationnelles.

À l'avenir, les orientations possibles pour la technologie RAG seraient d'aider l'IA générative à prendre les mesures appropriées en fonction des informations contextuelles et des invites utilisateur. Par exemple, un système d'IA augmenté par RAG pourrait identifier la location de vacances à la plage la mieux notée sur les îles Canaries, puis commencer à réserver une cabine de deux chambres accessible à pied depuis la plage à l'occasion d'un tournoi de volley-ball.

La RAG pourrait également apporter son aide avec des questions plus complexes. Aujourd'hui, l'IA générative pourrait être en mesure d'informer un salarié de la politique de remboursement des frais de formation de l'entreprise ; la RAG pourrait ajouter plus de données contextuelles pour transmettre au collaborateurs le nom des écoles voisines dont les cours s'inscrivent dans cette politique et recommander peut-être des programmes adaptés à ses missions et à sa dernière formation, voire l'aider à postuler à ces programmes et à lancer une demande de remboursement.

L’IA générative avec Oracle

Oracle propose divers services avancés d'IA cloud, notamment OCI Generative AI service exécuté sur Oracle Cloud Infrastructure (OCI). Les offres Oracle incluent des modèles fiables basés sur les données uniques de votre entreprise et les connaissances du secteur. Les données client ne sont pas partagées avec les fournisseurs de LLM ou vues par d'autres clients, et les modèles personnalisés entraînés sur les données client ne peuvent être utilisés que par ce client.

En outre, Oracle intègre l'IA générative dans son large éventail d'applications cloud, et des fonctionnalités d'IA générative sont à la disposition des développeurs qui utilisent OCI et l'ensemble de son portefeuille de bases de données. De plus, les services d'IA d'Oracle offrent des performances et une tarification prévisibles à l'aide de clusters d'IA à locataire unique dédiés à votre utilisation.

Ayant fait l'objet d'une actualité haletante au cours de l'année écoulée, la puissance et les capacités des LLM et de l'IA générative sont largement connues et comprises. La génération augmentée de récupération s'appuie sur les avantages des LLM en les rendant plus opportuns, plus précis et plus contextuels. Pour les applications métier de l'IA générative, la RAG est une technologie importante à surveiller, étudier et piloter.

En quoi Oracle est-il le plus adapté à l'IA générative ?

Oracle propose une plateforme de données moderne et une infrastructure d'IA à faible coût et à hautes performances. Des facteurs supplémentaires, tels que des modèles puissants et performants, une sécurité des données inégalée et des services d'IA intégrés, démontrent pourquoi l'offre d'IA d'Oracle est véritablement conçue pour les entreprises.

FAQ sur la génération augmentée de récupération

La RAG est-elle la même chose que l'IA générative ?

Non, la génération augmentée de récupération est une technique qui peut fournir des résultats plus précis aux requêtes qu'un grand modèle de langage, car la RAG utilise des connaissances externes aux données déjà contenues dans le LLM.

Quel type d'information est utilisé dans la RAG ?

La RAG peut intégrer des données provenant de nombreuses sources, telles que des bases de données relationnelles, des référentiels de documents non structurés, des flux de données Internet, des flux d'actualités multimédias, des transcriptions audio et des journaux de transactions.

Comment l'IA générative utilise-t-elle la RAG ?

Les données provenant de sources de données d'entreprise sont intégrées dans un référentiel de connaissances, puis converties en vecteurs, qui sont stockés dans une base de données vectorielle. Lorsqu'un utilisateur final effectue une requête, la base de données vectorielle extrait les informations contextuelles pertinentes. Ces informations contextuelles, ainsi que la requête, sont envoyées au grand modèle de langage, qui tire parti du contexte pour créer une réponse plus opportune, précise et contextuelle.

Une RAG peut-elle citer des références pour les données qu'elle récupère ?

Oui. Les bases de données vectorielles et les référentiels de connaissances utilisés par la RAG contiennent des informations spécifiques sur les sources d'information. Cela signifie que les sources peuvent être citées, et s'il y a une erreur dans l'une de ces sources, elles peuvent être rapidement corrigées ou supprimées afin que les requêtes suivantes ne renvoient pas ces informations incorrectes.