9 exemples de RAG basés sur des cas d'utilisation et des architectures réels

Découvrez neuf exemples concrets de RAG, de la recherche sur le Web et du support client au commerce agentique et à l'analyse de données, ainsi que les architectures qui les sous-tendent.

Diagram of how RAG works: a user prompt goes through a grounding check, a retrieval request to an external source, context augmentation, and LLM answer generation.

Le RAG est largement utilisé dans les contextes grand public et d'entreprise. Des exemples concrets et quotidiens du RAG incluent la recherche sur le Web, le support client et les achats assistés par IA. L'accès aux connaissances internes et l'aide au codage figurent parmi les exemples professionnels les plus marquants.

L'architecture RAG peut également varier selon les cas d'utilisation. Deux des implémentations les plus courantes sont le RAG hybride, qui associe la recherche de mots-clés traditionnelle à une recherche par vecteur ou par graphe de connaissances, et le RAG agentique, dans lequel un LLM dirige le processus de récupération.

Qu'est-ce que la génération augmentée par récupération (RAG) ?

Le RAG (pour retrieval-augmented generation ou génération augmentée par récupération) permet aux applications d'IA d'accéder à des informations stockées dans des systèmes externes pour compléter les réponses générées par les LLM.

Il s'agit d'une technologie puissante car elle résout trois problèmes majeurs de l'IA générative : les hallucinations, les informations obsolètes et le manque d'accès aux données non incluses dans le contexte d'entrée.

Voici à quoi ressemble un processus RAG de base :

  1. L'utilisateur saisit une invite en langage naturel.
  2. L'application d'IA détermine si un ancrage est nécessaire, parfois avec l'intervention d'un LLM.
  3. Une demande est envoyée à une source d'information externe, telle qu'une base de données.
  4. Les informations récupérées sont ajoutées au contexte d'entrée du LLM.
  5. Le LLM génère une réponse basée sur l'invite augmentée.

Bien qu'ils puissent varier dans leur mise en œuvre spécifique, ces étapes représentent un flux de travail RAG typique. Les différences entre les divers types d'architecture tendent à se concentrer sur la manière dont les demandes sont traitées par l'application cliente et sur la nature des informations récupérées.

Aperçu de l'architecture RAG

Le terme "génération augmentée par récupération" est apparu pour la première fois dans un article de 2020 intitulé Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks, publié par des chercheurs de Meta AI (alors Facebook AI Research) ainsi que des collaborateurs de l'University College London et de la New York University.

Les premières approches de type récupération-puis-génération, vaguement qualifiées de "RAG naïf", ont depuis évolué vers un assortiment de différents types d'architectures, dont beaucoup se chevauchent.

RAG naïf

Le RAG naïf utilise un pipeline simple de récupération et de génération, qui reste adapté à de nombreuses requêtes de base. L'exemple le plus courant de RAG naïf est la conversion d'une requête en une liste ordonnée de nombres appelée incorporation vectorielle, ou simplement vecteur. L'incorporation de la requête est ensuite mise en correspondance avec d'autres vecteurs qui représentent des fragments, c'est-à-dire des portions de contenu dans une base de données ou un index (appelé index sémantique).

RAG avancé

Le RAG avancé optimise les étapes précédant et suivant la récupération. Les techniques incluent l'expansion de requêtes, le filtrage par métadonnées et la compression de contexte. Celles-ci améliorent essentiellement la pertinence des informations récupérées et la manière dont elles sont modifiées avant d'être ajoutées au contexte d'entrée d'un LLM.

RAG agentique

Le RAG agentique correspond à l'exécution de pipelines RAG par un agent basé sur un LLM. L'agent "décide" quels outils conviennent le mieux à une invite donnée et dirige la récupération, parfois en boucle, afin de générer une réponse pertinente.

RAG par graphe

Le RAG par graphe récupère des informations à partir d'un graphe de connaissances, qui représente des entités (telles que des objets, des concepts et des événements) ainsi que les relations qui les unissent. Cette approche est utile lorsqu'une réponse à une invite exige que le LLM combine des informations provenant d'entités distinctes.

RAG multimodal

Le RAG multimodal étend la récupération à des contenus tels que les images et l'audio, à la fois lors de la requête et de la récupération. Ces pipelines RAG utilisent des encodeurs spéciaux pour convertir du texte, des images ou de l'audio en incorporations.

RAG hybride

Le RAG hybride combine la recherche par mots-clés (ou récupération lexicale) avec la récupération vectorielle ou les graphes de connaissances, puis fusionne les résultats. Cette méthode est utile car la correspondance de mots-clés peut s'avérer extrêmement précise (plus que d'autres méthodes) dans certains contextes.

