Agent GenAI dans Slack pour poser des questions sur les documents et les actions avec des appels d'API

Agent GenAI dans Slack pour poser des questions sur les documents et les actions avec des appels d'API

À propos de cet atelier de programmation

subjectDernière mise à jour : avr. 21, 2025
account_circleRédigé par Andrey Shakirov

1. Présentation

Dans cet atelier, vous allez créer un agent GenAI, le connecter à l'application Cloud Run et l'intégrer à l'espace de travail Slack.

3301e2bb69be325.png

L'atelier se compose de plusieurs parties principales:

  • Déployer une application Cloud Run pour l'intégrer aux API Gemini
  • Créer et déployer un agent conversationnel dans des applications d'IA
  • Intégrer l'agent dans Slack
  • Configurer le data store pour les questions/réponses sur des documents PDF
  • Dans cet atelier, nous considérons que vous connaissez la console Cloud et les environnements Cloud Shell.

2. Préparation

Configuration du projet Cloud

  1. Connectez-vous à la console Google Cloud, puis créez un projet ou réutilisez un projet existant. Si vous n'avez pas encore de compte Gmail ou Google Workspace, vous devez en créer un.

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • Le nom du projet est le nom à afficher pour les participants au projet. Il s'agit d'une chaîne de caractères non utilisée par les API Google. Vous pourrez toujours le modifier.
  • L'ID du projet est unique parmi tous les projets Google Cloud et non modifiable une fois défini. La console Cloud génère automatiquement une chaîne unique (en général, vous n'y accordez d'importance particulière). Dans la plupart des ateliers de programmation, vous devrez indiquer l'ID de votre projet (généralement identifié par PROJECT_ID). Si l'ID généré ne vous convient pas, vous pouvez en générer un autre de manière aléatoire. Vous pouvez également en spécifier un et voir s'il est disponible. Après cette étape, l'ID n'est plus modifiable et restera donc le même pour toute la durée du projet.
  • Pour information, il existe une troisième valeur (le numéro de projet) que certaines API utilisent. Pour en savoir plus sur ces trois valeurs, consultez la documentation.
  1. Vous devez ensuite activer la facturation dans la console Cloud pour utiliser les ressources/API Cloud. L'exécution de cet atelier de programmation est très peu coûteuse, voire sans frais. Pour désactiver les ressources et éviter ainsi que des frais ne vous soient facturés après ce tutoriel, vous pouvez supprimer le projet ou les ressources que vous avez créées. Les nouveaux utilisateurs de Google Cloud peuvent participer au programme d'essai sans frais pour bénéficier d'un crédit de 300 $.

Configuration de l'environnement

Ouvrez Gemini Chat.

e1e9ad314691368a.png

Activez l'API Gemini pour Google Cloud:

933612a23648361c.png

b366894eb450f862.png

Cliquez sur Start chatting, puis suivez l'une des questions exemples ou saisissez votre propre requête pour tester la fonctionnalité.

ed120d672468b412.png

Requêtes à tester :

  • Expliquez Cloud Run en cinq points clés.
  • Vous êtes responsable produit Google Cloud Run. Expliquez Cloud Run à un étudiant en cinq points clés.
  • Vous êtes responsable produit Google Cloud Run. Expliquez Cloud Run à un développeur Kubernetes certifié en cinq points clés.
  • Vous êtes responsable produit Google Cloud Run. Expliquez à un développeur expérimenté en cinq points clés quand vous utiliseriez Cloud Run plutôt que GKE.

Consultez le guide des requêtes pour en savoir plus sur la rédaction de requêtes plus efficaces.

Utilisation de vos données par Gemini pour Google Cloud

Engagement de Google en matière de confidentialité

Google a été l'un des premiers sur le marché à proposer un engagement en matière de confidentialité pour l'IA/le ML, ce qui souligne le fait que nos clients devraient disposer du plus haut niveau de sécurité et de contrôle sur leurs données stockées dans le cloud.

Données que vous envoyez et recevez

Les questions que vous posez à Gemini, y compris les informations ou le code que vous lui envoyez pour qu'il les analyse ou les complète, sont appelées requêtes. Les réponses ou les suggestions de code que vous recevez de Gemini sont appelées "réponses". Gemini n'utilise pas vos requêtes ni ses réponses comme données pour entraîner ses modèles.

Chiffrement des requêtes

