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, poderá torná-lo detectável no Agent Registry expondo um card do agente e registrando manualmente o endpoint dele.

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

O endpoint do card do agente

Para que o Agent Registry entenda os recursos do seu agente personalizado, ele precisa expor os metadados e as habilidades A2A 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, normalmente /.well-known/agent-card.json.

Ao usar os plug-ins ou módulos específicos do servidor A2A do ADK para registrar seu agente, a estrutura pode gerar e veicular automaticamente esse card do agente com base na definição Agent e nas tools fornecidas no código.

Registrar o agente exposto

Depois de implantar o agente do ADK no ambiente de hospedagem e ele veicular os endpoints REST, instrua o Agent Registry a descobri-lo.

Como as implantações personalizadas exigem registro manual, você cria um Service recurso 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, especificando o tipo de especificação a2a-agent-card e faça o 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 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 A2A definidas no seu código Python do ADK para que outros desenvolvedores possam pesquisá-las.