Registrar um agente personalizado do ADK

Se você criar um agente personalizado usando o Kit de Desenvolvimento de Agente (ADK) e hospedá-lo na sua própria infraestrutura, é possível torná-lo detectável no Registro de agentes expondo um card do agente e registrando manualmente o endpoint dele.

Este documento explica como garantir que seu agente do ADK esteja em conformidade com o protocolo Agent2Agent (A2A), permitindo que o registro indexe as habilidades dele.

O endpoint do card do agente

Para que o Registro de agentes entenda os recursos do seu agente personalizado, ele precisa expor os metadados e as habilidades disponíveis usando o protocolo Agent2Agent (A2A).

A especificação A2A exige que os agentes disponibilizem um card do agente, que é um documento JSON que descreve a identidade e as ferramentas do agente em um endpoint específico, geralmente /.well-known/agent-card.json.

Quando você usa os plug-ins ou módulos específicos do servidor A2A do ADK para registrar seu agente, a estrutura pode gerar e disponibilizar automaticamente esse card do agente com base na definição Agent e no tools fornecido no seu código.

Registrar o agente exposto

Depois de implantar o agente do ADK no ambiente de hospedagem e ele servir os endpoints REST com sucesso, instrua o Agent Registry a descobrir o agente.

Como as implantações personalizadas exigem registro manual, você cria um recurso Service no registro. Salve o card do agente gerado como um arquivo JSON local, por exemplo, agent-card.json.

Use a CLI do Google Cloud para registrar o agente. Não se esqueça de especificar o tipo de especificação a2a-agent-card e faça upload do arquivo local usando a flag --agent-spec-content:

gcloud agent-registry services create AGENT_NAME \
  --project=PROJECT_ID \
  --location=LOCATION \
  --display-name="DISPLAY_NAME" \
  --agent-spec-type=a2a-agent-card \
  --agent-spec-content=agent-card.json

O tamanho máximo do arquivo de especificação é de 10 KB.

Substitua:

  • AGENT_NAME: o nome que você quer dar ao agente, por exemplo, my-custom-agent.
  • PROJECT_ID: o ID do projeto.
  • LOCATION: o local ou a região do registro.
  • DISPLAY_NAME: o nome legível do seu agente.

Depois que o recurso Service é criado, o Agent Registry analisa o card do agente, cria um recurso Agent detectável e indexa as habilidades definidas no código Python do ADK para que outros desenvolvedores possam pesquisá-las.