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 agent conversationnel d'IA d'entreprise, elles peuvent ne pas inclure d'informations spécifiques sur les produits ou services de l'entreprise. Cela peut conduire à des réponses incorrectes qui érodent la confiance dans la technologie parmi les clients et les collaborateurs.
C'est là qu'intervient la génération augmentée de récupération (RAG). La RAG fournit un moyen d'optimiser la production 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 à jour 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 actuelles.
La RAG a d'abord attiré l'attention des développeurs d'IA générative après la publication de l'article intitulé « Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks », 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.
Prenons le cas d'une ligue sportive qui veut que ses fans et les médias puissent utiliser un système de clavardage pour accéder à ses données et répondre à des 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éraliste pourrait répondre à des questions sur l'histoire et les règles ou peut-être décrire le stade des différentes équipes. Toutefois, il ne serait pas en mesure de discuter du match d'hier ou de fournir des informations actuelles sur la blessure d'un athlète particulier, parce que le LLM n'aurait pas ces informations. Étant donné qu'un LLM nécessite d'importantes capacités de calcul pour être réentraîné, 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'informations concernant chaque match en profondeur. La RAG permet à l'IA générative d'assimiler ces informations. Désormais, le clavardage peut fournir des informations plus opportunes, plus adaptées au contexte et plus précises.
En résumé, la RAG aide les LLM à donner de meilleures réponses.
Principaux points à retenir
Prenons 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 blogues, les flux d'actualités, les transcriptions des séances de clavardage du service client. Avec la RAG, cette grande quantité de données dynamiques est convertie dans un format courant 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 consultée pour récupérer les informations contextuelles pertinentes.
Maintenant, disons qu'un utilisateur final pose une question spécifique à l'IA, par exemple, « Où aura lieu le match de ce soir, qui sont les joueurs titulaires et que disent les journalistes sur le match? ». 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 la mise à jour de modèles RAG est bien moins longue et onéreuse que le processus d'entraînement des LLM généralisé. 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.
Autre avantage du RAG : en utilisant la base de données vectorielle, l'IA générative peut fournir la source spécifique de données citées dans sa réponse, contrairement aux LLM. Par conséquent, s'il y a une erreur dans la sortie de l'IA générative, le document qui contient cette information erronée peut être rapidement identifié et corrigé, puis l'information rectifiée peut être introduite dans la base de données vectorielle.
En bref, la RAG fournit des informations actualisées, contextualisées et objectives à l'IA générative, allant au-delà de ce que le LLM lui-même peut fournir.
La RAG n'est pas la seule technique utilisée pour améliorer la précision de l'IA générative avec un LLM. Une autre technique est la recherche sémantique, qui aide le système d'IA à affiner la compréhension d'une requête en analysant de manière plus approfondie les mots et les syntagmes spécifiques de l'invite.
La recherche traditionnelle se concentre sur les mots-clés. Par exemple, une requête de base sur les essences d'arbres indigènes du Canada pourrait rechercher la base de données du système d'IA en utilisant des « arbres » et « Canada » comme mots-clés et trouver des données qui contiennent les deux mots-clés. Or, le système pourrait ne pas vraiment comprendre la signification des arbres au Canada et peut donc récupérer trop ou trop peu d'informations, ou même les mauvaises informations. Cette recherche par mot-clé peut également rater des informations, car la recherche par mot-clé est trop littérale : les arbres originaires du Québec pourraient ne pas être pris en compte, même s'ils sont canadiens, car ce mot-clé ne se trouvait pas dans la recherche.
La recherche sémantique va au-delà de la recherche par mot-clé en déterminant la signification des questions et des documents sources, puis en utilisant cette signification pour récupérer des résultats plus précis. La recherche sémantique fait partie intégrante de la RAG.
Lorsqu'une personne veut une réponse instantanée à une question, il est difficile de battre l'immédiateté et la convivialité d'un agent conversationnel. La plupart des robots 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 de RAG peuvent améliorer les robots 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 agents conversationnels 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 d'agents conversationnels sur la pertinence et la précision sont souvent élevées, l'importance des techniques de RAG est claire. En fait, pour de nombreuses entreprises, les agents conversationnels peuvent en effet être le point de départ de l'utilisation des RAG et de l'IA générative.
Pour répondre précisément à une question, le contexte a souvent de l'importance. Par exemple, les réponses aux requêtes des clients sur un nouveau produit ne seront pas pertinentes si les données utilisées se rapportent au modèle précédent et pourraient même se révéler trompeuses. De même, un randonneur qui veut savoir si un parc est ouvert ce dimanche attend des informations précises et opportunes sur ce parc, quant à cette date précise.
Les techniques de 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 :
Étant donné que la RAG est une technologie relativement nouvelle — elle a été proposée pour la première fois en 2020 — , les développeurs d'IA sont toujours en train de découvrir comment mettre en œuvre au mieux ses mécanismes de récupération d'informations dans l'IA générative. Les principaux défis sont :
Il existe de nombreux exemples possibles d'IA générative augmentée par RAG.
Cohere, une figure de proue de l'IA générative et de la RAG, a créé sur un agent conversationnel 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 sur les plages voisines et la disponibilité de terrains de volleyball à distance de marche.
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.
Aujourd'hui, la RAG n'en est qu'à ses balbutiements. Cette technologie est déjà utilisée pour fournir des réponses opportunes, précises et contextuelles aux requêtes. Ces cas d'utilisation sont adaptés aux agents conversationnels, aux courriels, à la messagerie texte et à d'autres applications conversationnelles.
À l'avenir, les orientations possibles pour la technologie RAG pourraient aider l'IA générative à réagir correctement aux informations contextuelles et aux invites des utilisateurs. Par exemple, un système d'IA augmenté par RAG pourrait identifier la location de vacances de plage la mieux cotée sur les îles Canaries, puis commencer à réserver une cabine de deux chambres à distance de marche de la plage lors d'un tournoi de volleyball.
La RAG pourrait également être en mesure d'aider à répondre à des questions plus complexes. Aujourd'hui, l'IA générative pourrait être en mesure d'informer un employé de la politique de remboursement des frais de formation de l'entreprise; la RAG pourrait ajouter plus de données contextuelles pour dire à l'employé quelles écoles voisines ont les cours qui s'inscrivent dans cette politique et qui recommandent peut-être des programmes adaptés aux emplois de l'employé et à la formation précédente. Elle pourrait peut-être même l'aider à postuler à ces programmes et à lancer une demande de remboursement.
Oracle propose divers services infonuagiques d'IA avancés, notamment le service OCI Generative AI 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 infonuagiques et des fonctionnalités d'IA générative sont disponibles pour les développeurs qui utilisent OCI et dans 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.
La puissance et les capacités des LLM et de l'IA générative sont largement connues et comprises; elles n'ont cessé d'être sous le feu des projecteurs cette année. La génération augmentée par récupération s'appuie sur les avantages des LLM en rendant leurs réponses plus opportunes, précises et contextuelles. Pour les applications métiers de l'IA générative, la RAG est une technologie importante à surveiller, étudier et essayer.
Oracle propose une plateforme de données moderne et une infrastructure d'IA à faible coût et hautes performances. D'autres facteurs, 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 la pertinence de l'IA d'Oracle pour les entreprises.
La RAG est-elle différente de l'IA générative?
Oui, la génération augmentée par extraction est une technique qui peut fournir des résultats plus précis aux requêtes qu'un modèle de langage générique, car la RAG utilise des connaissances externes aux données déjà contenues dans le LLM.
Quel type d'informations 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 de l'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 utilise le contexte pour créer une réponse plus opportune, précise et contextuelle.
Un RAG peut-il citer des références pour les données qu'il extrait?
Oui, les bases de données vectorielles et les référentiels de connaissances utilisés par le 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.