在
Agent Runtime 可让您托管使用各种框架开发的智能体。本文档介绍了如何使用 LangGraph、LangChain、AG2 或 LlamaIndex 创建、部署和测试智能体。
本快速入门将引导您完成以下步骤:
- 设置 Google Cloud 项目。
- 安装 Agent Platform SDK for Python 和您选择的框架。
- 开发货币兑换智能体。
- 将智能体部署到 Agent Runtime。
- 测试已部署的智能体。
如需了解使用智能体开发套件 (ADK) 的快速入门,请参阅使用智能体开发套件在 Agent Platform 上开发和部署智能体。
准备工作
-
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 and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.
如需获取使用 Agent Runtime 所需的权限,请让您的管理员为您授予项目的以下 IAM 角色:
- Agent Platform User (
roles/aiplatform.user) - Storage Admin (
roles/storage.admin)
如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。
安装并初始化 Agent Platform SDK for Python
运行以下命令以安装 Agent Platform SDK for Python 和其他 所需的软件包:
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.112以用户身份进行身份验证
Colab
运行以下代码:
from google.colab import auth auth.authenticate_user(project_id="PROJECT_ID")Cloud Shell
您无需执行任何操作。
本地 Shell
运行以下命令:
gcloud auth application-default login运行以下代码以导入 Agent Platform 并初始化 SDK:
开发智能体
为智能体开发货币兑换工具:
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()实例化智能体:
LangGraph
from vertexai import agent_engines agent = agent_engines.LanggraphAgent( model="gemini-3.5-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-3.5-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-3.5-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-3.5-flash", runnable_kwargs={"tools": [get_exchange_rate]}, runnable_builder=runnable_with_tools_builder, )在本地测试智能体:
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?" )
部署智能体
通过在 Agent Platform 中创建 reasoningEngine 资源来部署智能体:
LangGraph
remote_agent = client.agent_engines.create(
agent,
config={
"display_name": "LangGraph currency exchange agent",
"requirements": ["google-cloud-aiplatform[agent_engines,langchain]"],
"identity_type": types.IdentityType.AGENT_IDENTITY,
},
)
LangChain
remote_agent = client.agent_engines.create(
agent,
config={
"display_name": "LangChain currency exchange agent",
"requirements": ["google-cloud-aiplatform[agent_engines,langchain]"],
"identity_type": types.IdentityType.AGENT_IDENTITY,
},
)
AG2
remote_agent = client.agent_engines.create(
agent,
config={
"display_name": "AG2 currency exchange agent",
"requirements": ["google-cloud-aiplatform[agent_engines,ag2]"],
"identity_type": types.IdentityType.AGENT_IDENTITY,
},
)
LlamaIndex
remote_agent = client.agent_engines.create(
agent,
config={
"display_name": "LlamaIndex currency exchange agent",
"requirements": ["google-cloud-aiplatform[agent_engines,llama_index]"],
"identity_type": types.IdentityType.AGENT_IDENTITY,
},
)
使用智能体
通过发送查询来测试部署的智能体:
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?"
)
清理
为避免因本页中使用的资源导致您的 Google Cloud 账号产生费用,请按照以下步骤操作。
remote_agent.delete(force=True)