Planifier des voyages avec un agent IA accessible dans Google Workspace

Niveau de programmation : avancé
Durée : 45 minutes
Type de projet : module complémentaire Google Workspace étendant Chat, Gmail, Agenda, Drive, Docs, Sheets et Slides.

Ce tutoriel vous montre comment publier des agents d'IA sur Google Workspace en tant qu'extensions Google Workspace, à l'aide d'Apps Script ou de points de terminaison HTTP. Une fois votre module complémentaire publié, vos utilisateurs peuvent interagir avec les agents d'IA dans leurs workflows.

Présentation

Dans ce tutoriel, vous allez déployer l'exemple de concierge de voyage à partir de l'Agent Development Kit (ADK). Le concierge de voyage est une IA conversationnelle multi-agents qui utilise des outils tels que l'API Places de Google Maps Platform, l'ancrage Google Search et un serveur MCP (Model Context Protocol).

L'ADK fournit par défaut des interfaces de chat et de texte pour les développeurs. Dans ce tutoriel, vous allez ajouter une interface utilisateur graphique (GUI) aux applications Google Workspace auxquelles vos utilisateurs peuvent accéder directement dans Chat, Gmail, Agenda, Drive, Docs, Sheets et Slides.

  • Utiliser l'agent IA de Chat pour trouver des idées de voyage.
    Figure 1. Utiliser l'agent IA de Chat pour trouver des idées de voyage.
  • Utiliser l'agent IA de Gmail pour planifier un voyage à partir du contexte de l'e-mail sélectionné.
    Figure 2. Utiliser l'agent d'IA de Gmail pour planifier un voyage à partir du contexte de l'e-mail sélectionné.

Objectifs

  • Configurez l'environnement.
  • Déployez l'agent d'IA.
  • Configurez le projet.
  • Déployez-les dans Gmail, Agenda, Drive, Docs, Sheets et Slides.
  • Déployez-le dans Chat.
  • Tester la solution

À propos de cette solution

Cette solution repose sur les technologies de base suivantes : ADK, Google Cloud et API Google Workspace, Vertex AI Agent Engine et framework de cartes.

Les interfaces utilisateur graphiques sont conçues différemment pour les applications Chat et non Chat (Gmail, Agenda, Drive, Docs, Sheets, Slides) afin de tenir compte de leurs fonctionnalités et limites spécifiques.

Fonctionnalités

Les fonctionnalités suivantes de l'application Travel Concierge sont communes à toutes les applications Google Workspace :

  • Sessions utilisateur persistantes : Les sessions sont gérées par Vertex AI pour la persistance. Chaque utilisateur partage une seule session pour toutes les applications Workspace. Les utilisateurs peuvent réinitialiser manuellement leur session pour démarrer une nouvelle conversation.

  • Messagerie enrichie : Les utilisateurs envoient des messages texte et reçoivent des réponses avec du texte enrichi et des widgets de carte.

  • Gestion des erreurs : Les erreurs inattendues sont gérées avec élégance grâce à des nouvelles tentatives et des statuts configurables dans les réponses.

L'application Chat possède les fonctionnalités supplémentaires suivantes :

  • Messages utilisateur multimodaux : les utilisateurs peuvent envoyer des messages avec des pièces jointes, y compris des contenus audio et vidéo enregistrés directement depuis l'espace Chat.

  • Réponses visuellement plus avancées : les réponses peuvent être générées avec des widgets plus avancés, tels que des carrousels avec des images, en s'appuyant sur les fonctionnalités de chat uniquement du framework Card et sur davantage d'espace de rendu.

D'autres applications proposent les fonctionnalités supplémentaires suivantes :

  • Contexte du profil Google : les utilisateurs peuvent envoyer des messages avec les informations de leur profil (limitées aux anniversaires dans cet exemple).

  • Contexte Gmail : Les utilisateurs peuvent envoyer des messages par e-mail (limité à un sujet et un corps dans cet exemple).

  • Accès à l'espace de chat de l'agent : Les utilisateurs peuvent ouvrir l'espace de messagerie directe (DM) de l'application Chat dans un nouvel onglet en un seul clic.

Architecture

