Infrastructure RAG pour l'IA générative à l'aide de Gemini Enterprise et Agent Platform

Last reviewed 2026-11-06 UTC

Ce document fournit une architecture de référence que vous pouvez utiliser pour concevoir l'infrastructure d'une application d'IA générative avec la génération augmentée par récupération (RAG) à l'aide de Gemini Enterprise et de Gemini Enterprise Agent Platform. Cette architecture de référence montre comment utiliser des services gérés et déployer un seul agent IA pour faciliter un flux de données RAG de bout en bout. Gemini Enterprise sert de plate-forme unifiée pour l'orchestration des agents dans l'entreprise. Agent Platform accélère le développement et le déploiement d'agents personnalisés, et fournit des datastores gérés pour faciliter la récupération efficace pour le RAG.

Ce document s'adresse aux architectes, développeurs et administrateurs d'applications d'IA générative. Dans ce document, nous partons du principe que vous possédez des connaissances de base sur les concepts d'IA, de machine learning (ML) et de grand modèle de langage (LLM). Ce document ne fournit pas de conseils sur la conception et le développement d'une application d'IA générative. Pour savoir comment concevoir une application, consultez Développer une application d'IA générative.

Architecture

Le schéma suivant illustre une vue d'ensemble de l'architecture présentée dans ce document :

Vue d'ensemble de haut niveau des flux d'ingestion de données et de diffusion dans l'architecture.

L'architecture du diagramme précédent comporte deux sous-systèmes : l'ingestion de données et la mise en service.

  • Le sous-système d'ingestion de données ingère et prépare les données provenant de sources externes pour les utiliser dans le RAG. Le sous-système génère des embeddings pour les données ingérées et les utilise pour créer et gérer un index vectoriel interrogeable dans un datastore géré.
  • Le sous-système de mise en service contient les services d'interface et de backend de l'application d'IA générative.
    • Le service de frontend gère le flux de requêtes/réponses avec les utilisateurs de l'application et transmet les requêtes au service de backend.
    • Le service de backend utilise Gemini Enterprise et Agent Platform pour créer et déployer votre agent IA afin d'orchestrer le processus RAG. Ce processus utilise les données vectorielles indexées pour générer des réponses ancrées dans le contexte et conformes aux filtres de sécurité de l'IA responsable.

Le diagramme suivant présente une vue détaillée de l'architecture :

Vue détaillée des flux d'ingestion et de diffusion des données dans l'architecture.

Les sections suivantes décrivent le flux de données dans chaque sous-système du diagramme d'architecture précédent.

Sous-système d'ingestion de données

Le sous-système d'ingestion de données ingère des données issues de sources externes et les prépare pour le RAG. Voici les étapes du flux d'ingestion et de préparation des données :

  1. Les ingénieurs de données importent des données depuis des sources externes vers un bucket Cloud Storage. Les sources externes peuvent être des applications, des bases de données ou des services de streaming.
  2. Une fois l'opération terminée, Cloud Storage publie un message dans un sujet Pub/Sub.
  3. Le sujet Pub/Sub déclenche l'exécution d'un job de traitement dans les fonctions Cloud Run.
  4. Cloud Run Functions traite les données brutes en générant et en stockant les métadonnées sous forme de fichiers JSON Lines (JSONL). Les fichiers JSONL sont stockés dans un bucket Cloud Storage distinct.
  5. Une fois l'opération terminée, Cloud Run Functions publie un message dans un sujet Pub/Sub.
  6. Le sujet Pub/Sub déclenche une fonction Cloud Run en aval qui appelle la méthode documents.import de l'API Discovery Engine pour démarrer un job d'importation dans le datastore géré de Gemini Enterprise. Le job d'importation extrait les données et les métadonnées brutes ingérées des buckets Cloud Storage, puis analyse et fragmente les données pour une récupération efficace lors de la diffusion. Gemini Enterprise génère automatiquement des embeddings vectoriels sans aucune configuration nécessaire.

Sous-système de mise en service

