Retrieval Augmented Generation (RAG) est une technique avancée d'intelligence artificielle (IA) conçue pour améliorer la qualité et la fiabilité des réponses générées par les grands modèles de langage (LLM). Elle fonctionne en combinant les capacités de génération d'un LLM avec un système de recherche d'informations. Avant de générer une réponse, le système RAG récupère d'abord des bribes d'informations pertinentes à partir d'une source de connaissances prédéfinie (comme les documents internes d'une entreprise, une base de données spécifique ou le Web). Ce contexte récupéré est ensuite fourni au LLM avec la requête originale de l'utilisateur, ce qui permet au modèle de générer des réponses plus précises, actualisées et fondées sur des données factuelles, atténuant ainsi les problèmes tels que les hallucinations. Cette approche améliore les LLM standard en leur permettant d'accéder et d'utiliser des informations externes et actuelles au-delà de leurs données de formation initiales.
Avantages et applications
RAG offre plusieurs avantages par rapport à l'utilisation de LLM standards :
- Précision et fiabilité accrues : En fondant les réponses sur des données factuelles récupérées, le RAG réduit considérablement la probabilité que le LLM génère des informations incorrectes ou fabriquées(hallucinations). Cela augmente la confiance de l'utilisateur et la précision globale du système.
- Accès aux informations actuelles : Les LLM sont généralement formés sur des ensembles de données statiques, ce qui signifie que leur coupure de connaissances les empêche de connaître les événements ou les données qui émergent après leur formation. Le RAG permet aux modèles d'accéder aux informations les plus récentes provenant de sources externes et de les intégrer sans avoir besoin d'un recyclage constant.
- Spécificité du domaine : RAG peut être configuré pour récupérer des informations à partir de bases de connaissances spécifiques (par exemple, les wikis internes de l'entreprise, la documentation technique, des ensembles de données spécifiques). Cela permet aux LLM de fournir des réponses de niveau expert dans des domaines spécialisés.
- Transparence accrue : Étant donné que la réponse générée est basée sur des documents récupérés, il est souvent possible de citer les sources, ce qui offre aux utilisateurs de la transparence et la possibilité de vérifier les informations. Cette démarche s'aligne sur les principes de l'IA explicable (XAI) et de l'éthique de l'IA.
- Rentabilité : La mise à jour de la base de connaissances pour RAG est généralement beaucoup moins coûteuse et plus rapide que le recyclage ou le réglage fin d' un grand modèle linguistique.
Exemples concrets :
- Chatbots d'assistance à la clientèle : Une entreprise peut utiliser RAG pour alimenter un chatbot d'assistance. Lorsqu'un client pose une question, le système récupère les informations pertinentes dans les manuels de produits, les FAQ et les articles de la base de connaissances de l'entreprise. Le RAG utilise ensuite ce contexte pour générer une réponse précise et utile, en s'intégrant potentiellement à des plateformes comme Zendesk.
- Recherche d'entreprise et gestion des connaissances : Les employés peuvent interroger les documents internes de l'entreprise stockés dans des systèmes comme SharePoint ou d'autres bases de données. RAG récupère les sections pertinentes dans des référentiels de documents potentiellement vastes et synthétise les réponses, aidant ainsi les employés à trouver rapidement des informations sans passer manuellement au crible les documents.
RAG et concepts apparentés
Il est utile de distinguer le RAG des autres méthodes utilisées pour améliorer les performances du LLM :
- Mise au point: Le réglage fin adapte un LLM pré-entraîné à une tâche ou un domaine spécifique en poursuivant le processus d'entraînement sur un ensemble de données plus petit et spécialisé. Contrairement au RAG, le réglage fin modifie les poids internes du modèle. Le réglage fin permet d'adapter le style ou d'apprendre des tâches spécifiques, tandis que le RAG est plus adapté à l'intégration de connaissances factuelles et actualisées. Des techniques telles que le réglage fin efficace par paramètres (PEFT) offrent des variations de cette approche.
- Ingénierie de l'invite: Il s'agit d'élaborer avec soin l'invite d'entrée donnée à un MFR pour obtenir la réponse souhaitée. Alors que le RAG incorpore le contexte récupéré dans l'invite, l'ingénierie de l'invite se concentre sur la structuration manuelle de la requête et des instructions de l'utilisateur.
- Enrichissement de l'invite: Similaire à RAG en ce qui concerne l'augmentation de l'invite, l'enrichissement de l'invite peut ajouter un contexte à partir de l'historique de l'utilisateur ou du flux de la conversation, mais RAG se concentre spécifiquement sur la récupération de données factuelles externes à partir d'une base de connaissances pour fonder le processus de génération.
Des structures comme LangChain et LlamaIndex fournissent des outils pour construire des pipelines RAG et d'autres applications LLM complexes.
RAG représente une étape importante vers la création de systèmes d'intelligence artificielle plus compétents et plus fiables, en comblant le fossé entre le vaste pouvoir génératif des LLM et le besoin d'exactitude factuelle et d'accès à des informations dynamiques. Bien qu'elle soit principalement utilisée avec du texte, l'idée principale d'augmenter la génération avec des informations récupérées est conceptuellement applicable à d'autres domaines. Par exemple, dans le domaine de la vision artificielle (CV), on pourrait imaginer récupérer des exemples visuels pertinents ou des métadonnées pour guider la génération ou l'analyse d'images, bien qu'il s'agisse encore d'un domaine de recherche émergent. Des plateformes comme Ultralytics HUB aident à gérer les modèles et les ensembles de données, qui sont des composants cruciaux qui pourraient servir de sources de connaissances dans les futures applications multimodales de RAG impliquant des modèles tels que Ultralytics YOLO. L'exploration des ensembles de données de vision par ordinateur disponibles peut donner un aperçu du type d'informations structurées qui pourraient être utiles à ces systèmes.
Comment fonctionne la génération augmentée de récupération
Le processus RAG comprend généralement deux étapes principales :