RAG correctif

Le RAG correctif évalue les informations ou données renvoyées afin de déterminer leur pertinence par rapport à la requête. Il peut affiner ou compléter les passages récupérés, ou les remplacer entièrement en exécutant une autre demande.

Exemples de RAG par cas d'utilisation et secteur d'activité

Il existe de multiples exemples de RAG dans les sphères grand public et professionnelle. Cela s'explique en grande partie par le fait que les pipelines RAG ont été intégrés dans la plupart des outils grand public. De plus, de nombreux fournisseurs proposent des intégrations prêtes à l'emploi, telles que des chatbots pour le service client, ce qui a facilité leur adoption.

1. Recherche sur le Web

La recherche sur le Web est l'un des exemples les plus omniprésents du RAG. Chaque jour, des millions de personnes utilisent des outils d'IA pour générer des réponses ancrées dans des informations extraites du Web.

Fonctionnement : L'application d'IA effectue des recherches dans un index Web, tel que l'index Google Search, en combinant récupération sémantique et par mots-clés. Le contenu pertinent des pages est inclus aux côtés de la question de l'utilisateur dans l'entrée du LLM. Le LLM génère ensuite une réponse, généralement accompagnée de citations de sources.

Exemple concret : Si un utilisateur saisit une requête simple dans l'interface de chat de Perplexity, telle que "Quel temps fait-il à Chicago ?", le LLM effectuera une recherche sur le Web pour trouver des informations actualisées. Perplexity utilise un index Web propriétaire associé à des API de recherche partenaires.

2. Support client

Les chatbots intégrés aux applications et aux sites Web sont devenus un cas d'utilisation majeur du RAG en entreprise. Ces systèmes s'associent généralement à des parcours de routage traditionnels, ce qui réduit le besoin d'intervention de représentants du service client.

Fonctionnement : Lorsqu'un client pose une question, l'application interroge la base de connaissances de l'entreprise, souvent à l'aide d'un pipeline hybride. Les passages récupérés sont transmis au LLM, qui génère une réponse. Des processus correctifs et de transfert sont également généralement mis en place pour valider la réponse et, si nécessaire, rediriger l'utilisateur vers un représentant.

Exemple concret : Plusieurs plates-formes de service client, dont Zendesk (illustré ci-dessous) et Intercom, proposent des chatbots de support client prêts à l'emploi qui s'intègrent à la documentation existante et aux bases de support client.

3. Assistants personnels

Les assistants personnels utilisent le RAG agentique pour accéder aux e-mails, aux fichiers et au calendrier d'un utilisateur. Ces assistants peuvent généralement exécuter plusieurs pipelines RAG.

Fonctionnement : Étant donné que les assistants personnels nécessitent souvent l'accès à de multiples sources d'information, ils utilisent une combinaison d'API, de recherche par mots-clés, de recherche vectorielle et de graphes de connaissances. L'application transmet différentes descriptions d'outils au LLM, qui sélectionne ensuite les plus appropriées.

Exemple concret : Google Gemini constitue un bon exemple d'application capable de servir d'assistant IA personnel et polyvalent (comme c'est le cas pour la plupart des assistants aujourd'hui). Il s'intègre à un écosystème d'outils tels que Gmail, Docs, Photos et Calendar.

4. Gestion des connaissances en entreprise

La gestion des connaissances en entreprise permet aux employés de poser des questions sur un vaste ensemble d'informations de l'entreprise, incluant des politiques, des rapports, des documents de projet, des textes juridiques et même des discussions internes.

Fonctionnement : L'application récupère le contenu pertinent à l'aide d'un index vectoriel mis à jour au fil des modifications des documents sources. L'index contient des incorporations représentant des fragments de documents, avec des liens vers leur texte et les métadonnées associées.

Exemple concret : Microsoft 365 Copilot accède aux informations organisationnelles via Microsoft Graph, qui expose diverses API pour les sources de données, et utilise des index lexicaux et sémantiques pour récupérer le contenu pertinent.

5. Assistants de codage

Les assistants de codage appliquent le RAG à une base de code. Bien que le processus RAG sous-jacent soit le même (généralement un RAG agentique), la différence réside dans le fait qu'ils traitent spécifiquement du contexte du code.

Fonctionnement : Les assistants de codage indexent les fichiers de projets locaux et effectuent des passes de recherche multiples pour trouver des extraits de code pertinents lorsqu'une invite est fournie. Ces assistants disposent également généralement de connecteurs dédiés pour étendre l'accès, par exemple aux bases de connaissances d'entreprise.

Exemple concret : GitHub Copilot est un exemple bien connu d'assistant de codage qui s'intègre directement aux projets de développement. Il peut également référencer des dépôts GitHub publics pour accroître la précision des réponses.