Lorsque vous envoyez des requêtes à Gemini, vos données sont chiffrées en transit pour être transmises au modèle sous-jacent de Gemini.

Données de programme générées par Gemini

Gemini est entraîné sur du code Google Cloud propriétaire et sur du code tiers sélectionné. Vous êtes responsable de la sécurité, des tests et de l'efficacité de votre code, y compris de toute finalisation, génération ou analyse de code que Gemini vous propose.

Découvrez comment Google traite vos requêtes.

3. Options pour tester les requêtes

Vous pouvez tester les requêtes de plusieurs façons.

Vertex AI Studio fait partie de la plate-forme Vertex AI de Google Cloud, spécialement conçue pour simplifier et accélérer le développement et l'utilisation de modèles d'IA générative.

Google AI Studio est un outil Web permettant de prototyper et de tester l'ingénierie des requêtes et l'API Gemini.

L'application Web Google Gemini (gemini.google.com) est un outil Web conçu pour vous aider à explorer et à exploiter la puissance des modèles d'IA Gemini de Google.

4. Cloner le dépôt

Revenez à la console Google Cloud et activez Cloud Shell en cliquant sur l'icône située à droite de la barre de recherche.

3e0c761ca41f315e.png

Si vous êtes invité à autoriser l'accès, cliquez sur "Autoriser" pour continuer.

6356559df3eccdda.png

Dans le terminal ouvert, exécutez les commandes suivantes :

git clone https://github.com/GoogleCloudPlatform/genai-for-developers.git

cd genai
-for-developers

git checkout slack
-agent-jira-lab

Cliquez sur "Ouvrir l'éditeur".

63e838aebfdd2423.png

À l'aide de l'élément de menu "File / Open Folder", ouvrez "genai-for-developers".

e3b9bd9682acf539.png

Ouvrir un nouveau terminal

4d9c41ab01ff4e97.png

5. Créer un compte de service

Créez un compte de service. Vous utiliserez ce compte de service pour effectuer des appels d'API à l'API Gemini Vertex AI à partir de l'application Cloud Run.

Configurez les détails du projet à l'aide des détails de votre projet Qwiklabs.

Exemple : qwiklabs-gcp-00-2c10937585bb

gcloud config set project YOUR_QWIKLABS_PROJECT_ID

Créez un compte de service.

export LOCATION=us-central1
export PROJECT_ID=$(gcloud config get-value project)
export SERVICE_ACCOUNT_NAME='vertex-client'
export DISPLAY_NAME='Vertex Client'

gcloud iam service-accounts create $SERVICE_ACCOUNT_NAME --project $PROJECT_ID --display-name "$DISPLAY_NAME"

Attribuez des rôles.

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/aiplatform.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/aiplatform.user"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/cloudbuild.builds.editor"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/artifactregistry.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/storage.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/run.admin"

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/secretmanager.secretAccessor"

Activez les services requis pour utiliser les API Vertex AI et le chat Gemini.

gcloud services enable \
    generativelanguage
.googleapis.com \
    aiplatform
.googleapis.com \
    cloudaicompanion
.googleapis.com \
    dialogflow
.googleapis.com \
    run
.googleapis.com \
    cloudresourcemanager
.googleapis.com \
    discoveryengine
.googleapis.com

Activez les services requis pour utiliser les API Vertex AI et le chat Gemini.

gcloud services enable \
    artifactregistry.googleapis.com \
    cloudbuild.googleapis.com \
    runapps.googleapis.com \
    workstations.googleapis.com \
    servicemanagement.googleapis.com \
    secretmanager.googleapis.com \
    containerscanning.googleapis.com

Utiliser Gemini Code Assist pour expliquer le code

Ouvrez le fichier "devai-api/app/routes.py", puis effectuez un clic droit n'importe où dans le fichier et sélectionnez "Gemini Code Assist > Explain this"" dans le menu contextuel.

427ed40dd44cab8a.png

Consultez l'explication de Gemini sur le fichier sélectionné.

a286d1e85bc42960.png

6. Déployer Devai-API sur Cloud Run

Vérifiez que vous êtes dans le bon dossier.

cd ~/genai-for-developers/devai-api

Pour cet atelier, nous suivons les bonnes pratiques et utilisons Secret Manager pour stocker et référencer les valeurs du jeton d'accès et de la clé API LangChain dans Cloud Run.

Définir des variables d'environnement. Exécutez cette commande telle quelle, sans aucune modification.

