Google ADK en pratique : Kit de développement d'agents open-source avec MCP + orchestration de workflows

Google ADK en pratique : Kit de développement d'agents open-source avec MCP + orchestration de workflows

Si vous suivez le développement des agents IA, vous avez certainement entendu parler de LangChain, CrewAI et AutoGen. Mais ADK (Agent Development Kit) de Google, open-sourcé en 2025, change la donne – c’est le premier framework qui combine support natif du protocole MCP, moteur d’exécution de graphe et intégration profonde de Gemini dans un seul package.

Ce n’est pas un aperçu superficiel des fonctionnalités. C’est un test pratique approfondi. Nous examinerons trois capacités clés – intégration d’outils MCP, orchestration de workflows et routage dynamique – avec du code réel pour vérifier si Google ADK peut vraiment remplacer votre framework d’agents actuel.

1. Qu’est-ce que Google ADK et pourquoi devriez-vous vous en soucier ?

Google ADK 2.0 est le framework de développement d’agents IA code-first open-source de Google. Vous définissez le comportement des agents, les appels d’outils et la logique d’orchestration multi-agents en Python pur.

Différences avec LangChain / CrewAI / AutoGen

DimensionGoogle ADK 2.0LangChainCrewAIAutoGen
Philosophie de conceptionCode-first + moteur de grapheAppels en chaîne + config YAMLJeu de rôle + délégation de tâchesConversation multi-agents
Support MCP✅ Natif intégré⚠️ Plugin tiers requis❌ Aucun❌ Aucun
Workflow✅ Graphe (séquentiel/parallèle/boucle/conditionnel)⚠️ Package LangGraph séparé⚠️ Principalement séquentiel⚠️ Piloté par conversation
Liaison de modèleGemini-first, supporte tout modèleIndépendant du modèleIndépendant du modèleIndépendant du modèle
Écosystème Google✅ Vertex AI / Cloud Run / BigQuery natif
Sûreté des types✅ Typage Python complet⚠️ Partiel⚠️ Faible⚠️ Faible

Conclusion : Si vous vous êtes engagé sur Gemini comme modèle principal, ou avez besoin du protocole MCP pour connecter des outils externes, Google ADK est le choix le plus fluide. Si vous avez besoin de flexibilité indépendante du modèle, LangChain reste l’option la plus mature.

2. Fonctionnalités clés en détail

2.1 Support natif du protocole MCP

MCP (Model Context Protocol) est un protocole ouvert d’Anthropic qui permet aux modèles IA d’appeler des outils externes et des sources de données de manière standardisée. Google ADK est le premier framework mainstream avec un client MCP intégré.

from google.adk.tools.mcp_tools import MCPToolset
from google.adk import Agent

# ✅ ADK : une ligne pour se connecter à un serveur MCP
mcp_tools = MCPToolset.from_url("http://localhost:3000")

agent = Agent(
    name="mcp_agent",
    model="gemini-2.5-flash",
    instruction="Vous êtes un assistant utile avec accès à des outils externes.",
    tools=[mcp_tools],
)

2.2 Orchestration de workflows

La fonctionnalité la plus puissante d’ADK 2.0 est la classe Workflow – un moteur d’exécution basé sur un graphe prenant en charge quatre modèles d’orchestration.

Exécution séquentielle

from google.adk import Agent, Workflow

researcher = Agent(
    name="researcher",
    model="gemini-2.5-flash",
    instruction="Recueillez des informations pertinentes pour la question de l'utilisateur. Retournez les faits clés.",
)
writer = Agent(
    name="writer",
    model="gemini-2.5-flash",
    instruction="Rédigez un article concis basé sur les faits fournis.",
)
reviewer = Agent(
    name="reviewer",
    model="gemini-2.5-flash",
    instruction="Révisez la qualité de l'article. Corrigez les erreurs et améliorez l'expression.",
)

pipeline = Workflow(
    name="content_pipeline",
    edges=[("START", researcher, writer, reviewer)],
)

Exécution parallèle (Fan-out / Fan-in)

sentiment_agent = Agent(name="sentiment", instruction="Analysez le sentiment.")
topic_agent = Agent(name="topic", instruction="Extrayez les sujets principaux.")
entity_agent = Agent(name="entity", instruction="Identifiez les entités clés.")
summary_agent = Agent(name="summary", instruction="Résumez tous les résultats d'analyse.")

parallel_workflow = Workflow(
    name="parallel_analysis",
    edges=[
        ("START", sentiment_agent, topic_agent, entity_agent),  # fan-out
        (sentiment_agent, topic_agent, entity_agent, summary_agent),  # fan-in
    ],
)

2.3 Routage dynamique piloté par LLM

coordinator = Agent(
    name="coordinator",
    model="gemini-2.5-flash",
    instruction="""Vous êtes un coordinateur de tâches. Déléguez les tâches au bon expert :
    - Analyse de données → data_analyst
    - Questions de code → code_expert
    - Besoins de rédaction → writer
    Affichez la cible de délégation et la raison.""",
    sub_agents=[data_analyst, code_expert, writer],
)