L'application Travel Concierge reçoit et traite les événements d'interaction des modules complémentaires Google Workspace provenant des applications Google Workspace, utilise Vertex AI pour interroger l'agent ADK AI et gérer les sessions utilisateur, et s'appuie sur les API Google Cloud et Google Workspace pour recueillir le contexte et afficher les réponses.

Les diagrammes suivants illustrent le flux utilisateur principal : envoi d’un message à l’agent IA.

HTTP

  • Diagramme d'architecture de l'application de chat.
    Figure 3. L'application Chat complète le contexte avec les pièces jointes du message de l'utilisateur et envoie un ensemble de messages avec l'historique des interactions du sous-agent et la réponse globale finale dans l'ordre chronologique.
  • Diagramme d'architecture pour les applications autres que Chat.
    Figure 4. Les applications autres que Chat complètent le contexte avec le profil Google de l'utilisateur et la sélection d'éléments, et affichent un ensemble de sections avec l'historique des interactions du sous-agent et la réponse globale finale dans l'ordre chronologique inverse.

Apps Script

  • Diagramme d'architecture de l'application de chat.
    Figure 3. L'application Chat complète le contexte avec les pièces jointes du message de l'utilisateur et envoie une série de messages contenant l'historique des interactions des sous-agents et la réponse finale globale par ordre chronologique.
  • Diagramme d'architecture pour les applications autres que Chat.
    Figure 4. Les applications non-Chat complètent le contexte avec le profil Google de l'utilisateur et la sélection d'articles, et affichent un ensemble de sections avec l'historique des interactions avec les sous-agents et la réponse globale finale en ordre chronologique inverse.

Prérequis

Préparer l'environnement

Cette section explique comment créer et configurer un projet Google Cloud.

Créer un projet Google Cloud

Console Google Cloud

  1. Dans la console Google Cloud, accédez à Menu  > IAM et administration > Créer un projet.

    Accéder à "Créer un projet"

  2. Dans le champ Nom du projet, saisissez un nom descriptif pour votre projet.

    Facultatif : Pour modifier l'ID du projet, cliquez sur Modifier. Vous ne pourrez plus modifier l'ID du projet une fois le projet créé. Choisissez donc un ID répondant à vos besoins pour toute la durée de vie du projet.

  3. Dans le champ Location, cliquez sur Browse pour afficher les emplacements potentiels de votre projet. Cliquez ensuite sur Sélectionner.
  4. Cliquez sur Créer. La console Google Cloud vous redirige vers la page Tableau de bord et votre projet est créé en quelques minutes.

CLI gcloud

Dans l'un des environnements de développement suivants, accédez à la Google Cloud CLI (gcloud) :

  • Cloud Shell: Pour utiliser un terminal en ligne avec l'interface de ligne de commande gcloud déjà configurée, activez Cloud Shell.
    Activer Cloud Shell
  • Shell local : pour utiliser un environnement de développement local, installez et initialisez la gcloud CLI.
    Pour créer un projet Cloud, utilisez la commande gcloud projects create :
    gcloud projects create PROJECT_ID
    Remplacez PROJECT_ID en définissant l'ID du projet que vous souhaitez créer.

Activez la facturation pour le projet Cloud.

Console Google Cloud

  1. Dans la console Google Cloud, accédez à Facturation. Cliquez sur Menu > Facturation > Mes projets.

    Accéder à la facturation de mes projets

  2. Dans Sélectionner une organisation, choisissez l'organisation associée à votre projet Google Cloud.
  3. Dans la ligne du projet, ouvrez le menu Actions (), cliquez sur Modifier la facturation et choisissez le compte de facturation Cloud.
  4. Cliquez sur Définir le compte.

CLI gcloud

  1. Pour afficher la liste des comptes de facturation disponibles, exécutez :
    gcloud billing accounts list
  2. Associer un compte de facturation à un projet Google Cloud :
    gcloud billing projects link PROJECT_ID --billing-account=BILLING_ACCOUNT_ID

    Remplacez les éléments suivants :

    • PROJECT_ID est l'ID de projet du projet Cloud pour lequel vous souhaitez activer la facturation.
    • BILLING_ACCOUNT_ID est l'identifiant du compte de facturation à lier au projet Google Cloud.

Activer les API Google Cloud