export JIRA_API_TOKEN=your-jira-token
export JIRA_USERNAME="YOUR-EMAIL"
export JIRA_INSTANCE_URL="https://YOUR-JIRA-PROJECT.atlassian.net"
export JIRA_PROJECT_KEY="YOUR-JIRA-PROJECT-KEY"
export JIRA_CLOUD=true

export GITLAB_PERSONAL_ACCESS_TOKEN=your-gitlab-token
export GITLAB_URL="https://gitlab.com"
export GITLAB_BRANCH="devai"
export GITLAB_BASE_BRANCH="main"
export GITLAB_REPOSITORY="GITLAB-USERID/GITLAB-REPO"

export LANGCHAIN_API_KEY=your-langchain-key
export LANGCHAIN_TRACING_V2=true
export LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"

Créez et stockez plusieurs secrets dans Secret Manager.

echo -n $JIRA_API_TOKEN | \
 gcloud secrets create JIRA_API_TOKEN
\
 
--data-file=-

echo
-n $GITLAB_PERSONAL_ACCESS_TOKEN | \
 gcloud secrets create GITLAB_PERSONAL_ACCESS_TOKEN
\
 
--data-file=-

echo
-n $LANGCHAIN_API_KEY | \
 gcloud secrets create LANGCHAIN_API_KEY
\
 
--data-file=-

Déployez l'application sur Cloud Run.

gcloud run deploy devai-api \
  --source=. \
  --region="$LOCATION" \
  --allow-unauthenticated \
  --service-account vertex-client \
  --set-env-vars PROJECT_ID="$PROJECT_ID" \
  --set-env-vars LOCATION="$LOCATION" \
  --set-env-vars GITLAB_URL="$GITLAB_URL" \
  --set-env-vars GITLAB_REPOSITORY="$GITLAB_REPOSITORY" \
  --set-env-vars GITLAB_BRANCH="$GITLAB_BRANCH" \
  --set-env-vars GITLAB_BASE_BRANCH="$GITLAB_BASE_BRANCH" \
  --set-env-vars JIRA_USERNAME="$JIRA_USERNAME" \
  --set-env-vars JIRA_INSTANCE_URL="$JIRA_INSTANCE_URL" \
  --set-env-vars JIRA_PROJECT_KEY="$JIRA_PROJECT_KEY" \
  --set-env-vars JIRA_CLOUD="$JIRA_CLOUD" \
  --set-env-vars LANGCHAIN_TRACING_V2="$LANGCHAIN_TRACING_V2" \
  --update-secrets="LANGCHAIN_API_KEY=LANGCHAIN_API_KEY:latest" \
  --update-secrets="GITLAB_PERSONAL_ACCESS_TOKEN=GITLAB_PERSONAL_ACCESS_TOKEN:latest" \
  --update-secrets="JIRA_API_TOKEN=JIRA_API_TOKEN:latest" \
  --min-instances=1 \
  --max-instances=3

Répondez Y pour créer le dépôt Docker Artifact Registry.

Deploying from source requires an Artifact Registry Docker repository to store built containers. A repository named [cloud-run-source-deploy] in 
region [us-central1] will be created.

Do you want to continue (Y/n)?  y

Demandez à Gemini d'expliquer la commande:

What does this command do?

gcloud run deploy devai-api \
  --source=. \
  --region="$LOCATION" \
  --allow-unauthenticated \
  --service-account vertex-client \
  --set-env-vars PROJECT_ID="$PROJECT_ID" \
  --set-env-vars LOCATION="$LOCATION" \
  --set-env-vars GITLAB_URL="$GITLAB_URL" \
  --set-env-vars GITLAB_REPOSITORY="$GITLAB_REPOSITORY" \
  --set-env-vars GITLAB_BRANCH="$GITLAB_BRANCH" \
  --set-env-vars GITLAB_BASE_BRANCH="$GITLAB_BASE_BRANCH" \
  --set-env-vars JIRA_USERNAME="$JIRA_USERNAME" \
  --set-env-vars JIRA_INSTANCE_URL="$JIRA_INSTANCE_URL" \
  --set-env-vars JIRA_PROJECT_KEY="$JIRA_PROJECT_KEY" \
  --set-env-vars JIRA_CLOUD="$JIRA_CLOUD" \
  --set-env-vars LANGCHAIN_TRACING_V2="$LANGCHAIN_TRACING_V2" \
  --update-secrets="LANGCHAIN_API_KEY=LANGCHAIN_API_KEY:latest" \
  --update-secrets="GITLAB_PERSONAL_ACCESS_TOKEN=GITLAB_PERSONAL_ACCESS_TOKEN:latest" \
  --update-secrets="JIRA_API_TOKEN=JIRA_API_TOKEN:latest" \
  --min-instances=1 \
  --max-instances=3

