A Identidade do Agente permite provisionar uma identidade gerenciada para os agentes que você cria e implanta no Agent Runtime na Gemini Enterprise Agent Platform usando a Agents CLI e o Kit de Desenvolvimento de Agente (ADK). O agente implantado pode se autenticar nos serviços doGoogle Cloud e recuperar credenciais do gerenciador de autenticação de Identidade do Agente sem gerenciamento manual de credenciais.
Antes de começar
Ative as APIs Agent Identity, Agent Platform, Agent Registry e App Hub, se ainda não estiverem ativadas.
Funções necessárias para ativar APIs
Para ativar APIs, você precisa da permissão
serviceusage.services.enable. Se você criou o projeto, provavelmente já tem essa permissão pelo papel de proprietário (roles/owner). Caso contrário, é possível conseguir essa permissão pelo papel de administrador do Service Usage (roles/serviceusage.serviceUsageAdmin). Saiba como conceder papéis.Verifique se você tem o papel de Usuário da Agent Platform (
roles/aiplatform.user) no projeto.
Criar e implantar o agente
Crie um agente de amostra usando google-agents-cli e implante-o com a identidade do agente:
Instale o
uve execute a configuração dogoogle-agents-cli:pip install uv uvx google-agents-cli setup
Crie um projeto de agente usando o modelo de protótipo:
uvx google-agents-cli create AGENT_PROJECT --prototype --yes
Substitua
AGENT_PROJECTpelo nome do novo diretório do projeto do agente (por exemplo,maps-agent).Esse comando gera a seguinte estrutura de diretório do projeto:
AGENT_PROJECT/ ├── app/ # Core agent code │ ├── agent.py # Main agent logic │ ├── fast_api_app.py # Client application logic │ └── app_utils/ # App utilities and helpers ├── tests/ # Unit and integration tests ├── GEMINI.md # Development guide └── pyproject.toml # Project dependencies
Renomeie a pasta de aplicativo padrão (
app) para corresponder ao nome do agente (AGENT_NAME, por exemplo,maps_agent). Os nomes de agentes precisam ser um identificador Python válido: precisam começar com uma letra e conter apenas letras, números e sublinhados.cd AGENT_PROJECT mv app AGENT_NAME
Atualize o arquivo de configuração
agent.pypara refletir o novo nome:# In AGENT_PROJECT/AGENT_NAME/agent.py app = App( root_agent=root_agent, name="
AGENT_NAME", )Escolha um modelo para usar com base na disponibilidade regional. Atualize o valor de
MODELemagent.pypara corresponder ao modelo escolhido.Solução alternativa para modelos disponíveis apenas na região
globalPara usar um modelo que só está disponível na região
global, modifiqueagent.pypara que seu agente possa acessá-lo.-
Adicione as seguintes importações:
from functools import cached_property from google.genai import Client
-
Adicione a seguinte subclasse após as importações:
class GlobalGemini(Gemini): @cached_property def api_client(self) -> Client: return Client(enterprise=True, location="global")
-
Encontre o seguinte código:
root_agent = Agent( name="root_agent", model=Gemini(
Mude-o para fazer referência à nova subclasse:
root_agent = Agent( name="root_agent", model=GlobalGemini(
-
Ative a identidade do agente criando um arquivo de configuração:
echo '{ "identity_type": "AGENT_IDENTITY" }' > AGENT_NAME/.agent_engine_config.json
Crie um arquivo
requirements.txtpara as dependências de implantação:uv export \ --no-emit-workspace \ --no-hashes \ --format requirements.txt \ --output-file AGENT_NAME/requirements.txt
Verifique a estrutura de diretórios do projeto:
AGENT_PROJECT/ ├── AGENT_NAME/ # Agent application folder │ ├── .agent_engine_config.json # Agent Identity configuration │ ├── agent.py # Main agent logic │ ├── fast_api_app.py # Client application logic │ ├── requirements.txt # Deployment dependencies │ └── app_utils/ # App helpers ├── tests/ # Tests ├── GEMINI.md # Development guide └── pyproject.toml # Project dependencies
Teste o agente localmente:
uv run adk web . --port 8501 --reload_agents
Para validar o agente, faça o seguinte:
Acesse
http://localhost:8501. Se preferir, se estiver usando o Cloud Shell, clique no link fornecido pela saída do servidor da Web.Na interface de chat, envie um comando de teste para verificar a resposta.
Encerre o servidor com
CTRL+C.Implante o agente no Google Cloud:
uv run adk deploy agent_engine AGENT_NAME \ --project="PROJECT_ID" \ --region="LOCATION"
Substitua:
PROJECT_ID: o ID do projeto do Google Cloud .LOCATION: a região com disponibilidade em que você quer implantar o agente (por exemplo,us-west1).
A implantação pode levar alguns minutos para ser concluída. Depois que o processo terminar, a CLI vai mostrar uma mensagem de confirmação e um link para o playground do agente no console do Google Cloud .
Recupere o ID do SPIFFE do agente (identidade do agente):
No console do Google Cloud , acesse a página Implantações.
Para copiar o ID SPIFFE do agente para a área de transferência, encontre a linha em que o agente implantado está e, na coluna Identidade dessa linha, clique em Copiar para a área de transferência. A identidade é semelhante a:
principal://agents.global.org-ORGANIZATION_ID.system.id.goog/resources/aiplatform/projects/PROJECT_NUMBER/locations/LOCATION/reasoningEngines/ENGINE_ID.
A seguir
- Visão geral da identidade do agente
- Visão geral do gerenciador de autenticação de Identidade do Agente
- Autenticar usando o OAuth de três etapas com o gerenciador de autenticação
- Autenticar usando o OAuth de duas etapas com o gerenciador de autenticação
- Autenticar usando a chave de API com o gerenciador de autenticação
- Gerenciar provedores de autenticação de Identidade do Agente