Le sous-système de mise en service gère le flux de requêtes/réponses entre l'application d'IA générative et ses utilisateurs. Voici les étapes du flux de mise en service :

  1. Un utilisateur de l'application envoie une requête via l'un des services d'interface Cloud Run. Vous pouvez personnaliser ces services pour différentes expériences, telles qu'une UI de chatbot, une page de recherche ou une application mobile.
  2. Le service d'interface reçoit la requête, puis la transmet à un service de backend Cloud Run centralisé. Ce backend fournit un point de terminaison unique et unifié pour prendre en charge tous les différents clients d'interface. Le service de backend effectue également le prétraitement nécessaire, qui peut inclure la construction de filtres pour la requête de recherche. Cette approche permet de garder la logique transparente pour les interfaces.
  3. Le service de backend envoie la requête préparée à Gemini Enterprise en utilisant le point de terminaison de l'API Gemini Enterprise pour lancer le workflow RAG.
  4. Pour traiter la requête, Gemini Enterprise utilise la recherche d'entreprise et l'agent personnalisé pour effectuer les tâches suivantes :
    1. Créez un embedding de la requête de l'utilisateur.
    2. Effectuez une recherche sémantique sur les données indexées dans le datastore géré pour trouver les informations les plus pertinentes.
    3. Augmentez la requête d'origine avec les données récupérées du datastore géré pour créer un prompt détaillé et contextualisé.
    4. Générer une réponse finale basée sur le prompt augmenté.
  5. Gemini Enterprise envoie la réponse générée au service de backend Cloud Run.
  6. Le service de backend renvoie la réponse finale au service de frontend qui a envoyé la requête d'origine. Le service d'interface présente la réponse à l'utilisateur de l'application.

Produits utilisés

Cette architecture de référence utilise les produits Google Cloud suivants :

  • Gemini Enterprise : plate-forme sécurisée entièrement gérée permettant de déployer et de gérer des agents IA au sein d'une entreprise.
  • Gemini Enterprise Agent Platform : plate-forme complète qui vous permet de créer, de faire évoluer, de gérer et d'optimiser des agents IA de niveau entreprise.
  • Agent Runtime sur Gemini Enterprise Agent Platform : plate-forme qui vous permet d'exécuter, de gérer et de faire évoluer des agents IA en production.
  • Cloud Run : plate-forme de calcul gérée qui vous permet d'exécuter des conteneurs directement sur l'infrastructure évolutive de Google.
  • Fonctions Cloud Run : plate-forme de calcul sans serveur qui vous permet d'exécuter des fonctions à usage unique directement dans Google Cloud.
  • Pub/Sub : service de messagerie asynchrone et évolutif qui dissocie les services qui produisent des messages des services qui traitent ces messages.
  • Cloud Storage : store d'objets économique et sans limite pour tout type de données. Les données sont accessibles depuis et en dehors de Google Cloud, et sont répliquées sur plusieurs emplacements à des fins de redondance.

Cas d'utilisation

Cette architecture est conçue pour les scénarios d'entreprise dans lesquels votre application d'IA générative doit accéder aux informations les plus récentes et nécessite une compréhension contextuelle approfondie pour fournir des réponses précises.

L'architecture inclut un sous-système d'ingestion de données personnalisé pour répondre à deux exigences clés de l'entreprise :

  • Disponibilité des données en temps réel : le pipeline basé sur des événements traite les nouvelles données dès qu'elles sont disponibles dans votre organisation (par exemple, un nouveau guide produit ou un rapport mis à jour). Le pipeline met également les informations à disposition dans votre datastore géré. Cette conception permet de limiter l'obsolescence des informations, car elle permet de réduire le délai entre la disponibilité des données et leur utilisation.
  • Recherche contextuelle enrichie : le job de traitement personnalisé permet à votre organisation d'appliquer sa propre logique métier pour enrichir les données avec des métadonnées utiles. La fonction Cloud Run peut ajouter des tags à chaque document avec des attributs spécifiques tels que la gamme de produits, l'auteur, l'emplacement ou le type de document. Ces métadonnées enrichies aident l'agent à affiner sa recherche et à fournir des réponses plus précises et adaptées au contexte.

