Retrieval Augmented Generation (RAG)
Explore comment la génération augmentée par récupération (RAG) optimise les LLM avec des données en temps réel. Apprends à construire des pipelines multimodaux en utilisant Ultralytics YOLO26 pour le RAG visuel.
La génération augmentée par récupération (RAG) est une technique avancée dans le domaine de l'intelligence artificielle qui optimise la sortie d'un Large Language Model (LLM) en faisant référence à une base de connaissances faisant autorité en dehors de ses données d'entraînement. Les modèles génératifs traditionnels reposent uniquement sur des informations statiques apprises lors de leur entraînement initial, ce que peut entraîner des réponses obsolètes ou des inexactitudes sûres d'elles appelées hallucinations. La RAG comble cette lacune en récupérant des informations pertinentes et actualisées à partir de sources externes — telles que des bases de données d'entreprise, des actualités récentes ou des manuels techniques — et en les fournissant au modèle comme contexte avant qu'une réponse ne soit générée. Ce processus garantit que les sorties de l'IA sont non seulement cohérentes sur le plan linguistique, mais aussi factuellement exactes et ancrées dans des données spécifiques.
Comment fonctionnent les systèmes RAG#
L'architecture d'un système RAG implique généralement deux phases principales : la récupération et la génération. Ce flux de travail permet aux développeurs de maintenir un foundation model sans le besoin coûteux d'un réentraînement fréquent.
-
Récupération : Lorsqu'un utilisateur soumet une requête, le système effectue d'abord une semantic search dans un système de stockage spécialisé appelé vector database. Cette base de données contient des données qui ont été converties en représentations numériques appelées embeddings, permettant au système de trouver des informations conceptuellement similaires plutôt que de simplement faire correspondre des mots-clés.
-
Génération : Les documents pertinents ou extraits de données trouvés lors de la récupération sont combinés avec la question originale de l'utilisateur. Cette invite enrichie est ensuite envoyée au modèle génératif. Le modèle utilise ce contexte fourni pour synthétiser une réponse, garantissant que la réponse s'appuie sur les faits récupérés. Pour une plongée plus approfondie dans les mécanismes, IBM fournit un guide complet sur les flux de travail RAG.
RAG visuel : Intégrer la vision par ordinateur#
Bien que la RAG soit traditionnellement textuelle, l'essor de l'multi-modal learning a introduit la « Visual RAG ». Dans ce scénario, les modèles de computer vision agissent comme le mécanisme de récupération. Ils analysent des images ou des flux vidéo pour extraire des données textuelles structurées — telles que des noms d'objets, des comptes ou des activités —, qui sont ensuite injectées dans un LLM pour répondre à des questions sur la scène visuelle.
Par exemple, un développeur peut utiliser YOLO26 pour détecter des objets dans une image et passer cette liste d'objets à un modèle de texte pour générer un rapport descriptif.
from ultralytics import YOLO
# Load the YOLO26 model for state-of-the-art detection
model = YOLO("yolo26n.pt")
# Perform inference to 'retrieve' visual facts from an image
results = model("https://ultralytics.com/images/bus.jpg")
# Extract class names to build a text context for an LLM
detected_classes = [model.names[int(c)] for c in results[0].boxes.cls]
context_string = f"The scene contains: {', '.join(detected_classes)}."
print(context_string)
# Output example: "The scene contains: bus, person, person, person."Applications concrètes#
La RAG transforme les industries en permettant aux AI agents d'accéder à des données propriétaires ou en temps réel en toute sécurité.
- Bases de connaissances d'entreprise : Les entreprises utilisent la RAG pour créer des chatbots internes qui répondent aux questions des employés sur les politiques RH ou la documentation technique. En connectant un LLM à un dépôt de documents en direct, le système évite de fournir des informations de politique obsolètes. Pour en savoir plus sur les implémentations en entreprise, consultez l'aperçu de la RAG dans Vertex AI par Google Cloud.
- Aide à la décision clinique : Dans le domaine de l'AI in healthcare, les systèmes RAG peuvent récupérer l'historique des patients et des articles de recherche médicale récents pour aider les médecins dans leur diagnostic, garantissant que les conseils prennent en compte les études cliniques les plus récentes.
- Assistants de vente au détail intelligents : Les applications utilisant l'AI in retail exploitent la RAG pour consulter les bases de données d'inventaire en direct. Si un client demande à un chatbot : « Avez-vous ces chaussures de running en taille 10 ? », le modèle récupère les niveaux de stock en temps réel avant de répondre, évitant ainsi la frustration liée aux articles en rupture de stock.
RAG vs. Fine-tuning#
Il est crucial de distinguer la RAG du fine-tuning, car ils résolvent des problèmes différents.
- RAG (Génération augmentée par récupération) : Idéal pour accéder à des données dynamiques qui changent fréquemment (ex: cours de la bourse, actualités) ou à des données privées non présentes dans l'ensemble d'entraînement public. Il se concentre sur la fourniture de nouvelles informations lors de l'exécution.
- Fine-Tuning : Idéal pour adapter le comportement, le style ou la terminologie du modèle. Cela implique de mettre à jour les model weights sur un ensemble de données spécifique. Bien que le fine-tuning aide un modèle à apprendre un modèle de langage spécifique (comme le jargon médical), il n'accorde pas l'accès à des faits en temps réel. Consultez le guide d'OpenAI sur le fine-tuning par rapport à la RAG pour les cadres décisionnels.
Concepts associés#
- LangChain : Un framework open source populaire spécifiquement conçu pour simplifier la création d'applications RAG en enchaînant des récupérateurs et des LLM.
- Knowledge Graph : Une manière structurée de représenter des données qui peut être utilisée comme source de récupération, offrant des relations plus riches en contexte que la simple similarité vectorielle.
- Prompt Engineering : L'art de concevoir des entrées pour guider le modèle. La RAG est essentiellement une forme automatisée de prompt engineering où l'« invite » est enrichie de données récupérées par programmation.
- Ultralytics Platform : Alors que la RAG gère le côté génération de texte, des plateformes comme celle-ci sont essentielles pour gérer le data preprocessing et l'entraînement des modèles de vision qui alimentent les pipelines RAG multimodaux.






