Qu'est-ce que la génération augmentée de récupération ?
La génération augmentée de récupération (RAG) est le processus consistant à optimiser le résultat d'un grand modèle de langage. Elle fait donc appel à une base de connaissances fiable externe aux sources de données utilisées pour l'entraîner avant de générer une réponse. Les grands modèles de langage (LLM) sont entraînés avec d'importants volumes de données et utilisent des milliards de paramètres pour générer des résultats originaux pour des tâches telles que répondre à des questions, traduire des langues et compléter des phrases. La RAG étend les capacités déjà très puissantes des LLM à des domaines spécifiques ou à la base de connaissances interne d'une organisation, le tout sans qu'il soit nécessaire de réentraîner le modèle. Il s'agit d'une approche économique pour améliorer les résultats du LLM et qu'ils restent cohérents, précis et utiles dans de nombreux contextes.
Pourquoi la génération augmentée de récupération est-elle importante ?
Les LLM sont une technologie clé d’intelligence artificielle (IA) qui alimente les chatbots intelligents et d’autres applications de traitement du langage naturel (NLP). L'objectif est de créer des robots capables de répondre aux questions des utilisateurs dans divers contextes en croisant des sources de connaissances faisant autorité. Malheureusement, la nature de la technologie LLM introduit une imprévisibilité dans les réponses LLM. De plus, les données de formation LLM sont statiques et introduisent une date limite sur les connaissances dont elles disposent.
Les défis connus des LLM incluent :
- Présenter de fausses informations alors qu'il n'y a pas de réponse.
- Présenter des informations obsolètes ou génériques lorsque l'utilisateur attend une réponse spécifique et actuelle.
- Créer une réponse à partir de sources ne faisant pas autorité.
- Créer des réponses inexactes en raison d'une confusion terminologique, dans laquelle différentes sources de formation utilisent la même terminologie pour parler de choses différentes.
Vous pouvez considérer le modèle linguistique large comme un nouvel employé trop enthousiaste qui refuse de se tenir informé de l'actualité, mais qui répondra toujours à toutes les questions avec une confiance absolue. Malheureusement, une telle attitude peut avoir un impact négatif sur la confiance des utilisateurs et ce n'est pas quelque chose que vous voulez que vos chatbots imitent !
La RAG est une approche permettant de résoudre certains de ces défis. Elle redirige le LLM pour récupérer des informations pertinentes à partir de sources de connaissances prédéterminées faisant autorité. Les organisations ont un meilleur contrôle sur la sortie de texte générée et les utilisateurs ont un aperçu de la manière dont le LLM génère la réponse.
Quels sont les avantages de la génération augmentée de récupération ?
La technologie RAG apporte plusieurs avantages aux efforts d'IA générative d'une organisation.
Mise en œuvre rentable
Le développement d'un chatbot commence généralement par un modèle de base. Les systèmes d’IA à usage général (FM) sont des LLM accessibles par API formés sur un large éventail de données généralisées et non étiquetées. Les coûts informatiques et financiers liés à la reconversion des FM pour des informations spécifiques à une organisation ou à un domaine sont élevés. La RAG est une approche plus rentable pour introduire de nouvelles données dans le LLM. Il rend la technologie d'intelligence artificielle générative (IA générative) plus largement accessible et utilisable.
Informations actuelles
Même si les sources de données de formation d'origine pour un LLM sont adaptées à vos besoins, il est difficile de maintenir leur pertinence. La RAG permet aux développeurs de fournir les dernières recherches, statistiques ou actualités relatives aux modèles génératifs. Ils peuvent utiliser la RAG pour connecter le LLM directement à des flux de médias sociaux en direct, à des sites d'actualités ou à d'autres sources d'information fréquemment mises à jour. Le LLM peut ensuite fournir les dernières informations aux utilisateurs.
Confiance accrue des utilisateurs
La RAG permet au LLM de présenter des informations précises avec l'attribution de la source. Le résultat peut inclure des citations ou des références à des sources. Les utilisateurs peuvent également rechercher eux-mêmes les documents sources s'ils ont besoin de précisions ou de détails supplémentaires. Cela peut renforcer la confiance dans votre solution d'IA générative.
Plus de contrôle pour les développeurs
Grâce à la RAG, les développeurs peuvent tester et améliorer leurs applications de chat de manière plus efficace. Ils peuvent contrôler et modifier les sources d'informations du LLM pour s'adapter à l'évolution des exigences ou à une utilisation interfonctionnelle. Les développeurs peuvent également limiter la récupération d'informations sensibles à différents niveaux d'autorisation et s'assurer que le LLM génère des réponses appropriées. En outre, ils peuvent également résoudre les problèmes et apporter des correctifs si le LLM fait référence à des sources d'informations incorrectes pour des questions spécifiques. Les entreprises peuvent mettre en œuvre la technologie d'IA générative avec plus de confiance pour un plus large éventail d'applications.
Comment fonctionne la génération augmentée de récupération ?
Sans RAG, le LLM prend les informations de l'utilisateur et crée une réponse basée sur les informations sur lesquelles il a été formé, ou sur ce qu'il sait déjà. Avec RAG, un composant de récupération d'informations est introduit qui utilise les entrées de l'utilisateur pour d'abord extraire des informations d'une nouvelle source de données. La demande de l'utilisateur et les informations pertinentes sont toutes deux transmises au LLM. Le LLM utilise les nouvelles connaissances et ses données de formation pour créer de meilleures réponses. Les sections suivantes fournissent une vue d'ensemble du processus.
Créer des données externes
Les nouvelles données en dehors de l'ensemble de données de formation d'origine du LLM sont appelées données externes. Il peut provenir de plusieurs sources de données, telles que des API, des bases de données ou des référentiels de documents. Les données peuvent exister dans différents formats tels que des fichiers, des enregistrements de base de données ou du texte long. Une autre technique d'IA, appelée intégration de modèles linguistiques, convertit les données en représentations numériques et les stocke dans une base de données vectorielle. Ce processus crée une bibliothèque de connaissances que les modèles d'IA générative peuvent comprendre.
Récupérer les informations pertinentes
L'étape suivante consiste à effectuer une recherche de pertinence. La demande de l'utilisateur est convertie en une représentation vectorielle et mise en correspondance avec les bases de données vectorielles. Prenons l'exemple d'un chatbot intelligent capable de répondre aux questions relatives aux ressources humaines d'une organisation. Si un employé recherche « De combien de jours de congé annuel ai-je ? », le système récupérera les documents relatifs à la politique des congés annuels ainsi que les antécédents de congé de chaque employé. Ces documents spécifiques seront renvoyés car ils sont très pertinents par rapport à ce que l'employé a apporté. La pertinence a été calculée et établie à l'aide de calculs vectoriels mathématiques et de représentations.
Augmenter l'invite LLM
Ensuite, le modèle RAG augmente la saisie (ou les instructions) de l'utilisateur en ajoutant les données récupérées pertinentes dans leur contexte. Cette étape utilise des techniques d'ingénierie rapides pour communiquer efficacement avec le LLM. L'invite augmentée permet aux grands modèles linguistiques de générer une réponse précise aux requêtes des utilisateurs.
Mettre à jour les données externes
La question suivante peut être la suivante : et si les données externes devenaient périmées ? Pour maintenir à jour les informations à récupérer, mettez à jour les documents de manière asynchrone et mettez à jour la représentation intégrée des documents. Vous pouvez le faire par le biais de processus automatisés en temps réel ou d'un traitement par lots périodique. Il s'agit d'un défi courant dans le domaine de l'analyse des données : différentes approches de la gestion du changement peuvent être utilisées dans le domaine de la science des données.
Le schéma suivant montre le flux conceptuel de l'utilisation de RAG avec des LLM.
Quelle est la différence entre la génération augmentée de récupération et la recherche sémantique ?
La recherche sémantique améliore les résultats RAG pour les organisations qui souhaitent ajouter de vastes sources de connaissances externes à leurs applications LLM. Les entreprises modernes stockent de grandes quantités d'informations telles que des manuels, des FAQ, des rapports de recherche, des guides du service client et des référentiels de documents sur les ressources humaines sur divers systèmes. La récupération du contexte est difficile à grande échelle et réduit par conséquent la qualité de sortie générative.
Les technologies de recherche sémantique peuvent analyser de grandes bases de données contenant des informations disparates et récupérer des données avec plus de précision. Par exemple, ils peuvent répondre à des questions telles que « Combien ont été consacrés à la réparation de machines l'année dernière ? » en faisant correspondre la question aux documents pertinents et en renvoyant un texte spécifique au lieu des résultats de recherche. Les développeurs peuvent ensuite utiliser cette réponse pour fournir plus de contexte au LLM.
Les solutions classiques ou de recherche par mot clé dans RAG produisent des résultats limités pour les tâches à forte intensité de connaissances. Les développeurs doivent également faire face à l'intégration de mots, au découpage de documents et à d'autres complexités lorsqu'ils préparent manuellement leurs données. En revanche, les technologies de recherche sémantique font tout le travail de préparation de la base de connaissances afin que les développeurs n'aient pas à le faire. Ils génèrent également des passages sémantiquement pertinents et des mots symboliques classés par pertinence afin de maximiser la qualité de la charge utile RAG.
Comment AWS peut-il répondre à vos besoins en matière de génération augmentée de récupération ?
Amazon Bedrock est un service entièrement géré qui propose un choix de modèles de base très performants, ainsi qu'un large éventail de fonctionnalités, pour créer des applications d'IA génératives tout en simplifiant le développement et en préservant la confidentialité et la sécurité. Grâce aux bases de connaissances pour Amazon Bedrock, vous pouvez connecter les FM à vos sources de données pour RAG en quelques clics. Les conversions vectorielles, les extractions et la génération de sortie améliorée sont toutes gérées automatiquement.
Pour les organisations qui gèrent leur propre RAG, Amazon Kendra est un service de recherche d'entreprise extrêmement précis basé sur le machine learning. Il fournit une API Kendra Retrieve optimisée que vous pouvez utiliser avec le classement sémantique de haute précision d'Amazon Kendra en tant que récupérateur d'entreprise pour vos flux de travail RAG. Par exemple, avec l'API Retrieve, vous pouvez :
- Récupérez jusqu'à 100 passages sémantiquement pertinents contenant chacun jusqu'à 200 mots symboliques, classés par pertinence.
- Utilisez des connecteurs prédéfinis pour accéder à des technologies de données populaires telles qu'Amazon Simple Storage Service, SharePoint, Confluence et d'autres sites Web.
- Supporte un large éventail de formats de documents tels que HTML, Word, PowerPoint, PDF, Excel et les fichiers texte.
- Filtrez les réponses en fonction des documents autorisés par les autorisations de l'utilisateur final.
Amazon propose également des options aux organisations qui souhaitent créer davantage de solutions d'IA générative personnalisées. Amazon SageMaker JumpStart est un hub de machine learning doté de machines virtuelles, d'algorithmes intégrés et de solutions de machine learning prédéfinies que vous pouvez déployer en quelques clics. Vous pouvez accélérer la mise en œuvre du RAG en vous référant aux blocs-notes SageMaker existants et à des exemples de code.
Démarrez avec Retrieval-Augmented Generation sur AWS en créant un compte gratuit dès aujourd'hui