La génération augmentée de récupération (RAG) est une technique efficace pour améliorer la qualité des résultats générés à partir d'un LLM. Cette section fournit des exemples de cas d'utilisation pour lesquels vous pouvez utiliser des applications d'IA générative compatibles avec la fonction RAG.

Recommandations de produits personnalisées

Un site de shopping en ligne peut utiliser un chatbot basé sur un LLM pour aider les clients à trouver des produits ou à obtenir de l'aide sur leur expérience d'achat. Il est possible d'augmenter les questions d'un utilisateur en utilisant les données historiques sur le comportement d'achat de l'utilisateur et les schémas d'interaction sur le site Web. Les données peuvent inclure des avis et des commentaires d'utilisateurs stockés dans un datastore non structuré, ou des métriques liées à la recherche qui sont stockées dans un entrepôt de données d'analyse d'audience Web. La question augmentée peut ensuite être traitée par le LLM pour générer des réponses personnalisées que l'utilisateur pourrait trouver plus attrayantes et plus convaincantes.

Systèmes d'assistance clinique

Les cliniciens hospitaliers doivent examiner et synthétiser les informations de santé des patients pour prendre des décisions de soins éclairées. Une application d'IA générative qui utilise un modèle de fondation médical tel que MedGemma peut aider les cliniciens à résumer des notes cliniques et à examiner le contexte médical. Les réponses générées par l'application peuvent s'appuyer sur l'historique des dossiers des patients en contextualisant les requêtes avec les données de la base de données des dossiers médicaux électroniques (DME) de l'hôpital ou d'une base de connaissances externe, telle que PubMed.

La recherche juridique basée sur l'IA générative permet aux avocats d'interroger rapidement de grands volumes de lois et de cas juridiques afin d'identifier les précédents juridiques pertinents ou de résumer des concepts juridiques complexes. Les résultats de ces recherches peuvent être améliorés en augmentant les requêtes d'un avocat par des données extraites du corpus propriétaire du cabinet d'avocats, regroupant contrats, communications juridiques antérieures et dossiers internes. Cette approche de conception permet de générer des réponses adaptées au domaine juridique de spécialité de l'avocat.

Alternatives de conception

Cette section présente d'autres approches de conception que vous pouvez envisager pour votre application d'IA générative compatible RAG dans Google Cloud.

Alternatives à l'infrastructure d'IA

Pour obtenir la liste des guides d'architecture permettant de concevoir et de déployer des applications d'IA générative avec RAG dans Google Cloud, consultez IA générative avec RAG.

Options d'hébergement d'applications

Dans l'architecture présentée dans ce document, Cloud Run héberge l'application d'IA générative et le traitement des données. Cloud Run est une plate-forme entièrement gérée et axée sur les développeurs. Vous pouvez également déployer votre application sur Agent Runtime sur la plate-forme d'agents Gemini Enterprise, sur des clusters Google Kubernetes Engine (GKE) ou sur des VM Compute Engine.

Pour choisir un hôte d'application, tenez compte des compromis suivants entre la flexibilité de la configuration et l'effort de gestion :

  • Avec l'option Cloud Run sans serveur, vous déployez vos services personnalisés dans un environnement géré préconfiguré. Pour héberger les services d'interface et la logique de backend personnalisée pour le prétraitement des requêtes, cette architecture nécessite la possibilité de déployer des applications personnalisées.
  • Avec l'option Agent Runtime, vous utilisez une plate-forme entièrement gérée conçue pour la diffusion d'agents. Agent Runtime réduit les frais de gestion et s'intègre étroitement à Gemini Enterprise.
  • Avec les VM Compute Engine et les conteneurs GKE, vous êtes responsable de la gestion des ressources de calcul sous-jacentes, mais vous bénéficiez d'une plus grande flexibilité de configuration et d'un meilleur contrôle.

Pour en savoir plus sur le choix d'un service d'hébergement d'applications approprié, consultez les documents suivants :

Autres options d'infrastructure

Pour en savoir plus sur les autres options d'infrastructure, les modèles compatibles et les techniques d'ancrage que vous pouvez utiliser pour les applications d'IA générative dansGoogle Cloud, consultez Choisir des modèles et une infrastructure pour votre application d'IA générative.

