Create a data store and search app

Vérifier ma progression

/ 15

Debug your agent

Vérifier ma progression

/ 25

Set and utilize session state

Vérifier ma progression

/ 25

Deploy your agent to Agent Engine

Vérifier ma progression

/ 25

Configure a frontend to query your agent

Vérifier ma progression

/ 10

Cet atelier peut intégrer des outils d'IA pour vous accompagner dans votre apprentissage.

GENAI129

Score : vous devez obtenir un score d'au moins 80 % pour réussir cet atelier challenge.

Présentation

Au cours de cet atelier, vous démontrerez votre capacité à créer des agents à l'aide de l'Agent Development Kit (ADK), à les déployer sur Agent Engine et à les exploiter depuis une application Web.

Objectif

Au cours de cet atelier, vous allez :

  • Créer un agent avec Agent Development Kit (ADK) composé d'un agent racine et de sous-agents.
  • Permettre aux agents d'utiliser un outil Vertex AI Search et des outils de fonction personnalisés.
  • Stocker la sortie de l'agent dans l'état de la session et récupérer les valeurs de l'état de la session pour les instructions d'agent suivantes.
  • Déployer l'agent dans Agent Engine.
  • Interroger l'agent déployé sur Agent Engine.

Supports d'apprentissage associés

Si vous souhaitez trouver des ressources qui vous aideront à développer les compétences nécessaires pour réussir cet atelier, consultez les sections pertinentes ci-dessous :

Catégorie Ressources
Cours - Déployer des systèmes multi-agents avec Agent Development Kit (ADK) et Agent Engine
Ateliers de formation - Premiers pas avec Agent Development Kit (ADK)
- Équiper les agents ADK d'outils
- Créer des systèmes multi-agents avec ADK
- Déployer des agents ADK sur Agent Engine
- Créer des applications Vertex AI Search à l'aide d'AI Applications

Préparation

Avant de cliquer sur le bouton "Démarrer l'atelier"

Lisez ces instructions. Les ateliers sont minutés, et vous ne pouvez pas les mettre en pause. Le minuteur, qui démarre lorsque vous cliquez sur Démarrer l'atelier, indique combien de temps les ressources Google Cloud resteront accessibles.

Cet atelier pratique vous permet de suivre les activités dans un véritable environnement cloud, et non dans un environnement de simulation ou de démonstration. Des identifiants temporaires vous sont fournis pour vous permettre de vous connecter à Google Cloud le temps de l'atelier.