34ed504e0bcf697b.png

Consultez le flux gcloud run deploy SERVICE_NAME --source=. ci-dessous. En savoir plus

5c122a89dd11822e.png

En arrière-plan, cette commande utilise buildpacks et Cloud Build de Google Cloud pour créer automatiquement des images de conteneurs à partir de votre code source sans avoir à installer Docker sur votre machine ni à configurer des packs de création ou Cloud Build. En d'autres termes, la commande unique décrite ci-dessus effectue ce qui nécessite normalement les commandes gcloud builds submit et gcloud run deploy.

Si vous avez fourni un Dockerfile(comme nous l'avons fait dans ce dépôt), Cloud Build l'utilisera pour créer des images de conteneur au lieu de s'appuyer sur les buildpacks pour détecter et créer automatiquement des images de conteneur. Pour en savoir plus sur les buildpacks, consultez la documentation.

Examinez les journaux Cloud Build dans la console.

Examinez l'image Docker créée dans Artifact Registry.

Consultez les détails de l'instance Cloud Run dans la console Cloud.

Testez le point de terminaison en exécutant la commande curl.

curl -X POST \
   
-H "Content-Type: application/json" \
   
-d '{"prompt": "PROJECT-100"}' \
   $
(gcloud  run services list --filter="(devai-api)" --format="value(URL)")/generate

La réponse sera au format Markdown. Affichage en mode Aperçu pour une meilleure lisibilité.

bda86deaa1c449a8.png

7. Applications de l'IA

Dans la barre de recherche de la console Google Cloud, saisissez et ouvrez "AI Applications".

3f8540f5c946e199.png

Créez une application Conversational Agent:

6f372cbe4935c507.png

Sélectionnez "Build your own".

5305cb9a8320f468.png

Saisissez "Agent" pour le nom à afficher, puis cliquez sur "Créer".

e0056adc2f8af87.png

Définissez le nom du playbook:

Agent

Définir un objectif:

Help users with questions about JIRA project

Instructions de configuration:

- Greet the users, then ask how you can help them today.
- Summarize the user's request and ask them to confirm that you understood correctly.
  - If necessary, seek clarifying details.
- Thank the user for their business and say goodbye.

Cliquez sur "Save":

bb2569de77cd1f06.png

Testez l'agent à l'aide du chat du simulateur sur la droite:

593dd4b8fc4c20d9.png

Suivez des conversations similaires, comme indiqué ci-dessous:

66a7569835ebc7e7.png

Configuration des outils de l'agent

Pointez sur l'icône en forme de clé à gauche. Ouvrez le menu "Outils", puis créez un outil:

ff635e2d135ea6d8.png

Sélectionnez OpenAPI dans le menu déroulant "Type".

Définir le nom de l'outil:

jira-project-status

Set Description:

Provides JIRA project status

Passez d'onglet et vérifiez l'URL du service Cloud Run dans la sortie de la console. Copiez la valeur de l'URL du service.

Définir le schéma (YAML) : remplacez VOTRE URL CLOUD RUN.

openapi: 3.0.0
info:
 title: CR API
 version: 1.0.0
 description: >-
   This is the OpenAPI specification of a service.
servers:
 - url: 'https://YOUR CLOUD RUN URL'
paths:

 /generate:
   post:
     summary: Request impl
     operationId: generate
     requestBody:
       description: Request impl
       required: true
       content:
         application/json:
           schema:
             $ref: '#/components/schemas/Prompt'
     responses:
       '200':
         description: Generated
         content:
           application/json:
             schema:
               $ref: '#/components/schemas/ProjectStatus'
                 
components:
 schemas:
   Prompt:
     type: object
     required:
       - prompt
     properties:
       prompt:
         type: string
   ProjectStatus:
     type: object
     required:
       - message
     properties:
       message:
         type: string

Enregistrez la configuration de l'outil:

ae78c21f48754d7a.png

Revenez à la configuration de l'agent en sélectionnant "Playbooks" (Playbooks) dans le menu de gauche, puis mettez à jour les instructions pour utiliser l'outil:

Ajoutez des instructions pour utiliser le nouvel outil, puis cliquez sur Save :

- Use ${TOOL: jira-project-status} to help the user with JIRA project status.

16755dd3aaf3888.png

Passez à l'onglet "Examples" et ajoutez un exemple:

a74004679865ab6e.png

Définissez le nom à afficher:

jira-project-flow

À l'aide du menu en bas de l'écran, modélisez la conversation entre l'utilisateur et l'agent:

Exemple d'enchaînement :

Réponse de l'agent: Quel est l'ID du projet ?

Saisie utilisateur: TEST-PROJECT-100

Utilisation de l'outil: jira-project-status

Réponse de l'agent: Informations sur l'état du projet.

6d54f90f1dc630fc.png

Utilisez la référence ci-dessous pour créer l'exemple.

c80eef4210256e5a.png

5affaee4cd54616e.png

Cliquez sur Save. Revenez au simulateur d'agent et réinitialisez les conversations existantes. Testez le parcours.

ac9db60831b0f684.png

a9fbafd45139d434.png

Félicitations ! En intégrant des outils liés à l'application(API) déployée sur Cloud Run, vous avez permis à l'Agent d'effectuer des actions et d'étendre ses fonctionnalités.

e8b113e0cc1b8ad6.png

Consultez les bonnes pratiques pour les agents conversationnels.

Examiner les paramètres disponibles pour les agents

  • Paramètres de journalisation : activer Cloud Logging
  • Intégration Git : l'intégration Git vous permet de pousser et d'extraire votre agent à partir d'un dépôt Git.
  • Sélection du modèle génératif
  • Limites de jetons(entrée et sortie)

f914db1d8a5d5447.png

Examinez les commandes du simulateur d'agent:

d1c4712603d4a8a2.png

8. Intégration dans Slack

Ouvrez le menu "Intégrations", puis cliquez sur Connect sur la carte Slack.

6fc0ad95c28cb6c8.png

e7ee0826668bfa2b.png

b29574fd2a0f9725.png

Ouvrez le lien et créez une application Slack sur https://api.slack.com/apps.

cbf13edc1b284899.png

Dans "Fichier manifeste", sélectionnez :

7721feb295693ea2.png

Choisir un espace de travail pour développer votre application

99a3d5b37cdf8f76.png

Passez au format YAML et collez ce fichier manifeste:

display_information:
  name: Agent
  description: Agent
  background_color: "#1148b8"
features:
  app_home:
    home_tab_enabled: false
    messages_tab_enabled: true
    messages_tab_read_only_enabled: false
  bot_user:
    display_name: Agent
    always_online: true
oauth_config:
  scopes:
    bot:
      - app_mentions:read
      - chat:write
      - im:history
      - im:read
      - im:write
      - incoming-webhook
settings:
  event_subscriptions:
    request_url: https://dialogflow-slack-4vnhuutqka-uc.a.run.app
    bot_events:
      - app_mention
      - message.im
  org_deploy_enabled: false
  socket_mode_enabled: false
  token_rotation_enabled: false

Cliquez sur "Créer":

5f0b3d2c44022eb9.png

Installer dans Workspace:

aa1c2ea1b700c838.png

Sélectionnez le canal "#general", puis cliquez sur "Autoriser".

18eba659946fc65f.png

Sous "Informations de base / Identifiants de l'application", copiez "Secret de signature" et définissez-le dans l'intégration Slack de l'agent comme valeur du champ "Jeton de signature".

31d62babb57e523d.png

bd9f7e3be3b9ea4e.png

Ouvrez "OAuth et autorisations", copiez le "Jeton OAuth de l'utilisateur bot", puis définissez-le dans l'intégration Slack de l'agent comme valeur du champ "Jeton d'accès".

e74c7e003c31258.png

Définissez les champs obligatoires, puis cliquez sur "Démarrer".

La valeur du jeton d'accès de l'agent est le jeton OAuth de l'utilisateur bot de Slack.

La valeur du jeton de signature de l'agent est "Secret de signature" de Slack.

8ea9f6856efa62cf.png

7e71e37750fd063a.png

Copiez "URL du webhook", puis revenez à la configuration de l'application Slack.

Ouvrez la section "Abonnements aux événements", puis collez l'URL.

a1e7271934c714d9.png

Enregistrez les modifications.

e6d9b43b3787b6e7.png

Ouvrez Slack et ajoutez un agent en saisissant "@Agent".

Par exemple, en ajoutant une application avec le nom "@CX".

72313066707f947b.png

63becbd80824f8d8.png

c98e193062b096f0.png

Demandez à l'agent de vous fournir un résumé du projet JIRA.

6edfdb74760548ad.png

Félicitations ! L'agent a bien été intégré à l'espace de travail Slack.

703a3bf5754680fa.png

9. Questions-réponses sur des documents PDF

Cette section explique comment créer un entrepôt de données à l'aide d'un document PDF et l'associer à l'agent, ce qui active la fonctionnalité de questions/réponses en fonction du contenu du document.

Créer un bucket Cloud Storage

Ouvrez Cloud Shell: https://shell.cloud.google.com/

Définissez le nom du bucket à l'aide des cinq derniers chiffres de votre projet GCP. Exemple : pdf-docs-3dw21

BUCKET_NAME=pdf-docs-LAST-5-DIGITS-OF-YOUR-PROJECT

Créez un bucket et importez un document PDF.

gcloud storage buckets create gs://$BUCKET_NAME \
   
--location=us \
   
--default-storage-class=STANDARD \
   
--no-public-access-prevention \
   
--uniform-bucket-level-access

wget https
://services.google.com/fh/files/misc/exec_guide_gen_ai.pdf

gsutil cp exec_guide_gen_ai
.pdf gs://$BUCKET_NAME

Configuration du datastore

Revenez à la console Agent, ouvrez Agent, faites défiler la page vers le bas, puis cliquez sur + Data store.

9a5e4d6d1e040b86.png

Utilisez les valeurs suivantes:

Nom de l'outil: pdf-docs

Type : Data store

Description : pdf-docs

Cliquez sur Save.

60096b1c597347fa.png

Cliquez sur Add data stores en bas de la page. Cliquez ensuite sur "Create new data store".

abb9e513ac905e75.png

Sélectionnez "Cloud Storage" comme source de données.

Sélectionnez : Unstructured documents

Sélectionnez votre bucket/dossier GCS.

42dec238c1d0ac2f.png

Sélectionnez "us" pour l'emplacement du data store.

Pour le nom du datastore, saisissez: "pdf-docs"

Sélectionnez "Digital parser" dans le menu déroulant.

Activez la fragmentation avancée.

Activez les en-têtes d'ancêtres dans les fragments.

Cliquez sur "Create".

1a5222b86ee6c58e.png

3119b5fec43c9294.png

Cliquez sur le data store, puis examinez les sections "Documents", "Activité" et "Configuration de traitement".

872d9142615e90c9.png

L'importation prend environ cinq à dix minutes.

d9739a4af2244e03.png

Options d'analyse et de segmentation

Vous pouvez contrôler l'analyse du contenu de différentes manières:

  • Analyseur numérique L'analyseur numérique est activé par défaut pour tous les types de fichiers, sauf si un autre type d'analyseur est spécifié. L'analyseur numérique traite les documents ingérés si aucun autre analyseur par défaut n'est spécifié pour le magasin de données ou si l'analyseur spécifié n'est pas compatible avec le type de fichier d'un document ingéré.
  • Analyse OCR pour les PDF Version Preview publique. Si vous prévoyez d'importer des PDF scannés ou des PDF contenant du texte dans des images, vous pouvez activer l'analyseur OCR pour améliorer l'indexation des PDF. Consultez À propos de l'analyse OCR pour les PDF.
  • Analyseur de mise en page. Activez l'analyseur de mise en page pour les fichiers HTML, PDF ou DOCX si vous prévoyez d'utiliser Vertex AI Search pour le RAG. Pour en savoir plus sur cet analyseur et découvrir comment l'activer, consultez Segmenter les documents pour le RAG.

En savoir plus sur l'analyse et la fragmentation de documents

Configuration de l'outil

Revenez à l'écran de configuration de l'outil Agent et actualisez les datastores disponibles.

Sélectionnez le data store que vous venez de créer, puis cliquez sur Confirm.

2922f7d9bdb7b2bc.png

Configurez l'ancrage.

Saisissez "Google Cloud" comme nom de l'entreprise.

Paramètres de la charge utile : cochez "Include snippets in Conversational Messenger response payload"". Définissez la valeur sur 5.

Cliquez sur "Enregistrer".

484e99caa7d1bc07.png

Configuration des instructions de l'agent

Revenez à la configuration de l'agent.

Ajoutez une instruction:

- Provide detailed answer to users questions about the exec guide to gen ai using information in the ${TOOL:pdf-docs}

f6d27e58b68f9f7.png

Enregistrez la configuration.

Créer un exemple pour l'outil PDF-Docs

Accédez à l'onglet "Exemples". Créer un exemple: Guide to generative AI

Utiliser les actions "+":

ee4f85ba3f47fda0.png

Ajoutez "Saisie utilisateur":

What are the main capabilities for generative AI?

Ajoutez "Utilisation de l'outil".

  • Outil et action: "pdf-docs"

Entrée (requestBody)

{
 
"query": "Main capabilities for generative AI",
 
"filter": "",
 
"userMetadata": {},
 
"fallback": ""
}

Résultat de l'outil:

{
 
"answer": "Detailed answer about main capabilities for generative AI",
 
"snippets": [
   
{
     
"uri": "https://storage.cloud.google.com/pdf-docs-49ca4/exec_guide_gen_ai.pdf",
     
"text": "Detailed answer about main capabilities",
     
"title": "exec_guide_gen_ai"
   
}
 
]
}

Ajouter "Réponse de l'agent"

Detailed answer about main capabilities. 

https
://storage.cloud.google.com/pdf-docs-49ca4/exec_guide_gen_ai.pdf

Exemple de configuration:

d1da4c1d18709ea6.png

Configuration de l'appel d'outil:

a0d47a9dc04bb2f1.png

Passez au simulateur pour tester la configuration.

Question :

What are the 10 steps in the exec guide?

e682480a959125bc.png

Sélectionnez "Agent" dans le menu déroulant "Invocations", puis cliquez sur "Save as example".

582759df60b9a342.png

Indiquez le nom "user-question-flow".

Définissez le récapitulatif sur "Agent helped user answer question based on the pdf document", puis cliquez sur "Enregistrer".

Mettez en forme la réponse de l'agent et incluez un lien vers le document PDF dans la section de sortie de l'outil.

6ba5011ed26793f3.png

Enregistrez l'exemple.

Revenez au simulateur et cliquez sur Replay conversation. Vérifiez le format de réponse mis à jour. Si une erreur s'affiche après avoir enregistré l'exemple, vous devrez peut-être actualiser la fenêtre de votre navigateur et redémarrer la conversation en renvoyant l'invite:

What are the 10 steps in the exec guide?

51698c5f1fbd2770.png

Posez une autre question:

What are the main capabilities in the exec guide?

7b636f489c05a13.png

Document PDF source.

5b3e6d2ceda99247.png

Question :

What should I consider when evaluating projects?

1155edfbffcd14b2.png

Document PDF source.

57a0d331aa91f04b.png

Question :

What are the priority use cases in Retail and CPG in the exec guide?

92264121fc8f06e.png

Document PDF source.

b4d07e6e7d9adc00.png

Félicitations ! L'agent peut désormais fournir des réponses fondées sur les documents PDF.

e11d020a9cfa36d1.png

10. Agents prédéfinis

Vous allez ensuite explorer les agents prédéfinis dans le menu de gauche.

de49672bbb8112fd.png

Sélectionnez l'un des agents et déployez-le. Découvrez la configuration, les instructions et les outils de l'Agent.

1e00ed8ef4887efb.png

11. Félicitations !

Félicitations, vous avez terminé l'atelier.

Points abordés

  • Créer et déployer des agents conversationnels
  • Ajouter un outil pour l'agent basé sur l'application Cloud Run
  • Intégrer l'agent à l'espace de travail Slack
  • Configurer un data store pour les questions/réponses sur des documents PDF

Étapes suivantes :

Effectuer un nettoyage

Pour éviter que les ressources utilisées lors de ce tutoriel soient facturées sur votre compte Google Cloud, supprimez le projet contenant les ressources, ou conservez le projet et supprimez chaque ressource individuellement.

Supprimer le projet

Le moyen le plus simple d'empêcher la facturation est de supprimer le projet que vous avez créé pour ce tutoriel.

© 2024 Google LLC. Tous droits réservés. Google et le logo Google sont des marques de Google LLC. Tous les autres noms de société et de produit peuvent être des marques des sociétés auxquelles ils sont associés.