Considérations de conception

Cette section fournit des conseils pour vous aider à développer dans Google Cloud une architecture d'IA générative compatible avec la fonction RAG qui répond à vos exigences spécifiques en termes de sécurité, de conformité, de fiabilité, de coût et de performances. Les conseils de cette section ne sont pas exhaustifs. En fonction des exigences spécifiques de votre application d'IA générative et des produits et fonctionnalités Google Cloud que vous utilisez, vous devrez peut-être prendre en compte des facteurs de conception et des compromis supplémentaires.

Pour obtenir une présentation des principes et des recommandations d'architecture spécifiques aux charges de travail d'IA et de ML dans Google Cloud, consultez la perspective IA et ML dans le Well-Architected Framework.

Sécurité, confidentialité et conformité

Cette section décrit les considérations de conception et les recommandations pour concevoir une topologie dans Google Cloud qui répond aux exigences de sécurité et de conformité de votre charge de travail.

Pour connaître les principes et recommandations de sécurité spécifiques aux charges de travail d'IA et de ML, consultez Enjeux spécifiques à l'IA et au ML : sécurité dans le Well-Architected Framework.

Agent Platform

Agent Platform est compatible avec les contrôles de sécurité Google Cloudqui vous permettent de répondre à vos exigences en termes de résidence des données, de chiffrement des données, de sécurité réseau et de transparence des accès. Pour en savoir plus, consultez la documentation suivante :

Les modèles d'IA générative peuvent produire des réponses nuisibles, en particulier lorsqu'ils reçoivent des requêtes explicites en ce sens. Pour améliorer la sécurité et limiter les cas d'utilisation abusive, vous pouvez configurer des filtres de contenu afin de bloquer les réponses potentiellement nuisibles. Pour en savoir plus, consultez Filtres de sécurité et de contenu.

Cloud Run

Par défaut, Cloud Run chiffre les données à l'aide deGoogle-owned and Google-managed encryption keys. Pour protéger vos conteneurs à l'aide de clés que vous contrôlez, vous pouvez utiliser des clés de chiffrement gérées par le client (CMEK). Pour en savoir plus, consultez Utiliser des clés de chiffrement gérées par le client.

Pour vous assurer que seules les images de conteneurs autorisées sont déployées sur Cloud Run, vous pouvez utiliser l'autorisation binaire.

Cloud Run vous aide à répondre aux exigences de résidence des données. Vos fonctions Cloud Run s'exécutent dans la région sélectionnée.

Cloud Storage

Par défaut, Cloud Storage chiffre les données qu'il stocke à l'aide de Google-owned and Google-managed encryption keys. Si nécessaire, vous pouvez utiliser des clés CMEK ou vos propres clés que vous gérez à l'aide d'une méthode de gestion externe, telle que les clés de chiffrement fournies par le client (CSEK). Pour en savoir plus, consultez Options de chiffrement des données.

Cloud Storage propose deux méthodes pour autoriser des utilisateurs à accéder à vos buckets et objets : Identity and Access Management (IAM) et les listes de contrôle des accès (LCA). Dans la plupart des cas, nous vous recommandons d'utiliser IAM, qui vous permet d'accorder des autorisations au niveau du bucket et du projet. Pour en savoir plus, consultez la page Présentation du contrôle des accès.

Les données que vous chargez dans le sous-système d'ingestion de données via Cloud Storage peuvent inclure des données sensibles. Vous pouvez utiliser Sensitive Data Protection pour découvrir, classer et anonymiser les données sensibles. Pour en savoir plus, consultez Utiliser Sensitive Data Protection avec Cloud Storage.

Cloud Storage vous aide à répondre aux exigences de résidence des données. Cloud Storage stocke ou réplique les données dans la région que vous spécifiez.

Pub/Sub

Par défaut, Pub/Sub chiffre tous les messages, y compris ceux au repos et en transit, à l'aide deGoogle-owned and Google-managed encryption keys. Pub/Sub permet d'utiliser des CMEK pour le chiffrement des messages au niveau de la couche d'application. Pour en savoir plus, consultez Configurer le chiffrement des messages.