HTTP

  1. Dans la console Google Cloud, activez les API complémentaires Vertex AI, Places, People, Google Chat, Gmail, Cloud Build, Cloud Functions, Cloud Pub/Sub, Cloud Logging, Artifact Registry, Cloud Run et Google Workspace.

    Activer les API

  2. Vérifiez que vous activez les API dans le projet Cloud approprié, puis cliquez sur Suivant.

  3. Vérifiez que vous activez les API correctes, puis cliquez sur Activer.

Apps Script

  1. Dans la console Google Cloud, activez les API Vertex AI, Places, People et Google Chat.

    Activer les API

  2. Vérifiez que vous activez les API dans le projet Cloud approprié, puis cliquez sur Suivant.

  3. Vérifiez que vous activez les API correctes, puis cliquez sur Activer.

Obtenez une clé API Google Maps Platform Places

  1. Dans la console Google Cloud, accédez à la page Google Maps Platform > Clés et identifiants.

    Accéder à Clés et identifiants

  2. La boîte de dialogue Démarrer sur la plateforme Google Maps affiche votre clé API nouvellement créée, une chaîne alphanumérique. Vous aurez besoin de cette chaîne de caractères dans les sections suivantes.

Créez un compte de service dans la console Google Cloud.

Créez un nouveau compte de service avec le rôle Vertex AI User en suivant ces étapes :

Console Google Cloud

  1. Dans la console Google Cloud, accédez au menu  > IAM et administration > Comptes de service.

    Accéder à la page "Comptes de service"

  2. Cliquez sur Créer un compte de service.
  3. Remplissez les détails du compte de service, puis cliquez sur Créer et continuer.
  4. Facultatif : attribuez des rôles à votre compte de service pour autoriser l’accès aux ressources de votre projet Google Cloud. Pour plus de détails, reportez-vous à Octroi, modification et révocation de l'accès aux ressources.
  5. Cliquez sur Continuer.
  6. Facultatif : Indiquez les utilisateurs ou les groupes autorisés à gérer et à effectuer des actions avec ce compte de service. Pour en savoir plus, consultez Gérer l'emprunt d'identité d'un compte de service.
  7. Cliquez sur OK. Notez l'adresse e-mail du compte de service.

CLI gcloud

  1. Créez le compte de service :
    gcloud iam service-accounts create SERVICE_ACCOUNT_NAME \
      --display-name="SERVICE_ACCOUNT_NAME"
  2. Facultatif : attribuez des rôles à votre compte de service pour autoriser l’accès aux ressources de votre projet Google Cloud. Pour en savoir plus, consultez Accorder, modifier et révoquer les accès à des ressources.

Le compte de service apparaît sur la page du compte de service. Créez ensuite une clé privée pour le compte de service.

Créer une clé privée

Pour créer et télécharger une clé privée pour le compte de service, suivez ces étapes :

  1. Dans la console Google Cloud, accédez au menu  > IAM et administration > Comptes de service.

    Accéder à la page "Comptes de service"

  2. Sélectionnez votre compte de service.
  3. Cliquez sur Clés > Ajouter une clé > Créer une nouvelle clé.
  4. Sélectionnez JSON, puis cliquez sur Créer.

    La nouvelle paire de clés publique/privée est générée et téléchargée sur votre ordinateur sous la forme d'un nouveau fichier. Enregistrez le fichier JSON téléchargé sous le nom credentials.json dans votre répertoire de travail. Ce fichier est l'unique copie de cette clé. Pour plus d'informations sur la manière de stocker votre clé en toute sécurité, consultez Gestion des clés de compte de service.

  5. Cliquez sur Fermer.

Pour plus d'informations sur les comptes de service, consultez comptes de service dans la documentation Google Cloud IAM.

