Créer des agents IA avec ADK : l'agent Data Analyst

1. Avant de commencer

Bienvenue dans la quatrième partie de la série "Créer des agents IA avec ADK" ! Dans cet atelier de programmation pratique, vous allez combiner ce que vous avez appris lors des sessions précédentes pour créer un agent d'analyste de données. Cet agent sera conçu pour analyser les données, générer des insights précieux et automatiser les aspects clés du workflow d'analyse des données.

Vous allez permettre à votre agent d'explorer les fichiers importés et de le connecter à des bases de données de niveau entreprise comme Google Cloud BigQuery, à l'aide des outils puissants inclus dans l'ADK.

Vous pouvez également accéder à cet atelier de programmation via cette URL raccourcie : goo.gle/adk-data-analyst.

Prérequis

  • Comprendre les concepts de l'IA générative
  • Maîtrise de base de la programmation Python et aisance avec l'utilisation de la ligne de commande.
  • Connaissance des concepts des ateliers de programmation précédents de cette série : "Les bases" et "Donner les moyens grâce aux outils".

Points abordés

  • Découvrez comment créer un agent d'analyse de données fonctionnel à l'aide du framework ADK.
  • Méthodes permettant à un agent d'analyser les données des documents importés.
  • Découvrez comment connecter votre agent à une base de données BigQuery pour analyser vos données à l'échelle de l'entreprise.
  • Techniques pour définir la logique de base de votre agent, y compris son objectif et ses instructions.

Prérequis

  • Un ordinateur qui fonctionne et une connexion Internet fiable.
  • Un navigateur, tel que Chrome, pour accéder à la console Google Cloud
  • Un esprit curieux et une soif d'apprendre.

2. Introduction

Dans le monde actuel axé sur les données, la capacité à analyser rapidement et précisément de grandes quantités d'informations est plus importante que jamais. Toutefois, le processus d'extraction d'insights pertinents nécessite souvent une expertise technique approfondie dans des domaines tels que SQL, ce qui crée un goulot d'étranglement qui peut ralentir la prise de décision. Et si vous pouviez combler ce fossé et interagir avec des ensembles de données complexes aussi facilement que si vous aviez une conversation ?

C'est là que les agents IA changent la donne. En agissant comme une interface intelligente entre vous et vos données, les agents d'IA peuvent comprendre les questions en langage naturel, les traduire en requêtes techniques et fournir des insights exploitables en quelques secondes.

Dans cet atelier de programmation, vous allez découvrir l'avenir de l'analyse de données en créant un agent d'analyse de données pratique à l'aide de l'Agent Development Kit (ADK). Nous allons commencer par créer un agent de base, puis améliorer progressivement ses capacités. Vous allez d'abord apprendre à votre agent à analyser les données non structurées des documents importés. Vous l'associerez ensuite à un entrepôt de données puissant de niveau entreprise, Google Cloud BigQuery, pour interroger et analyser un ensemble de données de santé à grande échelle et réelles.

À la fin de ce tutoriel, vous disposerez non seulement d'un assistant IA fonctionnel, mais vous comprendrez également comment créer des agents capables d'automatiser les tâches de données de routine, d'accélérer les analyses et de démocratiser l'accès aux insights essentiels pour vous et votre équipe.

3. Configurer les services Google Cloud

Créer un projet Google Cloud

Pour que tout votre travail pour cet atelier de programmation soit organisé et distinct des autres projets, vous allez commencer par créer un projet Google Cloud.

  1. Accédez à console.cloud.google.com/projectcreate.
  2. Saisissez les informations requises :
  • Nom du projet : vous pouvez saisir le nom de votre choix (par exemple, "genai-workshop").
  • Emplacement : laissez la valeur Aucune organisation.
  • Compte de facturation : si cette option s'affiche, sélectionnez "Compte de facturation de la version d'essai de Google Cloud Platform" ou votre propre compte de facturation si vous préférez. Si cette option ne s'affiche pas, vous pouvez passer à l'étape suivante.
  1. Notez l'ID du projet généré, car vous en aurez besoin plus tard.

9cc4a060b8c46fb0.png

  1. Si tout est correct, cliquez sur le bouton Créer.

Configurer Cloud Shell

Une fois votre projet créé, suivez les étapes ci-dessous pour configurer Cloud Shell.

1. Lancer Cloud Shell