Si vous avez des exigences de résidence des données, vous pouvez configurer des règles de stockage des messages pour vous assurer que les données des messages sont stockées dans des emplacements spécifiques.

Fiabilité

Cette section décrit les considérations de conception et les recommandations pour créer et exploiter une infrastructure fiable pour votre déploiement dans Google Cloud.

Pour connaître les principes et recommandations de fiabilité spécifiques aux charges de travail d'IA et de ML, consultez Enjeux spécifiques à l'IA et au ML : fiabilité dans le Well-Architected Framework.

Agent Platform

Agent Platform est compatible avec la résidence des données au repos. Agent Platform stocke vos données sources, y compris les données pour le RAG dans le datastore géré, dans l'Google Cloud emplacement que vous avez sélectionné. Cette séparation du traitement et du stockage est un aspect fondamental de la manière dont la plate-forme assure à la fois une fiabilité et une conformité élevées.

Cloud Run

Cloud Run est un service régional qui distribue et équilibre automatiquement la charge des instances de service sans état sur plusieurs zones d'une région. En cas de panne de zone, les services Cloud Run et les fonctions Cloud Run Functions continuent de s'exécuter sans interruption. Pour assurer la résilience contre les pannes régionales, vous pouvez déployer des services Cloud Run dans plusieurs régions derrière un équilibreur de charge d'application externe global. Pour en savoir plus, consultez la page Diffuser du trafic provenant de plusieurs régions.

Dans le sous-système d'ingestion de données, les fonctions Cloud Run basées sur des événements peuvent rencontrer des défaillances temporaires ou recevoir des événements en double en raison de la distribution de type "au moins une fois". Pour gérer ces scénarios de manière fiable, tenez compte des bonnes pratiques suivantes :

Cloud Storage

Vous pouvez créer des buckets Cloud Storage dans l'un des trois types d'emplacements suivants : régional, birégional ou multirégional. Pour les données stockées dans des buckets régionaux, Cloud Storage réplique ces données de manière synchrone dans plusieurs zones d'une même région. Pour une disponibilité plus élevée, vous pouvez utiliser des buckets birégionaux ou multirégionaux, dans lesquels Cloud Storage réplique les données de manière asynchrone entre les régions. Assurez-vous que votre choix est conforme à vos exigences de conformité.

Optimisation des coûts

Cette section fournit des conseils pour optimiser les coûts de configuration et d'exploitation d'une topologie Google Cloud que vous créez à l'aide de cette architecture de référence.

Pour connaître les principes et recommandations d'optimisation des coûts spécifiques aux charges de travail d'IA et de ML, consultez Perspective de l'IA et du ML : optimisation des coûts dans le Well-Architected Framework.

Agent Platform

Le modèle d'IA sous-jacent que l'agent appelle peut influencer directement le coût d'utilisation de cet agent. La tarification est calculée en fonction du nombre de jetons d'entrée et de sortie pour chaque requête. Pour en savoir plus, consultez Quotas et limites du système de l'IA générative sur Agent Platform et le simulateur de coûtGoogle Cloud .

Pour savoir comment réduire le nombre de jetons afin de réduire les coûts, consultez la présentation de la mise en cache de contexte.

Cloud Run