Les modules complémentaires Google Workspace nécessitent une configuration de l'écran de consentement. La configuration de l'écran de consentement OAuth de votre module complémentaire définit ce que Google affiche aux utilisateurs.

  1. Dans la console Google Cloud, accédez à Menu > Google Auth platform > Branding.

    Accéder à la page "Branding"

  2. Si vous avez déjà configuré le Google Auth platform, vous pouvez configurer les paramètres suivants de l'écran de consentement OAuth dans Branding, Audience et Data Access. Si vous voyez un message indiquant Google Auth platform pas encore configuré, cliquez sur Démarrer :
    1. Sous Informations sur l'application, dans Nom de l'application, saisissez le nom de l'application.
    2. Dans Adresse e-mail d'assistance utilisateur, sélectionnez une adresse e-mail d'assistance que les utilisateurs pourront contacter s'ils ont des questions sur leur consentement.
    3. Cliquez sur Suivant.
    4. Sous Audience, sélectionnez Internal.
    5. Cliquez sur Suivant.
    6. Sous Coordonnées, saisissez une adresse e-mail à laquelle vous pourrez être informé de toute modification apportée à votre projet.
    7. Cliquez sur Suivant.
    8. Sous Terminer, consultez le Règlement sur les données utilisateur dans les services d'API Google et, si vous l'acceptez, sélectionnez J'accepte le Règlement sur les données utilisateur dans les services d'API Google.
    9. Cliquez sur Continuer.
    10. Cliquez sur Créer.
  3. Pour l'instant, vous pouvez ignorer l'ajout de niveaux d'accès. À l'avenir, lorsque vous créerez une application à utiliser en dehors de votre organisation Google Workspace, vous devrez définir le type d'utilisateur sur Externe. Ajoutez ensuite les niveaux d'autorisation dont votre application a besoin. Pour en savoir plus, consultez le guide complet Configurer le consentement OAuth.

Déployez l'agent IA Travel Concierge ADK

  1. Si ce n'est pas déjà fait, authentifiez-vous avec votre compte Google Cloud et configurez l'interface de ligne de commande Google Cloud pour utiliser votre projet Google Cloud.

    gcloud auth application-default login
    gcloud config set project PROJECT_ID
    gcloud auth application-default set-quota-project PROJECT_ID

    Remplacez PROJECT_ID par l'ID du projet Cloud que vous avez créé.

  2. Télécharger ce dépôt GitHub

    Télécharger

  3. Dans votre environnement de développement local préféré, extrayez le fichier d'archive téléchargé et ouvrez le répertoire adk-samples/python/agents/travel-concierge.

    unzip adk-samples-main.zip
    cd adk-samples-main/python/agents/travel-concierge
  4. Créez un bucket Cloud Storage dédié à l'agent d'IA ADK.

    gcloud storage buckets create gs://CLOUD_STORAGE_BUCKET_NAME --project=PROJECT_ID --location=PROJECT_LOCATION

    Remplacez les éléments suivants :

    1. CLOUD_STORAGE_BUCKET_NAME par un nom de bucket unique que vous souhaitez utiliser.
    2. PROJECT_ID avec l'ID du projet Cloud que vous avez créé.
    3. PROJECT_LOCATION par l'emplacement du projet Cloud que vous avez créé.
  5. Définissez les variables d'environnement suivantes :

    export GOOGLE_GENAI_USE_VERTEXAI=1
    export GOOGLE_CLOUD_PROJECT=PROJECT_ID
    export GOOGLE_CLOUD_LOCATION=PROJECT_LOCATION
    export GOOGLE_PLACES_API_KEY=PLACES_API_KEY
    export GOOGLE_CLOUD_STORAGE_BUCKET=CLOUD_STORAGE_BUCKET_NAME
    export TRAVEL_CONCIERGE_SCENARIO=travel_concierge/profiles/itinerary_empty_default.json

    Remplacez les éléments suivants :

    1. PROJECT_ID par l'ID du projet Cloud que vous avez créé.
    2. PROJECT_LOCATION avec l'emplacement du projet Cloud que vous avez créé.
    3. PLACES_API_KEY avec la chaîne de la clé API que vous avez créée.
    4. CLOUD_STORAGE_BUCKET_NAME par le nom du bucket que vous avez créé.
  6. Installez et déployez l'agent ADK AI.

    uv sync --group deployment
    uv run python deployment/deploy.py --create
  7. Récupérez le numéro de projet et l'ID du moteur à partir du dernier journal imprimé sous la forme PROJECT_NUMBER et ENGINE_ID respectivement, vous aurez besoin des deux plus tard pour configurer votre projet.

    Created remote agent: projects/PROJECT_NUMBER/locations/us-central1/reasoningEngines/ENGINE_ID

Examinez l'exemple de code

Si vous le souhaitez, avant de configurer le projet, prenez le temps d'examiner et de vous familiariser avec l'exemple de code hébergé sur GitHub.

