Ce document fournit une architecture de référence pour vous aider à concevoir un système d'IA mono-agent sur Google Cloud. Le système mono-agent de cette architecture est créé à l'aide d'Agent Development Kit (ADK) et déployé sur Cloud Run. Vous pouvez également déployer l'agent sur Vertex AI Agent Engine ou Google Kubernetes Engine (GKE). L'architecture utilise le Model Context Protocol (MCP), qui permet à l'agent d'accéder à des informations provenant de plusieurs sources et de les traiter afin de fournir des insights riches en contexte.
Ce document s'adresse aux architectes, aux développeurs et aux administrateurs d'applications d'IA. 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 suppose également que vous avez des connaissances de base sur les agents et modèles d'IA. Il ne fournit pas de conseils spécifiques pour la conception et le codage d'agents d'IA.
La section Déploiement de ce document liste des exemples de code que vous pouvez utiliser pour apprendre à créer et à déployer des systèmes d'IA à agent unique.
Architecture
Le schéma suivant illustre une architecture pour un système d'IA mono-agent déployé sur Cloud Run :
Composants d'architecture
L'exemple d'architecture se compose des composants suivants :
| Composant | Description |
|---|---|
| Interface | Les utilisateurs interagissent avec l'agent via une interface utilisateur, telle qu'une interface de chat, qui s'exécute en tant que service Cloud Run sans serveur. |
| Agent | L'agent reçoit les requêtes des utilisateurs, interprète leur intention, sélectionne les outils appropriés, puis synthétise les informations pour répondre aux questions. |
| Environnement d'exécution de l'agent | L'agent est créé à l'aide du kit de développement d'agent et déployé en tant que service Cloud Run sans serveur. Vous pouvez également déployer l'agent sur Vertex AI Agent Engine ou en tant qu'application conteneurisée sur GKE. Pour savoir comment choisir un environnement d'exécution d'agent, consultez Choisir les composants de votre architecture d'IA agentive. |
| ADK | ADK fournit des outils et un framework pour développer, tester et déployer des agents. ADK élimine la complexité de la création d'agents et permet aux développeurs d'IA de se concentrer sur la logique et les capacités de l'agent. Lorsque vous développez des agents à l'aide de l'ADK, vous pouvez configurer les agents pour qu'ils accèdent à des outils intégrés tels que la recherche Google et les utilisent. |
| Modèle d'IA et environnement d'exécution du modèle | Pour la diffusion d'inférences, l'agent de cet exemple d'architecture utilise le modèle d'IA Gemini sur Vertex AI. |
| MCP Toolbox | MCP Toolbox for Databases fournit des outils spécifiques aux bases de données pour l'agent. Il peut gérer des complexités telles que le regroupement de connexions et l'authentification. |
| Clients, serveurs et outils MCP | Le MCP facilite l'accès aux outils en standardisant l'interaction entre les agents et les outils. Pour chaque paire agent-outil, un client MCP envoie des requêtes à un serveur MCP par le biais duquel l'agent accède à un outil tel qu'un système de fichiers ou une API. Par exemple, des outils externes tels que l'outil LangChain StackOverflow et l'outil Recherche Google peuvent fournir des données et un ancrage. |
| Observabilité | L'agent est surveillé à l'aide de Google Cloud Observability pour la journalisation, la surveillance et le traçage. |
Flux agentif
L'exemple de système à agent unique dans l'architecture précédente présente le flux suivant :
- Un utilisateur saisit une requête dans une interface utilisateur, telle qu'une interface de chat, qui s'exécute en tant que service Cloud Run sans serveur.
- L'interface transfère la requête à l'agent.
- L'agent utilise le modèle d'IA pour raisonner sur la requête de l'utilisateur et synthétiser une réponse :
- Le modèle d'IA détermine les outils à utiliser pour recueillir des informations contextuelles ou effectuer une tâche.
- L'agent effectue des appels d'outils et ajoute la réponse à son contexte.
- L'agent effectue l'ancrage et la validation intermédiaire.
Produits utilisés
Cette architecture de référence utilise les produits et outils Google Cloud et Open Source suivants :
- Cloud Run : plate-forme de calcul gérée qui vous permet d'exécuter des conteneurs directement sur l'infrastructure évolutive de Google.
- Gemini: famille de modèles d'IA multimodaux développés par Google.
- Vertex AI : plate-forme de ML qui vous permet d'entraîner et de déployer des modèles de ML et des applications d'IA, et de personnaliser les LLM à utiliser dans des applications basées sur l'IA.
- Model Context Protocol (MCP) : norme Open Source permettant de connecter des applications d'IA à des systèmes externes.
- MCP Toolbox for Databases : serveur MCP (Model Context Protocol) Open Source qui permet aux agents d'IA de se connecter de manière sécurisée aux bases de données en gérant les complexités associées, comme le regroupement de connexions, l'authentification et l'observabilité.
- Google Cloud Observability : services d'observabilité, y compris Cloud Monitoring, Cloud Logging et Cloud Trace, pour vous aider à comprendre le comportement, l'état et les performances de vos applications.
Cas d'utilisation
Cette section décrit les cas d'utilisation possibles pour l'architecture décrite dans ce document.
Tri automatisé des rapports de bug
Vous pouvez adapter cette architecture de référence pour automatiser le tri des rapports de bug entrants : comprendre le problème, rechercher les doublons, recueillir le contexte technique pertinent, puis créer un bug dans le système. Un agent optimisé par l'IA peut servir d'assistant intelligent capable d'effectuer l'enquête initiale, ce qui permet aux experts humains de se concentrer sur la résolution de problèmes plus complexes.
Pour ce cas d'utilisation, l'architecture offre les avantages suivants :
- Temps de résolution plus rapides : l'agent automatise la recherche initiale et la collecte de contexte, ce qui peut réduire considérablement le temps nécessaire pour attribuer et résoudre les tickets de bug.
- Précision et cohérence améliorées : l'agent peut effectuer des recherches systématiques dans plusieurs sources de données (bases de données internes, dépôts de code et Web public). Cette fonctionnalité permet une analyse plus complète et cohérente que le tri manuel.
- Réduction de la charge de travail manuelle : l'agent peut décharger les équipes d'assistance informatique et d'ingénierie des tâches de tri répétitives, ce qui leur permet de se concentrer sur des tâches à plus forte valeur ajoutée.
Cette architecture est idéale pour toute organisation qui développe des logiciels et qui souhaite améliorer l'efficacité de son processus de résolution des bugs. Pour en savoir plus et découvrir les options de déploiement, consultez Assistant de correction de bugs logiciels : exemple d'agent Python ADK et Créer un agent : de zéro à assistant avec ADK.
Service client
Vous pouvez adapter cette architecture de référence pour offrir une expérience d'achat fluide et personnalisée à vos clients. Un agent optimisé par l'IA peut fournir un service client, recommander des produits, gérer des commandes et planifier des services, ce qui permet aux représentants humains de se concentrer sur d'autres tâches.
Pour ce cas d'utilisation, l'architecture offre les avantages suivants :
Ventes incitatives et promotions : l'agent peut vous aider à augmenter vos ventes en suggérant des produits, des services et des promotions. Les suggestions de l'agent sont basées sur la commande actuelle du client et les promotions associées, sur son historique de commandes et sur les articles qu'il a ajoutés à son panier.
Gestion et planification des commandes : l'agent peut améliorer l'efficacité et réduire les frictions avec les clients en gérant le contenu de leur panier et en facilitant la planification autonome des services.
Réduction de la charge de travail manuelle : l'agent gère les demandes générales, les commandes et la planification, ce qui permet aux agents du service client humain de se concentrer sur les problèmes clients plus complexes.
Cette architecture est idéale pour toute organisation de vente au détail qui souhaite améliorer l'expérience client, augmenter ses ventes et simplifier la gestion et la planification des commandes. Pour en savoir plus et découvrir les options de déploiement, consultez Agent du service client Cymbal Home & Garden.
Prévision de séries temporelles
Vous pouvez adapter cette architecture de référence pour prédire des résultats, comme la prévision de la demande, la prédiction des tendances du trafic ou l'analyse et la prédiction des défaillances de machines. Un agent optimisé par l'IA peut analyser les données en temps réel, les tendances historiques et les événements à venir. L'agent peut utiliser ces analyses pour prévoir les résultats pour une période donnée. Ces prévisions peuvent vous aider à planifier vos campagnes et à réduire le temps passé par les analystes de données humains.
Ce cas d'utilisation peut être utile aux organisations dans de nombreux scénarios, par exemple :
- Gestion des stocks : en utilisant l'analyse avancée combinée aux données de ventes historiques et aux tendances du marché, l'agent peut vous aider à planifier les commandes de réapprovisionnement afin de vous préparer aux pics ou aux creux de la demande des clients.
- Itinéraires de voyage : l'agent peut aider les fournisseurs de services et de livraison à gagner du temps et à réduire leurs frais de déplacement en analysant les tendances du trafic en temps réel et historiques, ainsi que les événements tels que les travaux ou les fermetures de routes.
- Éviter les pannes : l'agent peut vous aider à éviter d'éventuelles interruptions de service en identifiant la cause première des pannes passées. Il peut également vous aider à prédire les futurs états de défaillance potentiels afin que vous puissiez atténuer un problème avant qu'il ne devienne critique.
Cette architecture est idéale pour toute organisation qui a besoin de s'adapter à l'évolution des tendances en fonction de celles déjà établies. Il est également idéal pour les organisations dont les clients peuvent bénéficier d'insights proactifs qui les aident à planifier l'avenir. Pour en savoir plus et découvrir les options de déploiement, consultez Agent de prévision de séries temporelles avec l'ADK et la boîte à outils MCP de Google.
Récupération de documents
Vous pouvez adapter cette architecture de référence pour utiliser le moteur RAG Vertex AI et créer un agent pour gérer la récupération des données contextuelles. Un agent de récupération de documents peut extraire des données pertinentes d'un ensemble de documents sélectionnés pour fournir des réponses factuelles avec des citations de la source.
Avec un agent de récupération de documents, vous pouvez vous assurer que les clients et les utilisateurs internes obtiennent des réponses informées et contextualisées à leurs requêtes. Cette implémentation peut contribuer à réduire les erreurs et les inexactitudes en veillant à ce que les réponses soient basées sur les informations que vous avez validées.
Une architecture de récupération de documents est idéale pour les bases de connaissances sur les règles et les processus, l'infrastructure technique, les fonctionnalités des produits et d'autres documentations factuelles. Pour savoir comment développer un agent de récupération de documents optimisé par la génération augmentée de récupération (RAG), consultez Agent de récupération de documents.
Alternatives de conception
Cette section présente d'autres approches de conception que vous pouvez envisager pour le déploiement de votre agent d'IA dans Google Cloud.
Environnement d'exécution de l'agent
Dans l'architecture décrite dans ce document, l'agent et ses outils sont déployés sur Cloud Run. Vous pouvez également utiliser GKE ou Vertex AI Agent Engine comme autre environnement d'exécution. Pour savoir comment choisir un environnement d'exécution d'agent, consultez Environnement d'exécution d'agent dans "Choisir les composants de votre architecture d'IA agentique".
Exécution du modèle d'IA
Dans l'architecture décrite dans ce document, le runtime du modèle d'IA est Vertex AI. Vous pouvez également utiliser Cloud Run ou GKE comme autre environnement d'exécution. Pour savoir comment choisir un environnement d'exécution de modèle, consultez Environnement d'exécution de modèle dans "Choisir les composants de votre architecture d'IA agentive".
Considérations de conception
Cette section fournit des conseils pour vous aider à utiliser cette architecture de référence afin de développer une architecture répondant à vos exigences spécifiques en termes de sécurité, de fiabilité, de coût, d'efficacité opérationnelle et de performances.
Conception du système
Cette section vous aide à choisir des régions Google Cloud pour votre déploiement et à sélectionner les produits et outils Google Cloud appropriés.
Sélection de la région
Lorsque vous sélectionnez des Google Cloud régions pour vos applications d'IA, tenez compte des facteurs suivants :
- Disponibilité des services Google Cloud dans chaque région.
- Exigences relatives à la latence tolérée par l'utilisateur final.
- Coût des ressources Google Cloud .
- Exigences réglementaires.
Pour sélectionner les Google Cloud emplacements appropriés pour vos applications, utilisez les outils suivants :
- Google Cloud Outil de sélection de région : outil Web interactif permettant de sélectionner la région Google Cloudoptimale pour vos applications et vos données en fonction de facteurs tels que l'empreinte carbone, le coût et la latence.
- API Cloud Location Finder : API publique qui permet de trouver de manière programmatique les emplacements de déploiement dans Google Cloud, Google Distributed Cloud et d'autres fournisseurs de services cloud.
Conception de l'agent
Cette section fournit des recommandations générales pour la conception d'agents d'IA. Les conseils détaillés sur l'écriture du code et de la logique de l'agent ne sont pas abordés dans ce document.
| Objet de la conception | Recommandations |
|---|---|
| Définition et conception de l'agent |
|
| Interactions avec l'agent |
|
| Contexte, outils et données |
|
Mémoire et stockage de session
L'exemple d'architecture présenté dans ce document n'inclut pas de stockage en mémoire ni de stockage de session. Dans un environnement de production, vous pouvez améliorer les réponses et ajouter de la personnalisation en intégrant l'état et la mémoire à votre agent.
- Session : une session est le fil de conversation entre un utilisateur et l'agent, de l'interaction initiale à la fin du dialogue.
- État : L'état correspond aux données que l'agent utilise et collecte au cours d'une session spécifique. Les données d'état collectées incluent l'historique des messages échangés entre l'utilisateur et l'agent, les résultats des appels d'outils et d'autres variables dont l'agent a besoin pour comprendre le contexte de la conversation.
L'ADK peut suivre les sessions dans la mémoire à court terme à l'aide de l'objet Session et des attributs state. L'ADK est également compatible avec la mémoire à long terme pour les sessions du même utilisateur, y compris via la banque de mémoire.
Pour stocker l'état de la session, vous pouvez également utiliser des services tels que Memorystore pour Redis.
Pour en savoir plus sur les options de mémoire de l'agent, consultez Choisir les composants de votre architecture d'IA agentique.
Sécurité
Cette section décrit les considérations et recommandations de conception pour concevoir une topologie dans Google Cloud qui répond aux exigences de sécurité de votre charge de travail.
| Composant | Remarques et recommandations concernant la conception |
|---|---|
| Agents |
Les agents d'IA présentent certains risques de sécurité uniques et critiques que les pratiques de sécurité conventionnelles et déterministes ne sont pas en mesure d'atténuer de manière adéquate. Google recommande une approche qui combine les points forts des contrôles de sécurité déterministes avec des défenses dynamiques basées sur le raisonnement. Cette approche repose sur trois principes fondamentaux : la supervision humaine, l'autonomie des agents soigneusement définie et l'observabilité. Vous trouverez ci-dessous des recommandations spécifiques qui s'alignent sur ces principes fondamentaux. Supervision humaine : un système d'IA agentive peut parfois échouer ou ne pas fonctionner comme prévu. Par exemple, le modèle peut générer du contenu inexact ou un agent peut sélectionner des outils inappropriés. Dans les systèmes d'IA agentive essentiels à l'activité, intégrez un flux avec intervention humaine pour permettre aux superviseurs humains de surveiller, de remplacer et de suspendre les agents. Par exemple, les utilisateurs humains peuvent examiner la sortie des agents, l'approuver ou la refuser, et fournir des conseils supplémentaires pour corriger les erreurs ou prendre des décisions stratégiques. Cette approche combine l'efficacité des systèmes d'IA agentive avec l'esprit critique et l'expertise du domaine des utilisateurs humains. Contrôle des accès pour les agents : configurez les autorisations des agents à l'aide des contrôles Identity and Access Management (IAM). N'accordez à chaque agent que les autorisations dont il a besoin pour effectuer ses tâches et communiquer avec les outils et les autres agents. Cette approche permet de minimiser l'impact potentiel d'une brèche de sécurité, car un agent compromis aurait un accès limité aux autres parties du système. Pour en savoir plus, consultez Configurer l'identité et les autorisations de votre agent et Gérer l'accès aux agents déployés. Surveillance : surveillez le comportement des agents à l'aide de fonctionnalités de traçage complètes qui vous permettent de suivre chaque action d'un agent, y compris son processus de raisonnement, la sélection d'outils et les chemins d'exécution. Pour en savoir plus, consultez Journalisation d'un agent dans Vertex AI Agent Engine et Journalisation dans le kit ADK. Pour en savoir plus sur la sécurisation des agents d'IA, consultez Sécurité et protection pour les agents d'IA. |
| Vertex AI |
Responsabilité partagée : la sécurité est une responsabilité partagée. Vertex AI sécurise l'infrastructure sous-jacente et fournit des outils et des contrôles de sécurité pour vous aider à protéger vos données, votre code et vos modèles. Vous êtes responsable de la configuration appropriée de vos services, de la gestion des contrôles d'accès et de la sécurisation de vos applications. Pour en savoir plus, consultez Responsabilité partagée de Vertex AI. Contrôles de sécurité : Vertex AI est compatible avec les contrôles de sécurité Google Cloud que vous pouvez utiliser pour répondre à vos exigences en termes de résidence des données, de clés de chiffrement gérées par le client (CMEK), de sécurité réseau à l'aide de VPC Service Controls et de transparence des accès. Pour en savoir plus, consultez la documentation suivante :
Sécurité : les modèles d'IA peuvent générer des réponses nuisibles, parfois en réponse à des requêtes malveillantes.
Accès aux modèles : vous pouvez configurer des règles d'administration pour limiter le type et les versions des modèles d'IA pouvant être utilisés dans un projet Google Cloud . Pour en savoir plus, consultez Contrôler l'accès aux modèles Model Garden. Protection des données : pour découvrir et anonymiser les données sensibles dans les requêtes et les réponses, ainsi que dans les données de journaux, utilisez l'API Cloud Data Loss Prevention. Pour en savoir plus, regardez cette vidéo : Protéger les données sensibles dans les applications d'IA. |
| MCP | Lorsque vous configurez vos agents pour qu'ils utilisent MCP, assurez-vous que l'accès aux données et outils externes est autorisé, implémentez des contrôles de confidentialité tels que le chiffrement, appliquez des filtres pour protéger les données sensibles et surveillez les interactions des agents. Pour en savoir plus, consultez MCP et sécurité. |
| A2A |
Sécurité du transport : le protocole A2A impose le protocole HTTPS pour toutes les communications A2A dans les environnements de production et recommande les versions 1.2 ou ultérieures du protocole Transport Layer Security (TLS). Authentification : le protocole A2A délègue l'authentification à des mécanismes Web standards tels que les en-têtes HTTP et à des normes telles qu'OAuth2 et OpenID Connect. Chaque agent indique les exigences d'authentification dans sa fiche d'agent. Pour en savoir plus, consultez Authentification A2A. |
| Cloud Run |
Sécurité de l'entrée (pour le service d'interface) : pour contrôler l'accès à l'application, désactivez l'URL Authentification de l'utilisateur :
Pour en savoir plus, consultez Authentifier les utilisateurs. Sécurité des images de conteneurs : pour vous assurer que seules les images de conteneurs autorisées sont déployées sur Cloud Run, vous pouvez utiliser l' autorisation binaire. Pour identifier et atténuer les risques de sécurité dans les images de conteneurs, utilisez Artifact Analysis pour exécuter automatiquement des analyses des failles. Pour en savoir plus, consultez Présentation de l'analyse des conteneurs. Résidence des données : 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. Pour obtenir plus de conseils sur la sécurité des conteneurs, consultez Conseils de développement généraux pour Cloud Run. |
| Tous les produits de l'architecture |
Chiffrement des données : par défaut, Google Cloudchiffre les données au repos à l'aide de Google-owned and Google-managed encryption keys. Pour protéger les données de vos agents à l'aide de clés de chiffrement que vous contrôlez, vous pouvez utiliser des CMEK que vous créez et gérez dans Cloud KMS. Pour en savoir plus sur les services Google Cloud compatibles avec Cloud KMS, consultez Services compatibles. Limitez le risque d'exfiltration de données : pour réduire le risque d'exfiltration de données, créez un périmètre VPC Service Controls autour de l'infrastructure. VPC Service Controls est compatible avec tous les services Google Cloud utilisés par cette architecture de référence. Contrôle des accès : lorsque vous configurez les autorisations pour les ressources de votre topologie, respectez le principe du moindre privilège. Sécurité de l'environnement cloud : utilisez les outils de Security Command Center pour détecter les failles, identifier et atténuer les menaces, définir et déployer une stratégie de sécurité, et exporter des données pour une analyse plus approfondie. Optimisation post-déploiement : une fois votre application déployée dans Google Cloud, obtenez des recommandations pour optimiser davantage la sécurité à l'aide d'Active Assist. Examinez les recommandations et appliquez-les en fonction de votre environnement. Pour en savoir plus, consultez Trouver des recommandations dans Active Assist. |
Autres recommandations de sécurité
- Well-Architected Framework : enjeux spécifiques à l'IA et au ML : sécurité
- Présentation de l'approche de Google pour sécuriser les agents d'IA
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.
| Composant | Remarques et recommandations concernant la conception |
|---|---|
| Agent |
Simulez des échecs : avant de déployer le système d'IA agentique en production, validez-le en simulant un environnement de production. Identifier et résoudre les problèmes et les comportements inattendus. Effectuez un scaling horizontal : pour garantir une haute disponibilité et une tolérance aux pannes, exécutez plusieurs instances de votre application d'agent derrière un équilibreur de charge. Cette approche peut également contribuer à réduire la latence et les délais d'expiration en distribuant les requêtes sur plusieurs instances. Certains runtimes d'agent gèrent automatiquement l'équilibrage de charge pour vous, par exemple avec l'autoscaling des instances dans les services Cloud Run. Récupérer après des pannes : pour vous assurer que l'agent peut gérer les redémarrages de manière fluide et maintenir le contexte, dissociez l'état de l'exécution. Pour implémenter une telle application d'agent sans état, utilisez un datastore externe tel qu'une base de données ou un cache distribué. Par exemple, vous pouvez utiliser Memory Bank, Memorystore pour Redis ou un service de base de données tel que Cloud SQL. Gérez les erreurs : pour permettre le diagnostic et la résolution des erreurs, implémentez des mécanismes de journalisation, de gestion des exceptions et de réessai. |
| Vertex AI |
Gestion des quotas : Vertex AI est compatible avec le quota partagé dynamique pour les modèles Gemini. DSQ vous aide à gérer de manière flexible les demandes de paiement à l'utilisation. Il vous évite également de gérer manuellement les quotas ou de demander des augmentations de quota. DSQ alloue dynamiquement les ressources disponibles pour un modèle et une région donnés aux clients actifs. Avec DSQ, il n'existe aucune limite de quota prédéfinie pour les clients individuels. Planification de la capacité : si le nombre de requêtes envoyées au modèle dépasse la capacité allouée, le code d'erreur 429 est renvoyé. Pour les charges de travail critiques pour l'entreprise et qui nécessitent un débit élevé constant, vous pouvez réserver le débit à l'aide du débit provisionné. Disponibilité des points de terminaison de modèle : si les données peuvent être partagées dans plusieurs régions ou pays, vous pouvez utiliser un point de terminaison global pour le modèle. |
| Cloud Run |
Robustesse en cas de pannes d'infrastructure : Cloud Run est un service régional. Il stocke les données de manière synchrone dans plusieurs zones d'une même région et équilibre automatiquement la charge du trafic entre les zones. En cas de panne zonale, Cloud Run continue de s'exécuter et les données ne sont pas perdues. En cas de panne régionale, le service cesse de fonctionner jusqu'à ce que Google résolve le problème. Scaling horizontal : les services Cloud Run gèrent l'autoscaling des instances pour vous. L'autoscaling permet de s'assurer que les instances peuvent gérer toutes les requêtes entrantes, tous les événements et l'utilisation du processeur nécessaires pour garantir une haute disponibilité. |
| Tous les produits de l'architecture |
Optimisation post-déploiement : une fois votre application déployée dans Google Cloud, obtenez des recommandations pour optimiser davantage la sécurité à l'aide d'Active Assist. Examinez les recommandations et appliquez-les en fonction de votre environnement. Pour en savoir plus, consultez Trouver des recommandations dans Active Assist. |
Pour obtenir des principes et des 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 framework Well-Architected.
Opérations
Cette section décrit les facteurs à prendre en compte lorsque vous utilisez cette architecture de référence pour concevoir une topologie Google Cloud que vous pouvez exploiter efficacement.
| Composant | Remarques et recommandations concernant la conception |
|---|---|
| Agent |
Débogage et analyse : implémentez la journalisation structurée dans votre application d'agent. La journalisation et le traçage vous permettent de capturer des informations clés dans un format structuré, comme les outils appelés, les entrées et sorties de l'agent, et la latence de chaque étape. |
| Vertex AI |
Surveillance à l'aide des journaux : par défaut, les journaux de l'agent écrits dans les flux Évaluation continue : effectuez régulièrement une évaluation qualitative de la sortie des agents et de la trajectoire ou des étapes suivies par les agents pour produire la sortie. Pour implémenter l'évaluation des agents, vous pouvez utiliser le service d'évaluation de l'IA générative ou les méthodes d'évaluation compatibles avec l'ADK. |
| Cloud Run |
État et performances : surveillez vos services Cloud Run à l'aide de Google Cloud Observability. Configurez des alertes dans Cloud Monitoring pour être averti des problèmes potentiels, tels qu'une augmentation des taux d'erreur, une latence élevée ou une utilisation anormale des ressources. |
| Bases de données |
État et performances : surveillez votre base de données à l'aide de Google Cloud Observability. Configurez des alertes dans Monitoring pour être averti des problèmes potentiels, comme une augmentation des taux d'erreur, une latence élevée ou une utilisation anormale des ressources. |
| MCP |
Outils de base de données : pour gérer efficacement les outils de base de données pour vos agents d'IA et vous assurer qu'ils gèrent de manière sécurisée les complexités telles que le regroupement de connexions et l'authentification, utilisez MCP Toolbox pour les bases de données. Il fournit un emplacement centralisé pour stocker et mettre à jour les outils de base de données. Vous pouvez partager les outils entre les agents et les mettre à jour sans les redéployer. La boîte à outils inclut un large éventail d'outils pour les bases de données Google Cloud , comme AlloyDB pour PostgreSQL, et pour les bases de données tierces, comme MongoDB. Modèles d'IA générative : pour permettre aux agents d'IA d'utiliser les modèles d'IA générative de Google, comme Imagen et Veo, vous pouvez utiliser les serveurs MCP pour les API de médias génératifs Google Cloud . Produits et outils de sécurité Google : pour permettre à vos agents d'IA d'accéder aux produits et outils de sécurité Google tels que Google Security Operations, Google Threat Intelligence et Security Command Center, utilisez les serveurs MCP pour les produits de sécurité Google. |
| Tous les produits Google Cloud de l'architecture |
Traçage : recueillez et analysez en continu les données de trace à l'aide de Trace. Les données de trace vous permettent d'identifier et de diagnostiquer rapidement les problèmes de latence dans les workflows d'agent complexes. Vous pouvez effectuer une analyse approfondie à l'aide des visualisations de la page "Explorateur Trace" de la console Google Cloud . Pour en savoir plus, consultez Tracer un agent. |
Pour obtenir des principes et des recommandations d'excellence opérationnelle spécifiques aux charges de travail d'IA et de ML, consultez Perspective de l'IA et du ML : excellence opérationnelle dans le framework Well-Architected.
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.
| Composant | Remarques et recommandations concernant la conception |
|---|---|
| Vertex AI |
Analyse et gestion des coûts : pour analyser et gérer les coûts Vertex AI, nous vous recommandons de créer des métriques de référence pour les requêtes par seconde (RPS) et les jetons par seconde (TPS). Ensuite, surveillez ces métriques après le déploiement. La référence permet également de planifier la capacité. Par exemple, la ligne de base vous aide à déterminer quand un débit provisionné peut être nécessaire. Sélection du modèle : le modèle que vous sélectionnez pour votre application d'IA a un impact direct sur les coûts et les performances. Pour identifier le modèle qui offre un équilibre optimal entre performances et coût pour votre cas d'utilisation spécifique, testez les modèles de manière itérative. Nous vous recommandons de commencer par le modèle le plus économique et de passer progressivement à des options plus puissantes. Requêtes économiques : la longueur de vos requêtes (entrée) et des réponses générées (sortie) affecte directement les performances et les coûts. Rédigez des requêtes courtes et directes, qui fournissent suffisamment de contexte. Concevez vos requêtes pour obtenir des réponses concises du modèle. Par exemple, incluez des expressions telles que "résume en deux phrases" ou "liste trois points clés". Pour en savoir plus, consultez les bonnes pratiques pour la conception des requêtes. Mise en cache du contexte : pour réduire le coût des requêtes contenant du contenu répété avec un nombre élevé de jetons d'entrée, utilisez la mise en cache du contexte. Requêtes par lot : le cas échéant, envisagez d'utiliser la prédiction par lot. Les requêtes par lots entraînent un coût inférieur à celui des requêtes standards. |
| Cloud Run |
Allocation de ressources : lorsque vous créez un service Cloud Run, vous pouvez spécifier la quantité de mémoire et de processeur à allouer. Commencez par les allocations de processeur et de mémoire par défaut. Observez l'utilisation et le coût des ressources au fil du temps, et ajustez l'allocation si nécessaire. Pour en savoir plus, consultez la documentation suivante :
Optimisation des tarifs : si vous pouvez prévoir les besoins en processeur et en mémoire, vous pouvez réaliser des économies grâce aux remises sur engagement d'utilisation. |
| Tous les produits de l'architecture | Optimisation post-déploiement : une fois votre application déployée dans Google Cloud, obtenez des recommandations pour optimiser davantage les coûts à l'aide d'Active Assist. Examinez les recommandations et appliquez-les en fonction de votre environnement. Pour en savoir plus, consultez Trouver des recommandations dans Active Assist. |
Pour estimer le coût de vos ressources Google Cloud , utilisez le simulateur de coûtGoogle Cloud .
Pour obtenir des principes et des 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 framework Well-Architected.
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.
| Composant | Remarques et recommandations concernant la conception |
|---|---|
| Agents |
Sélection du modèle : lorsque vous sélectionnez des modèles pour votre système d'IA agentive, tenez compte des capacités requises pour les tâches que les agents doivent effectuer. Optimisation des requêtes : pour améliorer et optimiser rapidement les performances des requêtes à grande échelle, et pour éviter de devoir les réécrire manuellement, utilisez l'optimiseur de requêtes Vertex AI. L'optimiseur vous aide à adapter efficacement les requêtes à différents modèles. |
| Vertex AI |
Sélection du modèle : le modèle que vous sélectionnez pour votre application d'IA a un impact direct sur les coûts et les performances. Pour identifier le modèle qui offre un équilibre optimal entre performances et coût pour votre cas d'utilisation spécifique, testez les modèles de manière itérative. Nous vous recommandons de commencer par le modèle le plus économique et de passer progressivement à des options plus puissantes. Ingénierie des requêtes : la longueur de vos requêtes (entrées) et des réponses générées (sorties) affecte directement les performances et les coûts. Rédigez des requêtes courtes et directes, qui fournissent suffisamment de contexte. Concevez vos requêtes pour obtenir des réponses concises du modèle. Par exemple, incluez des expressions telles que "résume en deux phrases" ou "liste trois points clés". Pour en savoir plus, consultez les bonnes pratiques pour la conception des requêtes. Mise en cache du contexte : pour réduire la latence des requêtes contenant du contenu répété avec un nombre élevé de jetons d'entrée, utilisez la mise en cache du contexte. |
| Cloud Run |
Allocation de ressources : en fonction de vos exigences en termes de performances, configurez la mémoire et le processeur à allouer au service Cloud Run. Pour en savoir plus, consultez la documentation suivante :
Pour obtenir d'autres conseils sur l'optimisation des performances, consultez Conseils de développement généraux pour Cloud Run. |
| Tous les produits de l'architecture | Optimisation post-déploiement : une fois votre application déployée dans Google Cloud, obtenez des recommandations pour optimiser davantage les performances à l'aide d'Active Assist. Examinez les recommandations et appliquez-les en fonction de votre environnement. Pour en savoir plus, consultez Trouver des recommandations dans Active Assist. |
Pour obtenir des principes et des 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 framework Well-Architected.
Déploiement
Le déploiement automatisé n'est pas disponible pour cette architecture de référence. Utilisez les exemples de code suivants pour vous aider à créer une architecture à agent unique :
- Déployez une architecture similaire en déployant l'exemple d'agent Python ADK de l'assistant de correction de bugs logiciels.
- En savoir plus sur la mémoire et l'état avec Python Tutor : exemple d'état et de mémoire ADK.
Pour obtenir des exemples de code qui vous aideront à utiliser ADK avec les serveurs MCP, consultez Outils MCP.
Pour obtenir des exemples de systèmes d'IA mono-agent supplémentaires, vous pouvez utiliser les exemples de code suivants. Ces exemples de code sont des points de départ entièrement fonctionnels pour l'apprentissage et l'expérimentation. Pour un fonctionnement optimal dans les environnements de production, vous devez personnaliser le code en fonction de vos besoins commerciaux et techniques spécifiques.
- Shopping personnalisé : fournissez des recommandations de produits personnalisées pour une marque, un marchand ou une place de marché en ligne spécifiques.
- Gestion des incidents : validez le jeton et l'identité de l'utilisateur final pour chaque requête à l'aide de la propagation dynamique de l'identité.
- Traitement des commandes : traitez et stockez les commandes, et orchestrez la confirmation par e-mail avec un examen humain conditionnel pour les quantités de commandes spécifiées.
- Ingénierie des données : développez des pipelines Dataform, résolvez les problèmes liés aux pipelines et gérez l'ingénierie des données, des requêtes SQL complexes aux transformations de données et aux dépendances de données.
- Récupération de documentation : utilisez RAG pour interroger les documents que vous importez dans le moteur RAG Vertex AI et obtenir des réponses avec des citations de documentation et de code.
Étapes suivantes
- Découvrez des exemples d'agents et d'outils dans Agent Garden.
- Créez des agents à l'aide d'ADK.
- Déployez des agents sur Google Cloud.
- Héberger des serveurs MCP sur Cloud Run
- Hébergez des applications et des agents d'IA sur Cloud Run.
- Découvrez comment implémenter une infrastructure RAG pour les applications d'IA générative dans Google Cloud.
- 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 de l'IA et du ML dans le framework Well-Architected.
- Pour découvrir d'autres architectures de référence, schémas et bonnes pratiques, consultez le Centre d'architecture cloud.
Contributeurs
- Kumar Dhanagopal Développeur de solutions multiproduits
- Megan O'Keefe | Developer Advocate
- Shir Meir Lador | Responsable de l'ingénierie des relations avec les développeurs