Développer et déployer des agents sur Agent Runtime
Agent Runtime vous permet d'héberger des agents développés avec différents frameworks. Ce document explique comment créer, déployer et tester un agent à l'aide de LangGraph, LangChain, AG2 ou LlamaIndex.
Ce guide de démarrage rapide vous guide tout au long des étapes suivantes :
- configurer votre Google Cloud projet ;
- installer le SDK Agent Platform pour Python et le framework de votre choix ;
- développer un agent de change ;
- déployer l'agent sur Agent Runtime ;
- tester l'agent déployé.
Pour obtenir le guide de démarrage rapide à l'aide d'Agent Development Kit (ADK), consultez Développer et déployer des agents sur Agent Platform avec Agent Development Kit.
Avant de commencer
- Connectez-vous à votre Google Cloud compte. Si vous n'avez jamais utilisé Google Cloud, créez un compte pour évaluer les performances de nos produits dans des scénarios réels. Les nouveaux clients bénéficient également de 300 $ de crédits sans frais pour exécuter, tester et déployer des charges de travail.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Agent Platform and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Pour obtenir les autorisations nécessaires pour utiliser Agent Runtime, demandez à votre administrateur de vous accorder les rôles IAM suivants sur votre projet :
- Utilisateur d'Agent Platform (
roles/aiplatform.user) - Administrateur Storage (
roles/storage.admin)
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Vous pouvez également obtenir les autorisations requises avec des rôles personnalisés ou d'autres rôles prédéfinis.
Installer et initialiser le SDK Agent Platform pour Python
Exécutez la commande suivante pour installer le SDK Agent Platform pour Python et d'autres packages requis :
LangGraph
pip install --upgrade --quiet google-cloud-aiplatform[agent_engines,langchain]>=1.112LangChain
pip install --upgrade --quiet google-cloud-aiplatform[agent_engines,langchain]>=1.112AG2
pip install --upgrade --quiet google-cloud-aiplatform[agent_engines,ag2]>=1.112LlamaIndex
pip install --upgrade --quiet google-cloud-aiplatform[agent_engines,llama_index]>=1.112S'authentifier en tant qu'utilisateur
Colab
Exécutez le code suivant :
from google.colab import auth auth.authenticate_user(project_id="PROJECT_ID")Cloud Shell
Aucune action n'est requise.
Shell local
Exécutez la commande suivante :
gcloud auth application-default loginExécutez le code suivant pour importer Agent Platform et initialiser le SDK :
(Facultatif) Avant de tester un agent que vous développez, vous devez importer Agent Platform et initialiser le SDK comme suit :
Projet Google Cloud
import vertexai vertexai.init( project="PROJECT_ID", # Your project ID. location="LOCATION", # Your cloud region. )Où :
PROJECT_IDcorrespond à l' Google Cloud ID de projet sous lequel vous développez et déployez des agents.LOCATIONdésigne l'une des régions compatibles.
Avant de déployer un agent, vous devez importer Agent Platform et initialiser le SDK comme suit :
Projet Google Cloud
import vertexai client = vertexai.Client( project="PROJECT_ID", # Your project ID. location="LOCATION", # Your cloud region. )Où :
PROJECT_IDcorrespond à l' Google Cloud ID de projet sous lequel vous développez et déployez des agents.LOCATIONdésigne l'une des régions compatibles.
Développer un agent
Développez un outil de change pour votre agent :
def get_exchange_rate( currency_from: str = "USD", currency_to: str = "EUR", currency_date: str = "latest", ): """Retrieves the exchange rate between two currencies on a specified date.""" import requests response = requests.get( f"https://api.frankfurter.app/{currency_date}", params={"from": currency_from, "to": currency_to}, ) return response.json()Instanciez un agent :
LangGraph
from vertexai import agent_engines agent = agent_engines.LanggraphAgent( model="gemini-2.0-flash", tools=[get_exchange_rate], model_kwargs={ "temperature": 0.28, "max_output_tokens": 1000, "top_p": 0.95, }, )LangChain
from vertexai import agent_engines agent = agent_engines.LangchainAgent( model="gemini-2.0-flash", tools=[get_exchange_rate], model_kwargs={ "temperature": 0.28, "max_output_tokens": 1000, "top_p": 0.95, }, )AG2
from vertexai import agent_engines agent = agent_engines.AG2Agent( model="gemini-2.0-flash", runnable_name="Get Exchange Rate Agent", tools=[get_exchange_rate], )LlamaIndex
from vertexai.preview import reasoning_engines def runnable_with_tools_builder(model, runnable_kwargs=None, **kwargs): from llama_index.core.query_pipeline import QueryPipeline from llama_index.core.tools import FunctionTool from llama_index.core.agent import ReActAgent llama_index_tools = [] for tool in runnable_kwargs.get("tools"): llama_index_tools.append(FunctionTool.from_defaults(tool)) agent = ReActAgent.from_tools(llama_index_tools, llm=model, verbose=True) return QueryPipeline(modules = {"agent": agent}) agent = reasoning_engines.LlamaIndexQueryPipelineAgent( model="gemini-2.0-flash", runnable_kwargs={"tools": [get_exchange_rate]}, runnable_builder=runnable_with_tools_builder, )Testez l'agent localement :
LangGraph
agent.query(input={"messages": [ ("user", "What is the exchange rate from US dollars to SEK today?"), ]})LangChain
agent.query( input="What is the exchange rate from US dollars to SEK today?" )AG2
agent.query( input="What is the exchange rate from US dollars to SEK today?" )LlamaIndex
agent.query( input="What is the exchange rate from US dollars to SEK today?" )
Déployer un agent
Déployez l'agent en créant une reasoningEngine ressource dans Agent Platform :
LangGraph
remote_agent = client.agent_engines.create(
agent,
config={
"requirements": ["google-cloud-aiplatform[agent_engines,langchain]"],
"identity_type": types.IdentityType.AGENT_IDENTITY,
},
)
LangChain
remote_agent = client.agent_engines.create(
agent,
config={
"requirements": ["google-cloud-aiplatform[agent_engines,langchain]"],
"identity_type": types.IdentityType.AGENT_IDENTITY,
},
)
AG2
remote_agent = client.agent_engines.create(
agent,
config={
"requirements": ["google-cloud-aiplatform[agent_engines,ag2]"],
"identity_type": types.IdentityType.AGENT_IDENTITY,
},
)
LlamaIndex
remote_agent = client.agent_engines.create(
agent,
config={
"requirements": ["google-cloud-aiplatform[agent_engines,llama_index]"],
"identity_type": types.IdentityType.AGENT_IDENTITY,
},
)
Utiliser un agent
Testez l'agent déployé en envoyant une requête :
LangGraph
remote_agent.query(input={"messages": [
("user", "What is the exchange rate from US dollars to SEK today?"),
]})
LangChain
remote_agent.query(
input="What is the exchange rate from US dollars to SEK today?"
)
AG2
remote_agent.query(
input="What is the exchange rate from US dollars to SEK today?"
)
LlamaIndex
remote_agent.query(
input="What is the exchange rate from US dollars to SEK today?"
)
Libérer de l'espace
Pour éviter que les ressources utilisées dans cette démonstration soient facturées sur votre Google Cloud compte pour les ressources utilisées sur cette page, procédez comme suit :
remote_agent.delete(force=True)
Étape suivante
Configurer Agent Platform Runtime
Configurez votre environnement pour utiliser Agent Platform Runtime.
Déployer des agents
Découvrez les cinq façons de déployer un agent sur Agent Platform Runtime en fonction de vos besoins de développement.
Gérer les agents déployés
Découvrez comment gérer les agents qui ont été déployés dans l'environnement d'exécution géré d'Agent Platform.