Créer et configurer le projet

Python

  1. Télécharger ce dépôt GitHub

    Télécharger

  2. Dans votre environnement de développement local préféré, extrayez le fichier d'archive téléchargé et ouvrez le répertoire add-ons-samples/python/travel-adk-ai-agent.

    unzip add-ons-samples-main.zip
    cd add-ons-samples-main/python/travel-adk-ai-agent
  3. Déplacez le fichier de clé JSON credentials.json du compte de service téléchargé dans les étapes précédentes vers le répertoire du projet.

  4. Dans la console Google Cloud, accédez à Cloud Run :

    Accédez à Cloud Run

  5. Cliquez sur Écrire une fonction.

  6. Sur la page Créer un service, configurez votre fonction :

    1. Dans le champ Service name (Nom du compte de service), saisissez travel-concierge-app.
    2. Dans la liste Région, sélectionnez l'emplacement du projet Cloud que vous avez créé, PROJECT_LOCATION.
    3. Sous URL du point de terminaison, cliquez sur Icône permettant de créer une copie.
    4. Dans la liste Environnement d'exécution, sélectionnez la version la plus récente de Python.
    5. Dans la section Authentification, sélectionnez Autoriser l'accès public.
    6. Dans la section Conteneurs, volumes, mise en réseau, sécurité, sous Ressources :
      1. Dans le champ Mémoire, sélectionnez 1 Gio.
      2. Dans le champ CPU, sélectionnez 2.
    7. Cliquez sur Créer et attendez que Cloud Run crée le service. La console vous redirige vers l'onglet Source.
  7. Dans l'environnement de développement local de votre choix, déployez la source du projet :

    gcloud run deploy travel-concierge-app --quiet --source . \
        --region PROJECT_LOCATION  \
        --function adk_ai_agent  \
        --set-env-vars LOCATION=LOCATION,PROJECT_NUMBER=PROJECT_NUMBER,ENGINE_ID=ENGINE_ID,BASE_URL=BASE_URL

    Remplacez les éléments suivants :

    1. PROJECT_LOCATION avec l'emplacement de la fonction Cloud Run que vous avez créée précédemment.
    2. LOCATION avec l'emplacement du projet Google Cloud créé lors des étapes précédentes, PROJECT_LOCATION.
    3. PROJECT_NUMBER avec le numéro de projet de l'agent IA Travel Concierge ADK déployé dans les étapes précédentes.
    4. ENGINE_ID avec l'ID du moteur de l'agent d'IA Travel Concierge ADK déployé dans les étapes précédentes.
    5. BASE_URL par l'URL du point de terminaison que vous avez copiée précédemment.

Apps Script

Pour créer un projet Apps Script et le configurer afin qu'il utilise votre agent d'IA ADK Travel Concierge déployé :

  1. Cliquez sur le bouton suivant pour ouvrir le projet Apps Script Agent d'IA ADK Travel Concierge.
    Ouvrir le projet

  2. Cliquez sur Vue d'ensemble, puis sur Icône permettant de créer une copie Créer une copie.

  3. Nommez votre copie du projet Apps Script :

    1. Cliquez sur Copie de l'agent d'IA ADK Travel Concierge.
    2. Dans le champ Titre du projet, saisissez Travel Concierge ADK AI Agent.
    3. Cliquez sur Renommer.
  4. Dans votre projet Apps Script, cliquez sur Icône des paramètres du projet Éditeur et déplacez le fichier VertexAi.gs vers le haut jusqu'à ce qu'il soit au-dessus du fichier AgentHandler.gs en utilisant l'action de fichier Déplacer le fichier vers le haut.

  5. Dans votre projet Apps Script, cliquez sur Icône des paramètres du projet Paramètres du projet, puis sur Modifier les propriétés du script et sur Ajouter une propriété de script pour ajouter les propriétés de script suivantes :

  6. ENGINE_ID avec l'ID du moteur de l'agent IA Travel Concierge ADK déployé dans les étapes précédentes, ENGINE_ID.

  7. LOCATION avec l'emplacement du projet Google Cloud créé dans les étapes précédentes, PROJECT_LOCATION.

  8. PROJECT_NUMBER avec le numéro de projet de l'agent IA Travel Concierge ADK déployé dans les étapes précédentes, PROJECT_NUMBER.

  9. SERVICE_ACCOUNT_KEY avec la clé JSON du compte de service téléchargée lors des étapes précédentes, comme { ... }.

  10. Cliquez sur Enregistrer les propriétés du script

  11. Dans votre projet Apps Script, cliquez sur Icône des paramètres du projet Paramètres du projet.

  12. Sous Projet Google Cloud Platform (GCP), cliquez sur Changer de projet.

  13. Dans Numéro de projet GCP, collez le numéro de projet de l'agent d'IA Travel Concierge ADK déployé lors des étapes précédentes, PROJECT_NUMBER.

  14. Cliquez sur Définir un projet. Le projet Cloud et le projet Apps Script sont désormais associés.