6. Dépannage technique

Le dépannage technique intègre un pipeline RAG de gestion des connaissances à une boucle de diagnostic. Un agent peut évaluer les résultats pour affiner davantage les recommandations de dépannage selon les besoins.

Fonctionnement : Une application recueille les symptômes d'un problème technique auprès de l'utilisateur ou reçoit des alertes de surveillance automatisées. Elle déclenche une recherche dans les messages d'erreur, les journaux techniques et les indicateurs de performance afin de recouper les symptômes. Elle récupère ensuite les informations pertinentes dans une base de connaissances interne pour les transmettre au LLM. La boucle de diagnostic intervient lorsque les résultats d'une tentative de correction sont renvoyés au LLM, que ce soit par l'utilisateur ou par un outil de diagnostic.

Exemple concret : La plateforme d'observabilité Datadog (illustrée ci-dessous) collecte des données provenant de toutes les couches d'un système et signale tout problème dès son apparition. Celles-ci sont ensuite transmises à un agent IA spécialisé nommé Bits AI pour analyser les correctifs potentiels.

7. Commerce agentique

Le commerce agentique est un cas d'utilisation plus large qui implique généralement le RAG. Un agent d'achat récupère des détails tels que les spécifications des produits, les avis, les prix et la disponibilité pour comparer les options et expliquer les recommandations. Il peut ensuite effectuer automatiquement l'achat sans que l'utilisateur ne quitte l'interface.

Fonctionnement : Le commerce agentique relève du véritable RAG agentique, car des requêtes particulières nécessitent souvent différentes formes de récupération, dirigées par le modèle. Un agent peut récupérer des données de produits purement textuelles via l'API d'un revendeur, ou utiliser le RAG multimodal pour faire correspondre des produits dans un index sémantique sur la base d'une photo d'utilisateur.

Exemple concret : Un agent polyvalent tel que Perplexity peut récupérer plusieurs images et des spécifications de produits détaillées à partir d'une invite. La fonction de paiement Instant Buy permet à l'utilisateur de finaliser l'achat après avoir choisi un produit.

8. Domaines de connaissances spécialisés

Les outils d'IA qui récupèrent des connaissances sectorielles spécialisées doivent faire face à des formats de contenu complexes. De plus, la minimisation des hallucinations et des lacunes d'information constitue souvent une priorité.

Fonctionnement : La principale différence entre les architectures RAG polyvalentes et spécialisées concerne le matériel source et la configuration de la récupération. En règle générale, seul un index hautement autorisé sera interrogé, et la requête sera configurée pour inclure une terminologie spécifique afin de restreindre les recherches.

Exemple concret : L'outil de recherche académique Scite accède à un vaste index d'articles universitaires et de données de citation élaboré par le biais d'accords avec des éditeurs et de sources en libre accès. Il applique également des vérifications post-récupération, telles que la vérification des sources, avant de générer une réponse complète.

9. Analyse de données

Le RAG pour l'analyse de données est devenu un cas d'utilisation d'entreprise particulièrement puissant, car il permet à un large éventail de professionnels, en particulier ceux qui n'ont pas de formation en science des données, d'interroger des ensembles de données en langage naturel. Cela facilite la génération de rapports et la formulation de questions hautement spécifiques.

Fonctionnement : Pour une question telle que "Pourquoi les ventes ont-elles chuté le trimestre dernier ?", l'application peut interroger les registres des ventes et récupérer des notes concernant des ruptures de stock ou des modifications de prix. Le LLM sélectionne le calcul approprié (généralement délégué à un outil de calcul) pour les données récupérées avant de générer une analyse.

Exemple concret : Google Analytics propose un chatbot IA "Ask Advisor" capable d'accéder aux données d'analyse Web et de répondre aux questions très spécifiques et nuancées des utilisateurs. Il s'agit de l'un des meilleurs exemples concrets de RAG en système fermé de niveau entreprise.

Quelles sont les prochaines étapes de l'évolution du RAG ?

Le RAG a constitué une avancée significative lors de son introduction. Il a contribué à résoudre bon nombre des problèmes inhérents aux LLM autonomes.

Cependant, cette technologie est loin d'être statique. La recherche actuelle se concentre sur une récupération multimodale plus approfondie et sur un traitement plus rigoureux du contexte récupéré afin d'garantir exactitude et correction. En outre, nous devrions assister à une plus grande intégration du RAG dans les agents multi-outils.

Même avec des fenêtres de contexte extrêmement larges, il existe des cas d'utilisation importants pour le RAG dans les contextes personnels et professionnels, ainsi que de nombreuses innovations à venir.