Accédez à shell.cloud.google.com. Si un pop-up d'autorisation s'affiche, cliquez sur Autoriser.

186bc51f8f3ae589.png

2. Définir un ID de projet

Remplacez replace-with-your-project-id par l'ID de projet que vous avez créé à l'étape précédente. Exécutez la commande suivante dans le terminal Cloud Shell pour définir le bon Project ID.

gcloud config set project replace-with-your-project-id

Vous devriez maintenant voir que le bon projet est sélectionné dans le terminal Cloud Shell. L'ID du projet sélectionné est mis en surbrillance en jaune.

479ae540d1828559.png

3. Activer les API requises

Pour utiliser les services Google Cloud, vous devez d'abord activer leurs API respectives pour votre projet. Exécutez les commandes ci-dessous dans le terminal Cloud Shell pour activer les services de cet atelier de programmation :

gcloud services enable \
 aiplatform.googleapis.com \
 bigquery.googleapis.com

Si l'opération a abouti, le message Operation/... finished successfully s'affiche dans votre terminal.

4. Créez un environnement virtuel Python

Ensuite, créez un environnement Python isolé pour gérer les dépendances de votre projet.

1. Créez un répertoire de projet et accédez-y :

mkdir -p ai-agents-adk && cd ai-agents-adk

2. Créez et activez un environnement virtuel :

uv venv --python 3.12
source .venv/bin/activate

Le préfixe (ai-agents-adk) s'affiche devant l'invite du terminal, ce qui indique que l'environnement virtuel est actif.

6512ff43e8f5aa04.png

3. Page d'installation d'adk

uv pip install google-adk --no-cache

5. Créer un agent de démarrage

Maintenant que votre environnement est prêt, il est temps de créer votre agent IA à l'aide d'une simple commande ADK.

1. Créer un agent

Dans le terminal, exécutez la commande suivante :

adk create data_analyst_agent

2. Configurer votre agent

Vous serez invité à configurer votre agent. Sélectionnez les options suivantes :

  • Choisir un modèle : sélectionnez 1. gemini-2.5-flash.
  • Choisissez un backend : sélectionnez 2. Vertex AI.
  • Saisissez l'ID du projet Google Cloud : appuyez sur Entrée pour confirmer que l'ID du projet est correct.
  • Saisissez la région Google Cloud : appuyez sur Entrée pour utiliser la région par défaut us-central1.

3. Démarrer le serveur Web de développement

Une fois l'agent créé, démarrez le serveur Web de développement en exécutant la commande suivante :

adk web