Déployer dans Gmail, Agenda, Drive, Docs, Sheets, Slides

Python

Utilisez un déploiement d'extension Google Workspace pour installer l'exemple de projet sur toutes les applications Google Workspace (sauf Google Chat) afin de permettre les tests.

  1. Dans l'environnement de développement local de votre choix, ouvrez le fichier deployment.json à partir du code source du projet et remplacez toutes les occurrences de $BASE_URL par la valeur de BASE_URL, l'URL du point de terminaison que vous avez copiée lors des étapes précédentes.

  2. Créez un déploiement d'extension Google Workspace nommé travel-concierge-addon :

    gcloud workspace-add-ons deployments create travel-concierge-addon \
        --deployment-file=deployment.json
  3. Installez le déploiement du module complémentaire Google Workspace :

    gcloud workspace-add-ons deployments install travel-concierge-addon

Apps Script

Installez le projet Apps Script sur toutes les applications Google Workspace (sauf Google Chat) pour activer les tests.

  1. Dans votre projet Apps Script, cliquez sur Déployer > Tester les déploiements, puis sur Installer.

L'extension est désormais accessible depuis les barres latérales de l'application Google Workspace.

Déployer sur Chat

Python

Installez l'exemple de projet sur Chat en utilisant l'URL du point de terminaison pour activer les tests.

  1. Dans la console, recherchez Google Chat API, cliquez sur API Google Chat, puis sur Gérer et Configuration.

    Accéder à la page de configuration de l'API Google Chat

  2. Configurer l'application Chat :

    1. Dans le champ Nom de l'application, saisissez Travel ADK AI Agent.
    2. Dans le champ URL de l'avatar, saisissez https://goo.gle/3SfMkjb.
    3. Dans le champ Description, saisissez Travel ADK AI Agent.
    4. Sous Paramètres de connexion, sélectionnez URL du point de terminaison HTTP.
    5. Sous Déclencheurs, sélectionnez Utiliser une URL de point de terminaison HTTP commune pour tous les déclencheurs.
    6. Dans le champ URL du point de terminaison HTTP, collez l'URL du point de terminaison que vous avez copiée précédemment, BASE_URL.
    7. Enregistrez une commande rapide que l'application Chat entièrement implémentée utilise :
      1. Sous Commandes, cliquez sur Ajouter une commande.
      2. Dans ID de commande, saisissez 1.
      3. Dans Description, saisissez Reset session.
      4. Sous Type de commande, sélectionnez Commande rapide.
      5. Dans le champ Nom, saisissez Reset session.
      6. Cliquez sur OK. La commande rapide est enregistrée et répertoriée.
    8. Sous Visibilité, sélectionnez Rendre cette application de chat disponible à des personnes et groupes spécifiques dans votre domaine d'espace de travail et entrez votre adresse e-mail.
    9. Sous Journaux, sélectionnez Enregistrer les erreurs dans Logging.
    10. Cliquez sur Enregistrer.

Apps Script