3. Démarrage rapide

3.1 Installation

python3 -m venv adk-env && source adk-env/bin/activate
pip install "google-adk[cli]"
export GEMINI_API_KEY="your-key-here"

3.2 Pratique : Agent workflow multi-étapes

from google.adk import Agent, Workflow
from google.adk.tools.mcp_tools import MCPToolset

search_tools = MCPToolset.from_url("http://localhost:3001")

collector = Agent(
    name="collector",
    model="gemini-2.5-flash",
    instruction="Recherchez 3-5 points d'information clés pour le sujet. Retournez sous forme de liste JSON.",
    tools=[search_tools],
)
analyst = Agent(
    name="analyst",
    model="gemini-2.5-flash",
    instruction="Analysez les informations collectées. Extrayez les insights et tendances clés.",
)
writer = Agent(
    name="writer",
    model="gemini-2.5-flash",
    instruction="Organisez l'analyse en un rapport structuré avec résumé, corps et conclusion.",
)
reviewer = Agent(
    name="reviewer",
    model="gemini-2.5-flash",
    instruction="Révisez le rapport : vérifiez l'exactitude des faits, la cohérence logique, la qualité linguistique.",
)

root_agent = Workflow(
    name="research_pipeline",
    edges=[("START", collector, analyst, writer, reviewer)],
)

4. Comparaison détaillée avec les concurrents

vs LangChain + LangGraph

LangGraph est la solution de workflow de LangChain, similaire à ADK Workflow. Différence principale : ADK est tout-en-un (agent + outils + workflow + MCP), tandis que LangChain nécessite de combiner plusieurs packages avec une configuration plus complexe mais un écosystème plus riche.

vs CrewAI

CrewAI excelle dans la collaboration multi-agents de type “jeu de rôle” avec un onboarding rapide. Mais il échoue lorsque vous avez besoin de flux d’exécution déterministes, d’intégration d’outils MCP ou de branchements conditionnels et boucles.

5. Cas d’utilisation et limitations

Idéal pour

  1. Stack Google Cloud : Intégration native avec Vertex AI, Cloud Run, BigQuery
  2. Écosystème d’outils MCP : Connexion de nombreux outils externes via protocole standardisé
  3. Workflows prévisibles : Pipelines de service client, traitement de données, génération de contenu
  4. Orchestration hybride : Structures de graphe déterministes + routage LLM flexible

Limitations actuelles

  1. Préférence Gemini : La meilleure expérience nécessite l’API Gemini
  2. Écosystème en croissance : Moins d’intégrations tierces que LangChain
  3. Lacunes de documentation : Certaines fonctionnalités avancées sont encore en cours de documentation
  4. Support linguistique : La version JS/TS en est à ses débuts

6. FAQ

Q1 : Google ADK est-il gratuit ?

R : Le framework ADK est entièrement gratuit et open-source (Apache 2.0). L’utilisation des modèles Gemini nécessite des frais d’API Google AI, mais il existe un niveau gratuit. Vous pouvez également connecter d’autres modèles pour éviter les coûts.

Q2 : Quels modèles LLM ADK supporte-t-il ?

R : Optimisé nativement pour la série Gemini 2.5 (Flash/Pro). Via des Model Providers personnalisés, vous pouvez également intégrer OpenAI GPT-4o, Anthropic Claude, modèles locaux Ollama, etc.

Q3 : Où trouver des outils MCP ?

R : Le protocole MCP compte des milliers d’implémentations de serveurs communautaires. Trouvez-les sur MCP Servers GitHub – couvrant les systèmes de fichiers, bases de données, automatisation de navigateur, Slack, GitHub, etc.

Q4 : Comment ADK Workflow diffère-t-il de LangGraph ?

R : Fonctionnellement similaires – les deux sont des moteurs d’exécution de graphe. La différence : ADK est intégré (zéro configuration), LangGraph nécessite une installation séparée. L’API d’ADK est plus simple ; LangGraph a des outils de débogage visuel plus matures.

Q5 : Quel déploiement de production est recommandé ?

R : Le plus simple : Docker + Cloud Run. ADK fournit Runner.serve() pour le service HTTP, conteneurisable avec un Dockerfile. Pour l’échelle, Vertex AI Agent Engine gère l’auto-scaling et la surveillance.

7. Verdict final

Google ADK 2.0 possède le meilleur support du protocole MCP de tous les frameworks d’agents, point. Son orchestration de workflows – séquentiel, parallèle, boucle, routage conditionnel – rend les pipelines d’agents complexes prévisibles et testables.

Note : ⭐⭐⭐⭐ (4/5)

Déductions : Le support des modèles non-Gemini n’est pas encore aussi fluide ; l’écosystème communautaire est en retard sur LangChain.

Recommandation en une phrase : Si vous utilisez Gemini + avez besoin de MCP + avez besoin de workflows déterministes, ADK est la meilleure option actuelle. Sinon, LangChain reste le choix le plus universel.


Ressources associées :