Vous pouvez Ctrl+cliquer ou Cmd+cliquer sur le lien (par exemple, http://localhost:8000) dans le terminal ou vous pouvez

  • Cliquez sur le bouton Aperçu sur le Web.
  • Sélectionnez Modifier le port.
  • Saisissez le numéro de port (par exemple, 8000).
  • Cliquez sur Modifier et prévisualiser.

L'interface utilisateur de type application de chat s'affiche alors dans votre navigateur.

4. Discuter avec votre agent

N'hésitez pas à discuter avec votre agent via cette interface. Dites par exemple Bonjour, que sais-tu faire ?.

6. Analyser les données d'un document

Dans cette section, vous allez importer un document dans l'agent et poser des questions sur son contenu.

1. Résume le document.

Pour obtenir un résumé du document :

  1. Téléchargez le fichier sur la stratégie de Google en matière de santé.
  2. Cliquez sur le bouton Importer un fichier dans l'UI de votre agent, puis sélectionnez le fichier que vous venez de télécharger.
  3. Dans l'interface de chat, demandez à l'agent de résumer le fichier : Résume-moi ce fichier.
  4. Appuyez sur Entrée.

Vous devriez recevoir un résumé concis du contenu du document.

f0784e4dc5d687cb.png

2. Posez des questions plus détaillées

Essayez maintenant de poser des questions plus détaillées pour approfondir le document :

  • Quelles sont les principales maladies que Google cible actuellement avec ses initiatives en matière d'IA et de données ?
  • Comment Google prévoit-il d'améliorer l'interopérabilité des données de santé et d'éliminer les silos de données ?
  • Comment Google Cloud est-il utilisé pour aider les entreprises et les chercheurs du secteur de la santé ?
  • Quels nouveaux domaines de maladies Google pourrait-il explorer ensuite (par exemple, la BPCO, le cancer, la santé mentale) ?

3. Poser des questions complémentaires

Vous pouvez également poser des questions complémentaires, par exemple pour trouver le numéro de page de référence pour une analyse plus approfondie :

  • Où avez-vous vu des informations sur le diabète ?
  • Redirige-moi vers les pages pertinentes sur les maladies.
  • Quels sont les graphiques intéressants que je devrais consulter ?

Défi : trouvez un document qui vous appartient et que vous souhaitez que l'agent analyse, puis importez-le. Posez des questions à l'agent sur son contenu.

7. Combiner les insights sur les documents avec la recherche Web en direct

L'agent est désormais un expert du document, mais un analyste performant a également besoin d'accéder à des informations externes actuelles. Donnons à notre agent la possibilité d'effectuer des recherches sur le Web.

  1. Dans le terminal Cloud Shell, appuyez sur Ctrl+C pour arrêter le serveur Web.
  2. Ouvrez le fichier data_analyst_agent/agent.py dans l'éditeur Cloud Shell en exécutant la commande suivante :
cloudshell edit data_analyst_agent/agent.py
  1. Modifiez le fichier pour importer et ajouter l'outil google_search :
from google.adk.agents.llm_agent import Agent
from google.adk.tools import google_search

root_agent = Agent(
    model='gemini-2.5-flash',
    name='root_agent',
    description='A helpful assistant for user questions.',
    instruction="""
        First, check the uploaded files for an answer. 
        If the information is not in the files, use your tools to search the web. 
        Answer user questions to the best of your ability.
    """,
    tools=[
        google_search
    ]
)
  1. Enregistrez le fichier et redémarrez le serveur Web dans votre terminal en saisissant adk web.
  2. Dans l'UI de l'agent, réimportez le fichier GoogleHealthStrategy.pdf.
  3. Maintenant, posez une question qui nécessite à la fois le contexte du document et des informations externes :
The document discusses Google's strategy in healthcare. What are three other major tech companies that are also investing heavily in healthcare AI, and what are their primary focus areas?

L'agent synthétise ensuite les informations du document et d'une recherche Google en direct pour vous fournir une réponse complète. Vous pouvez essayer de poser quelques questions :

  • Le document mentionne l'utilisation de l'IA pour la rétinopathie diabétique. Quelles sont les dernières technologies approuvées par la FDA dans ce domaine au cours de l'année écoulée ?
  • Le fichier mentionne des partenariats. Peux-tu trouver des articles de presse ou des communiqués récents sur les dernières collaborations de Google dans le secteur de la santé ?

Défi : Essayez de poser des questions similaires sur l'un de vos documents. Quelque chose qui utilise un document local et les résultats d'Internet.

8. Analyser des données de santé avec BigQuery

L'importation de documents individuels n'est pas évolutive. Dans un scénario réel, les données résident dans des systèmes d'entreprise tels que Google Cloud BigQuery.

Actuellement, les développeurs qui créent des applications agentiques doivent souvent créer et gérer leurs propres outils personnalisés. Ce processus manuel est lent, risqué et crée une surcharge importante. Les développeurs sont alors obligés de gérer l'ensemble du processus, de l'authentification à la gestion des erreurs, au lieu de se concentrer sur l'innovation.

L'Agent Development Kit (ADK) inclut des outils propriétaires pour interagir avec BigQuery. Pour cette analyse spécifique, nous utiliserons l'ensemble de données sur l'utilisation de Medicare, disponible publiquement et fourni par les Centers for Medicare & Medicaid Services (CMS).

Commençons par connecter notre agent à un ensemble de données de santé publique volumineux.

  1. Dans le terminal Cloud Shell, appuyez sur Ctrl+C pour arrêter le serveur Web.
  2. Ouvrez le fichier data_analyst_agent/agent.py dans l'éditeur Cloud Shell en exécutant cette commande dans le terminal :
cloudshell edit data_analyst_agent/agent.py
  1. Remplacez l'intégralité du contenu du fichier par le code suivant pour configurer le puissant BigQueryToolset :
import google.auth
from google.adk.agents.llm_agent import Agent
from google.adk.tools import google_search
from google.adk.tools.agent_tool import AgentTool
from google.adk.tools.bigquery import (
    BigQueryToolset,
    BigQueryCredentialsConfig
)
from google.adk.tools.bigquery.config import (
    BigQueryToolConfig,
    WriteMode
)

# Automatically get credentials from the gcloud environment
application_default_credentials, _ = google.auth.default()
credentials_config = BigQueryCredentialsConfig(
    credentials=application_default_credentials
)

# Configure the BigQuery tool
tool_config = BigQueryToolConfig(
    write_mode=WriteMode.ALLOWED,
    application_name='data_analyst_agent'
)

# Create the toolset with the specified configurations
bigquery_toolset = BigQueryToolset(
    credentials_config=credentials_config, bigquery_tool_config=tool_config
)

# Create an agent with google search tool as a search specialist
google_search_agent = Agent(
    model='gemini-2.5-flash',
    name='google_search_agent',
    description='A search agent that uses google search to get latest information about current events, weather, or business hours.',
    instruction='Use google search to answer user questions about real-time, logistical information.',
    tools=[google_search],
)

# Define the final agent with its instructions and tools
root_agent = Agent(
    model="gemini-2.5-flash",
    name="bigquery_agent",
    description=(
        "Agent to answer questions about BigQuery data and execute SQL queries."
    ),
    instruction="""
        You are an expert data analyst agent with access to BigQuery tools.
        When a user asks about a dataset, first use your tools to understand its schema.
        Then, use this knowledge to construct and execute SQL queries to answer the user's questions.
        Always confirm with the user if their question is ambiguous (e.g., for which year?).
    """,
    tools=[
        AgentTool(google_search_agent),
        bigquery_toolset
    ],
)
  1. Enregistrez le fichier et redémarrez le serveur Web dans votre terminal en saisissant adk web.
  2. Vous pouvez maintenant demander à votre agent d'analyser l'ensemble de données Medicare publiques. Commencez par explorer les données :
Look into the cms_medicare dataset in the bigquery-public-data project. What can you tell me about it?

L'agent utilisera ses outils pour inspecter l'ensemble de données et fournir une liste des tables disponibles. Vous pouvez ensuite approfondir vos recherches en posant des questions analytiques spécifiques. L'agent peut poser des questions pour s'assurer que ses requêtes sont exactes.

2792f14f62f5b484.png

Pour certaines questions, vous devrez fournir l'ID du projet à l'agent afin qu'il puisse l'utiliser pour créer une requête. Exemple :

503477d9e314575e.png

Voici quelques exemples de requêtes analytiques que vous pouvez essayer :

  • En utilisant le tableau inpatient_charges_2015, quelles sont les cinq principales procédures (définitions DRG) en termes de nombre total de sorties ?
  • Quel est le paiement total moyen pour ‘MAJOR JOINT REPLACEMENT' en Californie (CA) ?
  • Quel État présente les frais couverts moyens les plus élevés pour cette même procédure ?

Voici qui conclut cet atelier de programmation. Vous n'avez fait qu'effleurer le potentiel des agents de données optimisés par les systèmes de données d'entreprise. N'hésitez pas à poser à l'agent toutes les questions que vous pourriez avoir sur l'ensemble de données cms_medicare.

Défi : Trouvez un autre ensemble de données public dans BigQuery et utilisez votre agent pour l'explorer. Vous pouvez également créer votre propre ensemble de données avec vos propres données et l'analyser de manière privée.

9. Effectuer un nettoyage (facultatif)

Pour éviter que des frais ne vous soient facturés à l'avenir, vous pouvez supprimer les ressources utilisées dans cet atelier de programmation.

1. Arrêter l'agent

Dans le terminal Cloud Shell, appuyez sur Ctrl+C pour arrêter le processus adk web.

2. Supprimer les fichiers du projet

Pour supprimer le code de l'agent de votre environnement Cloud Shell, exécutez la commande suivante dans le terminal :

cd ~ && rm -rf ai-agents-adk

3. Désactiver les API

Pour désactiver les API que vous avez activées précédemment, exécutez la commande suivante dans le terminal :

gcloud services disable \
 aiplatform.googleapis.com \
 bigquery.googleapis.com

4. Arrêter le projet

Si vous souhaitez supprimer l'intégralité du projet Google Cloud, suivez le guide d'arrêt des projets.

10. Conclusion

Félicitations ! Vous avez créé un agent d'analyse de données à l'aide du framework Agent Development Kit (ADK). Cet agent est capable d'analyser des données provenant de diverses sources, de générer des insights et d'automatiser certaines parties du workflow d'analyse des données.

Pour poursuivre votre parcours d'apprentissage, consultez les ressources suivantes :