Installez le projet Apps Script dans Chat à l'aide de l'ID de déploiement Head pour activer les tests.

  1. Dans votre projet Apps Script, cliquez sur Déployer > Tester les déploiements, puis sur Icône permettant de copier l'ID du déploiement Head Copier sous ID de déploiement Head.

  2. Dans la console, recherchez Google Chat API, cliquez sur API Google Chat, puis sur Gérer et Configuration.

    Accéder à la page de configuration de l'API Google Chat

  3. Configurer l'application Chat :

    1. Dans le champ Nom de l'application, saisissez Travel ADK AI Agent.
    2. Dans le champ URL de l'avatar, saisissez https://goo.gle/3SfMkjb.
    3. Dans le champ Description, saisissez Travel ADK AI Agent.
    4. Sous Paramètres de connexion, sélectionnez Apps Script.
    5. Dans le champ ID de déploiement, collez l'ID de déploiement Head que vous avez copié précédemment.
    6. Enregistrez une commande rapide que l'application Chat entièrement implémentée utilise :
      1. Sous Commandes, cliquez sur Ajouter une commande.
      2. Dans ID de commande, saisissez 1.
      3. Dans Description, saisissez Reset session.
      4. Sous Type de commande, sélectionnez Commande rapide.
      5. Dans le champ Nom, saisissez Reset session.
      6. Cliquez sur OK. La commande rapide est enregistrée et répertoriée.
    7. Sous Visibilité, sélectionnez Rendre cette application de chat disponible à des personnes et groupes spécifiques dans votre domaine d'espace de travail et entrez votre adresse e-mail.
    8. Sous Journaux, sélectionnez Enregistrer les erreurs dans Logging.
    9. Cliquez sur Enregistrer.

L'application est désormais accessible depuis Google Chat.

  1. Ouvrez Google Chat.

    Accéder à Google Chat

  2. Créer l'espace de messagerie privée du chat :

    1. Cliquez sur Nouveau chat.
    2. Saisissez le nom de l'application Travel ADK AI Agent dans la recherche, puis sélectionnez-la.
    3. Dans la boîte de dialogue Install app, cliquez sur Installer l'application.
    4. La boîte de dialogue Install app se ferme et le nouvel espace de discussion est sélectionné.

L'application Chat est prête à répondre aux messages.

Tester l'agent

  1. Ouvrez Gmail.

    Aller à Gmail

  2. Envoyez-vous l'e-mail suivant :

    • Sujet : You need to travel to Paris
    • Corps: Please be there between 11/25/2025 and 11/30/2025!
  3. Ouvrez le module complémentaire Travel ADK AI Agent depuis la barre latérale.

  4. Cliquez sur Accorder les autorisations pour terminer la configuration du module complémentaire.

  5. Cliquez sur Envoyer après avoir configuré la requête suivante à l'agent :

    • Message: Please help me plan this travel!
    • Contexte : sélectionnez Adresse e-mail actuelle.

    La barre latérale est mise à jour avec la réponse de l'agent.

    Planifiez votre voyage depuis Gmail

  6. Cliquez sur Ouvrir le chat pour être redirigé vers l'espace de messages privés Chat.

  7. Cliquez sur + > Réinitialiser la session.

    Vous recevez un nouveau message confirmant l'opération : OK, let's start from the beginning, what can I help you with?

  8. Envoyez le message Give me ideas.

    Vous recevez de nouveaux messages contenant la réponse de l'agent.

    Brainstorming à partir du chat

  9. Envoyez le message I want to go there! après avoir importé une photo d'un lieu, comme la Tour Eiffel.

    Vous recevez de nouveaux messages contenant la réponse de l'agent.

    Récupérer les détails de localisation à partir de la pièce jointe du chat

Limites

HTTP

Dans les applications Google Workspace autres que Chat, l'agent IA présente les limitations suivantes :

  • C'est synchrone: Les barres latérales ne peuvent être mises à jour qu'en réponse aux interactions de l'utilisateur, les réponses de l'agent IA ne sont donc affichées qu'après l'achèvement complet (pas de streaming).

  • Délai d'expiration possible : le délai d'expiration des mises à jour de la barre latérale est dépassé lorsqu'elles prennent plus de quelques minutes.

Ces limites n'existent pas dans Chat.

Apps Script

Dans toutes les applications Google Workspace, l'agent IA appelle les API REST de Vertex AI en utilisant UrlFetchApp, ce qui entraîne les limitations suivantes :

  • C'est synchrone: Les réponses de l'agent IA ne sont renvoyées qu'après l'achèvement complet (pas de flux).

  • Il peut expirer : L’agent IA demande un délai d’expiration lorsqu’il lui faut environ plus d’une minute pour terminer.

Personnalisation