Pour optimiser le coût de vos services Cloud Run et de vos fonctions Cloud Run, tenez compte des recommandations suivantes :

  • Paramètres de facturation : choisissez un paramètre de facturation approprié en fonction de votre modèle de trafic. Utilisez la facturation basée sur les requêtes (par défaut) pour les charges de travail sporadiques ou irrégulières, telles que les fonctions Cloud Run basées sur des événements dans le pipeline d'ingestion de données, afin de ne payer que pour le processeur et la mémoire pendant le traitement des requêtes. Pour les services Cloud Run dont le trafic est stable et prévisible, envisagez la facturation basée sur les instances, qui élimine les frais par requête et facture un tarif de calcul par seconde inférieur.
  • Processeur, mémoire et simultanéité : commencez par les allocations de processeur et de mémoire par défaut, puis ajustez la limite de processeur et la limite de mémoire en fonction de l'utilisation surveillée. Ajustez le nombre maximal de requêtes simultanées par instance afin que moins d'instances puissent gérer les requêtes simultanées liées aux E/S (par exemple, en attendant les réponses du modèle ou de l'API).
  • Limites de scaling des instances : configurez le nombre maximal d'instances pour limiter les coûts de scaling lors de pics de trafic inattendus, et équilibrez le nombre minimal d'instances par rapport aux exigences de latence de démarrage à froid.
  • Remises sur engagement d'utilisation : si vous pouvez prévoir les besoins en ressources de calcul de vos charges de travail Cloud Run, vous pouvez réduire les coûts grâce aux remises sur engagement d'utilisation Cloud Run.

Pour en savoir plus, consultez Bonnes pratiques pour optimiser les coûts des services Cloud Run.

Cloud Storage

Pour le bucket Cloud Storage que vous utilisez pour charger des données dans le sous-système d'ingestion de données, choisissez une classe de stockage appropriée en fonction des exigences de conservation des données et de fréquence d'accès de vos charges de travail. Par exemple, vous pouvez choisir la classe de stockage Standard et utiliser la gestion du cycle de vie des objets pour contrôler les coûts de stockage. La gestion du cycle de vie des objets rétrograde automatiquement les objets vers une classe de stockage plus économique ou les supprime en fonction des conditions que vous définissez.

Optimisation des performances

Cette section décrit les considérations de conception et les recommandations pour concevoir une topologie dans Google Cloud qui répond aux exigences de performances de vos charges de travail.

Pour connaître les principes et recommandations d'optimisation des performances spécifiques aux charges de travail d'IA et de ML, consultez Perspective de l'IA et du ML : optimisation des performances dans le Well-Architected Framework.

Gemini Enterprise

Pour réduire la latence lors de la diffusion, diffusez les réponses en envoyant les réponses du modèle avant que l'agent ne génère la sortie complète. Ainsi, les résultats sont traités en temps réel. Vous pouvez ainsi mettre à jour votre interface utilisateur immédiatement et effectuer d'autres tâches simultanées. Le streaming améliore la réactivité perçue et crée une expérience utilisateur plus interactive. Pour en savoir plus, consultez Obtenir des résultats de recherche à l'aide de StreamAssist.

Lorsque vous créez et enregistrez des agents ADK (Agent Development Kit) personnalisés sur Agent Runtime, réduisez les sauts multi-agents séquentiels, les allers-retours d'outils et les passes de résumé redondantes pour réduire la latence de bout en bout. Pour en savoir plus, consultez Bonnes pratiques pour les performances et la fiabilité.

Cloud Run

Ajustez les allocations de processeur et de mémoire pour vos services Cloud Run et vos fonctions Cloud Run en fonction des exigences de performances de la charge de travail. Pour réduire la latence de démarrage à froid lors du scaling à partir de zéro, activez l'optimisation du processeur au démarrage afin de fournir temporairement un processeur supplémentaire lors du démarrage de l'instance de conteneur, ou configurez un nombre minimal d'instances pour maintenir les instances en attente. Pour en savoir plus, consultez Configurer les limites de processeur pour les services et Configurer les limites de mémoire pour les services.

Cloud Storage

Pour importer des fichiers volumineux, vous pouvez utiliser une méthode appelée importations composites parallèles. Grâce à cette stratégie, les fichiers volumineux sont divisés en fragments. Vous importez les fragments dans Cloud Storage en parallèle, puis Cloud Storage réassemble les données dans Google Cloud. Les importations composites parallèles peuvent être plus rapides que les opérations d'importation standards si vous disposez d'une bande passante réseau et d'une vitesse de disque suffisantes. Cependant, cette stratégie présente certaines limites et a des répercussions en termes de coûts. Pour en savoir plus, consultez Importations composites parallèles.

Déploiement

Pour déployer cette architecture de référence, utilisez l'exemple Terraform disponible sur GitHub. Pour en savoir plus, consultez Infrastructure RAG pour les applications d'IA générative à l'aide de Gemini Enterprise et d'Agent Platform.

Étapes suivantes

Contributeurs

Auteur : Samantha He | Rédactrice technique

Autres contributeurs :