Pour réaliser cet atelier :

  • Vous devez avoir accès à un navigateur Internet standard (nous vous recommandons d'utiliser Chrome).
Remarque : Ouvrez une fenêtre de navigateur en mode incognito (recommandé) ou de navigation privée pour effectuer cet atelier. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.
  • Vous disposez d'un temps limité. N'oubliez pas qu'une fois l'atelier commencé, vous ne pouvez pas le mettre en pause.
Remarque : Utilisez uniquement le compte de participant pour cet atelier. Si vous utilisez un autre compte Google Cloud, des frais peuvent être facturés à ce compte.

Démarrer l'atelier et se connecter à la console Google Cloud

  1. Cliquez sur le bouton Démarrer l'atelier. Si l'atelier est payant, une boîte de dialogue s'affiche pour vous permettre de sélectionner un mode de paiement. Sur la gauche, vous trouverez le panneau "Détails concernant l'atelier", qui contient les éléments suivants :

    • Le bouton "Ouvrir la console Google Cloud"
    • Le temps restant
    • Les identifiants temporaires que vous devez utiliser pour cet atelier
    • Des informations complémentaires vous permettant d'effectuer l'atelier
  2. Cliquez sur Ouvrir la console Google Cloud (ou effectuez un clic droit et sélectionnez Ouvrir le lien dans la fenêtre de navigation privée si vous utilisez le navigateur Chrome).

    L'atelier lance les ressources, puis ouvre la page "Se connecter" dans un nouvel onglet.

    Conseil : Réorganisez les onglets dans des fenêtres distinctes, placées côte à côte.

    Remarque : Si la boîte de dialogue Sélectionner un compte s'affiche, cliquez sur Utiliser un autre compte.
  3. Si nécessaire, copiez le nom d'utilisateur ci-dessous et collez-le dans la boîte de dialogue Se connecter.

    {{{user_0.username | "Username"}}}

    Vous trouverez également le nom d'utilisateur dans le panneau "Détails concernant l'atelier".

  4. Cliquez sur Suivant.

  5. Copiez le mot de passe ci-dessous et collez-le dans la boîte de dialogue Bienvenue.

    {{{user_0.password | "Password"}}}

    Vous trouverez également le mot de passe dans le panneau "Détails concernant l'atelier".

  6. Cliquez sur Suivant.

    Important : Vous devez utiliser les identifiants fournis pour l'atelier. Ne saisissez pas ceux de votre compte Google Cloud. Remarque : Si vous utilisez votre propre compte Google Cloud pour cet atelier, des frais supplémentaires peuvent vous être facturés.
  7. Accédez aux pages suivantes :

    • Acceptez les conditions d'utilisation.
    • N'ajoutez pas d'options de récupération ni d'authentification à deux facteurs (ce compte est temporaire).
    • Ne vous inscrivez pas à des essais sans frais.

Après quelques instants, la console Cloud s'ouvre dans cet onglet.

Remarque : Pour accéder aux produits et services Google Cloud, cliquez sur le menu de navigation ou saisissez le nom du service ou du produit dans le champ Recherche. Icône du menu de navigation et champ de recherche

Scénario du challenge

Logo Cymbal Shops

Cymbal Shops est une chaîne de magasins américaine dont le siège se trouve à Minneapolis. Elle vend des articles pour la maison, des appareils électroniques et des vêtements.

Cymbal Shops s'est développé en Europe et a lancé un nouveau rayon dédié à la peinture. L'entreprise souhaite profiter de sa nouvelle présence en ligne afin de simplifier l'achat de peinture pour les projets de rénovation de ses clients.

L'un de vos collègues a commencé à développer un agent qu'il a appelé Paint Agent. Cet agent a pour objectif d'aider les utilisateurs à :

  • sélectionner un produit de peinture à partir des fiches techniques des produits Cymbal Shops ;
  • choisir une couleur dans la gamme de produits sélectionnée ;
  • déterminer la quantité de peinture nécessaire en fonction des dimensions des pièces ;
  • calculer le prix selon les options retenues.

Malheureusement, votre collègue a rencontré un bug, puis il a quitté l'entreprise.

En tant que nouvel ingénieur en ML chez Cymbal Shops, votre mission est de finaliser et de déployer Paint Agent. L'agent est structuré comme ceci :

Schéma de l'architecture de Paint Agent

Tâche 1 : Installer ADK et configurer votre environnement

Dans cet environnement d'atelier, l'API Vertex AI a été activée pour vous. Si vous deviez suivre ces étapes dans votre propre projet, vous l'activeriez en accédant à Vertex AI et en suivant l'invite.

Préparer un onglet dans l'éditeur Cloud Shell

  1. Dans la barre de titre de la console Google Cloud, cliquez sur Activer Cloud Shell (Activer Cloud Shell).

    Remarque  : Vous pouvez également sélectionner l'onglet du navigateur de la console, puis appuyer sur G, puis sur S pour ouvrir le terminal Cloud Shell.
  2. Cliquez sur Continuer.

  3. Si vous êtes invité à autoriser Cloud Shell, cliquez sur Autoriser.

  4. En haut à droite du panneau du terminal Cloud Shell, cliquez sur le bouton Ouvrir dans une nouvelle fenêtre Bouton "Ouvrir dans une nouvelle fenêtre".

  5. Cliquez sur l'icône en forme de crayon Ouvrir l'éditeur (Icône de modification en forme de crayon) en haut du volet pour afficher les fichiers.

  6. En haut du menu de navigation de gauche, cliquez sur l'icône de l'explorateur (Icône de l'explorateur) pour ouvrir l'explorateur de fichiers.

  7. Cliquez sur le bouton Ouvrir le dossier.

  8. Dans la boîte de dialogue "Ouvrir le dossier" qui s'affiche, cliquez sur OK pour sélectionner le dossier de base de votre compte élève Qwiklabs.

  9. Fermez les éventuels tutoriels ou panneaux Gemini qui s'affichent sur le côté droit de l'écran pour donner plus de place à l'éditeur de code.

  10. Pour le reste de cet atelier, vous pouvez utiliser cette fenêtre comme IDE avec l'éditeur Cloud Shell et le terminal Cloud Shell.

Télécharger et installer ADK et les exemples de code pour cet atelier

  1. Collez la commande suivante dans le terminal Cloud Shell afin de copier les fichiers d'un bucket Cloud Storage. Un répertoire de projet contenant le code pour cet atelier sera ainsi créé :

    gcloud storage cp -r gs://{{{project_0.project_id| YOUR_GCP_PROJECT_ID}}}-bucket/adk_challenge_lab .
  2. Mettez à jour votre variable d'environnement PATH et installez ADK ainsi que les autres éléments requis pour l'atelier en exécutant les commandes suivantes dans le terminal Cloud Shell.

    export PATH=$PATH:"/home/${USER}/.local/bin" python3 -m pip install -r adk_challenge_lab/requirements.txt

Tâche 2 : Créer une application de recherche AI Applications des informations relatives aux produits de peinture

Dans cette tâche, vous allez déployer un datastore AI Applications. Ce datastore importera une fiche technique décrivant les produits de peinture de Cymbal Shops. Vous pouvez prévisualiser ce document dans un onglet de votre fenêtre de navigation privée à l'adresse https://storage.cloud.google.com/-bucket/Cymbal_Shops_Paint_Datasheets.pdf). Cette fiche technique servira de source de données de référence pour les requêtes des utilisateurs concernant vos peintures.

  1. Créez un datastore AI Applications avec la configuration suivante :

    Champ Valeur
    Source de données Cloud Storage
    Type de données Documents
    Dossier ou fichier Fichier
    Fichier à importer -bucket/Cymbal_Shops_Paint_Datasheets.pdf
    Emplacement mondial
    Nom du datastore Cymbal Paint
    Analyseur de documents Analyseur de mise en page
    Activer l'annotation de tables Activé
    Inclure les en-têtes d'ancêtres dans les fragments Activé
  2. Créez une application de recherche AI Applications avec la configuration suivante :

    Champ Valeur
    Type d'application Recherche personnalisée (général)
    Nom de l'application Paint Search
    Nom de l'entreprise Cymbal Shops
    Emplacement mondial
    Datastore Cymbal Paint
  3. Copiez les commandes suivantes dans un fichier texte. Remplacez la valeur YOUR_ID de SEARCH_ENGINE_ID par l'ID du moteur de recherche que vous venez de créer (il ressemble à paint-search_1756... et se trouve dans la liste des applications dans AI Applications) :

    cd ~/adk_challenge_lab cat << EOF > .env GOOGLE_GENAI_USE_VERTEXAI=TRUE GOOGLE_CLOUD_PROJECT={{{project_0.project_id| YOUR_GCP_PROJECT_ID}}} GOOGLE_CLOUD_LOCATION={{{project_0.default_region| GCP_LOCATION}}} RESOURCES_BUCKET={{{project_0.project_id| YOUR_GCP_PROJECT_ID}}}-bucket MODEL={{{project_0.startup_script.gemini_flash_model_id | gemini_flash_model_id}}} SEARCH_ENGINE_ID=YOUR_ID EOF
  4. Après les avoir modifiées, exécutez les commandes dans le terminal Cloud Shell pour créer un fichier .env contenant les variables d'authentification et de configuration du modèle. [Remarque : Pour afficher un fichier caché (c'est-à-dire un fichier commençant par un point), accédez aux menus de l'éditeur Cloud Shell et activez Affichage > Afficher/Masquer les fichiers cachés.]

  5. Copiez le fichier .env dans le répertoire de l'agent pour fournir à l'agent les configurations d'authentification nécessaires une fois qu'il est déployé :

    cp .env paint_agent/.env

Cliquez sur Vérifier ma progression pour valider l'objectif. Créer un datastore et une application de recherche

Tâche 3 : Déboguer Paint Agent

Un de vos collègues a commencé à travailler sur Paint Agent, mais s'est retrouvé bloqué. Pour terminer et déployer l'agent, vous devez reprendre le travail là où il l'a laissé. Cela implique de corriger un bug qu'il n'a pas résolu.

  1. Dans le terminal Cloud Shell, exécutez la version actuelle de l'agent avec la commande suivante :

    adk run paint_agent
  2. Lorsque l'invite [user]: s'affiche, saisissez la commande :

    bonjour

    Si l'agent vous demande si vous souhaitez en savoir plus sur les peintures Cymbal Shops, répondez :

    oui

    Le résultat attendu se termine par :

    ... google.genai.errors.ClientError: 400 INVALID_ARGUMENT. {'error': {'code': 400, 'message': 'Multiple tools are supported only when they are all search tools.', 'status': 'INVALID_ARGUMENT'}}

    Vous allez résoudre cette erreur lors des prochaines étapes.

  3. Ouvrez le fichier adk_challenge_lab/paint_agent/agent.py et examinez les listes de sous-agents et d'outils utilisés par root_agent. Vous constatez que cela inclut plusieurs sous-agents. Le transfert vers des sous-agents appelle implicitement un outil transfer_to_agent.

  4. L'outil de root_agent n'est pas un outil de recherche. Par conséquent, au moins l'un des sous-agents doit appeler un outil de recherche. Explorez les sous-agents du répertoire sub_agents pour trouver l'outil de recherche utilisé (dans ce cas, VertexAiSearchTool) :

  5. Même si un outil de recherche ne peut pas être combiné à d'autres outils non liés à la recherche au sein d'un agent (y compris via un sous-agent, comme dans ce cas), ADK propose un outil nommé AgentTool qui peut encapsuler un agent isolé utilisant un outil de recherche. Cet agent-outil peut ensuite être utilisé conjointement avec d'autres outils.

    Revenez au fichier adk_challenge_lab/paint_agent/agent.py de root_agent et ajoutez AgentTool() à la liste des outils de l'agent racine. Fournissez les arguments suivants à AgentTool() :

    • agent doit être défini sur le sous-agent qui utilise l'outil de recherche que vous avez découvert ci-dessus.
    • skip_summarization doit être défini sur False, car vous souhaitez que l'agent génère un rapport sur les résultats renvoyés par l'outil de recherche.
  6. Supprimez ce sous-agent de la liste sub_agents.

  7. Enregistrez le fichier.

Remarque : Ne continuez l'atelier que lorsque votre datastore a été créé et votre document indexé. Pour suivre l'avancement, accédez au datastore AI Applications > Datastores > Cymbal Paint, sous l'onglet Documents.

En pratique, vous obtiendrez un résultat plus fiable si vous attendez quelques minutes après que l'état indique "Prêt" avant d'interroger votre agent.

  1. Dans le terminal Cloud Shell, exécutez à nouveau l'agent avec la commande suivante :

    adk run paint_agent

    Vous devriez maintenant pouvoir discuter avec l'agent et obtenir des informations sur les produits de peinture de Cymbal Shops.

  2. Demandez à l'agent le prix des peintures EcoGreens et Forever Paint.

    Cliquez sur Vérifier ma progression pour valider l'objectif. Déboguer votre agent

  3. Lorsque vous avez terminé de discuter avec l'agent dans l'interface de ligne de commande, saisissez exit pour mettre fin à la conversation.

Tâche 4 : Enregistrer et utiliser l'état partagé

Votre root_agent importe et utilise un outil set_session_value depuis adk_challenge_lab/paint_agent/tools.py, mais il n'est pas entièrement implémenté.

  1. Mettez à jour la fonction set_session_value dans le fichier adk_challenge_lab/paint_agent/tools.py pour stocker les paires clé-valeur dans le dictionnaire state de ToolContext.

  2. Mettez à jour la réponse de la fonction pour renvoyer un message d'état f"stored '{value}' in '{key}'".

  3. Ouvrez le fichier agent.py associé à l'agent coverage_calculator_agent (sous-agent de room_planner, qui est lui-même un sous-agent de votre root_agent).

  4. Vous pouvez constater que ses instructions ne chargent pas correctement les valeurs du dictionnaire d'état. Mettez à jour l'instruction pour remplacer les termes en MAJUSCULES par la fonctionnalité de modèles de clé de l'ADK afin de charger les valeurs d'état dans les instructions.

  5. Testez votre agent en exécutant la commande suivante :

    adk web --allow_origins "regex:https://.*\.cloudshell\.dev"
  6. Sélectionnez paint_agent.

  7. Vous devriez maintenant pouvoir avoir la conversation suivante avec votre agent :

    Vous Réponse de l'agent
    bonjour [Propose de partager des informations sur les peintures Cymbal Shops.]
    oui [Partage des informations sur les produits de peinture, à savoir Project Paint, EcoGreens, SureCoverage, Forever Paint.]
    J'aimerais utiliser la gamme EcoGreens. [L'onglet State doit afficher les valeurs d'état mises à jour. Demande combien il y a de pièces et comment les nommer.]
    Une seule pièce, mon bureau. [Vous demande de choisir une couleur pour votre bureau.]
    Deep Ocean [Vous demande les dimensions de la pièce.]
    3 m sur 4 m. 3 m de haut. 1 porte, 2 fenêtres. [Demande le nombre de couches.]
    Deux couches. [Calcule que vous aurez besoin de couvrir 74 mètres carrés.]
  8. Lorsque vous avez terminé de discuter avec votre agent, vous pouvez fermer l'onglet du navigateur de l'UI de développement.

    Cliquez sur Vérifier ma progression pour valider l'objectif. Définir et utiliser l'état de session

  9. Sélectionnez le panneau du terminal Cloud Shell et appuyez sur CTRL+C pour arrêter le serveur.

Tâche 5 : Déployer sur Agent Engine

  1. Dans le terminal Cloud Shell, assurez-vous d'être dans le répertoire adk_challenge_lab :

    cd ~/adk_challenge_lab
  2. Exécutez la commande appropriée pour déployer paint_agent sur Agent Engine, en utilisant les arguments suivants :

    Paramètre Argument
    --display_name "Paint Agent"
    --staging_bucket gs://-bucket
  3. Pendant le déploiement de l'agent, attribuez les rôles IAM Utilisateur Vertex AI et Utilisateur Discovery Engine à l'agent de service Vertex AI Reasoning Engine.

  4. Notez qu'une fois le déploiement terminé, le nom de ressource de l'agent déployé s'affiche dans la console.

    Cliquez sur Vérifier ma progression pour valider l'objectif. Déployer sur Agent Engine

Tâche 6 : Interroger l'agent déployé

  1. Dans le fichier adk_challenge_lab/chainlit_ui/app.py, recherchez la ligne ci-dessous et insérez le nom de ressource de l'agent que vous avez déployé afin de charger votre agent distant :

    agent = client.agent_engines.get(name='YOUR_AGENT_RESOURCE_NAME')
  2. Exécutez l'UI avec la commande suivante :

    cd ~/adk_challenge_lab/chainlit_ui chainlit run app.py

    Résultat attendu :

    2025-08-25 12:30:00 - Your app is available at http://localhost:8000
  3. Cliquez sur le lien http://localhost:8000 pour l'ouvrir dans un nouvel onglet de navigateur.

  4. Engagez la conversation suivante avec l'agent déployé :

    Vous Réponse de l'agent
    bonjour [Propose de partager des informations sur les peintures Cymbal Paints.]
    oui [Partage des informations sur les produits de peinture, à savoir Project Paint, EcoGreens, SureCoverage, Forever Paint.]
    J'aimerais utiliser Forever Paint. [Demande combien il y a de pièces et comment les nommer.]
    Deux pièces. Le salon et la chambre de bébé. [Vous demande de choisir une couleur pour votre bureau.]
    "Sunlight through a canvas tent" pour la chambre de bébé et "Coffee Cream" pour le salon. [Vous demande les dimensions de la pièce.]
    Le salon mesure 5 mètres sur 4. 2,5 m de hauteur. 1 porte, 3 fenêtres. [Demande le nombre de couches.]
    Deux couches. [Demande les dimensions de la chambre de bébé.]
    La chambre du bébé mesure 3 mètres sur 3 mètres. 2,5 m de hauteur. 1 porte, 1 fenêtre. [Fournit une estimation pour une couche et vérifie le nombre de couches souhaité.]
    Toujours deux couches. [Calcule que vous aurez besoin de couvrir 77 mètres carrés pour le salon et 53 mètres carrés pour la chambre de bébé.]
  5. Si vous souhaitez démarrer une nouvelle conversation avec votre agent, vous pouvez cliquer sur l'icône en haut à gauche.

    Cliquez sur Vérifier ma progression pour valider l'objectif. Configurer une interface pour interroger votre agent

Félicitations !

Dans cet atelier, vous avez effectué les tâches suivantes :

  • Créer un agent avec Agent Development Kit (ADK) composé d'un agent racine et de sous-agents
  • Équiper les agents d'un outil Vertex AI Search et d'outils de fonction personnalisés.
  • Stocker la sortie de l'agent dans un dictionnaire d'état de session, puis récupérer les valeurs de ce dictionnaire pour les instructions d'agent suivantes
  • Déployer votre agent sur Agent Engine
  • Interroger l'agent déployé sur Agent Engine

Formations et certifications Google Cloud

Les formations et certifications Google Cloud vous aident à tirer pleinement parti des technologies Google Cloud. Nos cours portent sur les compétences techniques et les bonnes pratiques à suivre pour être rapidement opérationnel et poursuivre votre apprentissage. Nous proposons des formations pour tous les niveaux, à la demande, en salle et à distance, pour nous adapter aux emplois du temps de chacun. Les certifications vous permettent de valider et de démontrer vos compétences et votre expérience en matière de technologies Google Cloud.

Dernière mise à jour du manuel : 26 février 2026

Dernier test de l'atelier : 26 février 2026

Copyright 2026 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms d'entreprises et de produits peuvent être des marques des entreprises auxquelles ils sont associés.

Avant de commencer

  1. Les ateliers créent un projet Google Cloud et des ressources pour une durée déterminée.
  2. Les ateliers doivent être effectués dans le délai imparti et ne peuvent pas être mis en pause. Si vous quittez l'atelier, vous devrez le recommencer depuis le début.
  3. En haut à gauche de l'écran, cliquez sur Démarrer l'atelier pour commencer.

Utilisez la navigation privée

  1. Copiez le nom d'utilisateur et le mot de passe fournis pour l'atelier
  2. Cliquez sur Ouvrir la console en navigation privée

Connectez-vous à la console

  1. Connectez-vous à l'aide des identifiants qui vous ont été attribués pour l'atelier. L'utilisation d'autres identifiants peut entraîner des erreurs ou des frais.
  2. Acceptez les conditions d'utilisation et ignorez la page concernant les ressources de récupération des données.
  3. Ne cliquez pas sur Terminer l'atelier, à moins que vous n'ayez terminé l'atelier ou que vous ne vouliez le recommencer, car cela effacera votre travail et supprimera le projet.

Ce contenu n'est pas disponible pour le moment

Nous vous préviendrons par e-mail lorsqu'il sera disponible

Parfait !

Nous vous contacterons par e-mail s'il devient disponible

Un atelier à la fois

Confirmez pour mettre fin à tous les ateliers existants et démarrer celui-ci

Utilisez la navigation privée pour effectuer l'atelier

Le meilleur moyen d'exécuter cet atelier consiste à utiliser une fenêtre de navigation privée. Vous éviterez ainsi les conflits entre votre compte personnel et le compte temporaire de participant, qui pourraient entraîner des frais supplémentaires facturés sur votre compte personnel.

Effectuez cette étape rapide pour démarrer votre atelier.