Cette solution prend en charge les agents ADK AI hébergés dans Vertex AI Agent Engine, un sous-ensemble d'interfaces utilisateur d'applications Google Workspace et les rendus de réponses spécifiques aux réponses de l'exemple Travel Concierge. La solution utilise un framework extensible, vous pouvez donc la personnaliser en modifiant les fichiers suivants :

Python

  • main.py: Définit les interfaces utilisateur principales et la logique des interactions utilisateur (gestionnaires d'événements Google Workspace). Une extension typique consisterait à activer la fonctionnalité « Documents Drive » pour l'application Drive, similaire à ce qui est fait avec les messages Gmail pour l'application Gmail.

  • vertex_ai.py: Gère les sessions, les réponses et les erreurs de l'agent IA, et définit les interfaces spécifiques à Vertex AI à implémenter pour prendre en charge les interactions de l'agent et les rendus de réponse. Les extensions typiques consisteraient à ajouter la prise en charge de plusieurs sessions pour les conversations distinctes des utilisateurs, ainsi que d'autres plateformes de gestion d'agents IA.

  • agent_handler.py: Implémente les interfaces spécifiques à Vertex AI définies dans vertex_ai.py dans les cas spécifiques des applications de chat et des applications non-chat. Une extension typique consisterait à ajouter des boutons permettant aux utilisateurs d'envoyer des commentaires sur les réponses des agents d'IA.

  • google_workspace.py: : implémente les interactions de la plate-forme de gestion des agents non IA à l'aide d'appels d'API. Seules les API Google Workspace sont utilisées dans cet exemple pour collecter des informations contextuelles et effectuer des actions. Une extension typique consiste à ajouter des fonctions permettant de récupérer des données d'entreprise depuis Google Agenda ou un système de gestion de la relation client (CRM).

  • travel_agent_ui_render.gs: : implémente les rendus de réponse spécifiques au Travel Concierge pour les sous-agents et les applications Workspace. Les extensions typiques consisteraient à ajouter la prise en charge de nouveaux rendus de réponse pour afficher graphiquement les options de vol et d'autres agents d'IA.

Apps Script

  • Code.gs: : définit les principales interfaces utilisateur et la logique d'interaction utilisateur (gestionnaires d'événements Google Workspace). Une extension typique consisterait à activer les documents Drive en tant que fonctionnalité de contexte pour l'application Drive, comme c'est le cas pour les messages Gmail pour l'application Gmail.

  • VertexAi.gs: Gère les sessions, les réponses et les erreurs des agents d'IA, et définit les interfaces spécifiques à Vertex AI à implémenter pour prendre en charge les interactions des agents et les rendus de réponses. Les extensions typiques consisteraient à ajouter la prise en charge de plusieurs sessions pour les conversations distinctes des utilisateurs, ainsi que d'autres plateformes de gestion d'agents IA.

  • AgentHandler.gs: Implémente les interfaces spécifiques à Vertex AI définies dans VertexAi.gs dans les cas spécifiques des applications de chat et des applications non-chat. Une extension typique consisterait à ajouter des boutons permettant aux utilisateurs d'envoyer des commentaires sur les réponses des agents d'IA.

  • GoogleWorkspace.gs: : implémente les interactions de la plate-forme de gestion des agents non IA à l'aide d'appels d'API. Seules les API Google Workspace sont utilisées dans cet exemple pour recueillir des informations contextuelles et effectuer des actions. Une extension typique consiste à ajouter des fonctions permettant de récupérer des données d'entreprise depuis Google Agenda ou un système de gestion de la relation client (CRM).

  • TravelAgentUiRender.gs: Implémente des rendus de réponse spécifiques à Travel Concierge pour les sous-agents et les applications Workspace. Les extensions typiques consisteraient à ajouter la prise en charge de nouveaux rendus de réponse pour afficher graphiquement les options de vol et d'autres agents d'IA.

Effectuer un nettoyage

Pour éviter des frais sur votre compte Google Cloud pour les ressources utilisées dans ce tutoriel, nous vous recommandons de supprimer le projet Cloud.

  1. Dans la console Google Cloud, accédez à la page Gérer les ressources. Cliquez sur Menu > IAM & Admin > Gérer les ressources.

    Accéder au Gestionnaire de ressources

  2. Dans la liste des projets, sélectionnez celui que vous souhaitez supprimer, puis cliquez sur Supprimer .
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.