Compartir a través de


Agentes de A2A

Microsoft Agent Framework admite el uso de un agente remoto que se expone a través del protocolo A2A empleando la misma abstracción AIAgent en tu aplicación que cualquier otro agente.

Introducción

Agregue los paquetes NuGet necesarios al proyecto.

dotnet add package Microsoft.Agents.AI.A2A --prerelease

Creación de un agente A2A utilizando la ubicación conocida de la tarjeta de agente.

En primer lugar, echemos un vistazo a un escenario en el que se usa la ubicación conocida de la tarjeta del agente. Pasamos el URI raíz del host del agente A2A al constructor A2ACardResolver, y el resolutor buscará la tarjeta del agente en https://your-a2a-agent-host/.well-known/agent-card.json.

En primer lugar, cree un A2ACardResolver con el URI del host del agente A2A remoto.

using System;
using A2A;
using Microsoft.Agents.AI;
using Microsoft.Agents.AI.A2A;

A2ACardResolver agentCardResolver = new(new Uri("https://your-a2a-agent-host"));

Cree una instancia del AIAgent para el agente A2A remoto mediante el GetAIAgentAsync método auxiliar.

AIAgent agent = await agentCardResolver.GetAIAgentAsync();

Creación de un agente de A2A mediante el mecanismo de configuración directa o detección privada

También es posible apuntar a la dirección URL del agente directamente si la conocemos. Esto puede ser útil para sistemas estrechamente acoplados, agentes privados o fines de desarrollo, donde los clientes están configurados directamente con información de tarjeta de agente y dirección URL del agente".

En este caso, creamos un objeto A2AClient directamente con la dirección URL del agente.

A2AClient a2aClient = new(new Uri("https://your-a2a-agent-host/echo"));

Y, a continuación, podemos crear una instancia de AIAgent mediante el GetAIAgent método .

AIAgent agent = a2aClient.GetAIAgent();

Uso del agente

El agente es un estándar AIAgent y admite todas las operaciones estándar.

Consulte los tutoriales de introducción del agente para obtener más información sobre cómo ejecutar e interactuar con agentes.

Introducción

Agregue los paquetes de Python necesarios al proyecto.

pip install agent-framework-a2a --pre

Creación de un agente A2A

En primer lugar, echemos un vistazo a un escenario en el que usamos la ubicación conocida de la tarjeta del agente. Pasamos la dirección URL base del host del agente A2A al A2ACardResolver constructor y el resolver buscará la tarjeta del agente en https://your-a2a-agent-host/.well-known/agent.json.

En primer lugar, cree un A2ACardResolver con la dirección URL del host del agente A2A remoto.

import httpx
from a2a.client import A2ACardResolver

# Create httpx client for HTTP communication
async with httpx.AsyncClient(timeout=60.0) as http_client:
    resolver = A2ACardResolver(httpx_client=http_client, base_url="https://your-a2a-agent-host")

Obtenga la tarjeta del agente y cree una instancia del A2AAgent para el agente A2A remoto.

from agent_framework.a2a import A2AAgent

# Get agent card from the well-known location
agent_card = await resolver.get_agent_card(relative_card_path="/.well-known/agent.json")

# Create A2A agent instance
agent = A2AAgent(
    name=agent_card.name,
    description=agent_card.description,
    agent_card=agent_card,
    url="https://your-a2a-agent-host"
)

Creación de un agente de A2A mediante la dirección URL

También es posible apuntar a la dirección URL del agente directamente si la conocemos. Esto puede ser útil para sistemas estrechamente acoplados, agentes privados o fines de desarrollo, donde los clientes se configuran directamente con la información de la tarjeta del agente y la dirección URL del agente.

En este caso, creamos un objeto A2AAgent directamente con la dirección URL del agente.

from agent_framework.a2a import A2AAgent

# Create A2A agent with direct URL configuration
agent = A2AAgent(
    name="My A2A Agent",
    description="A directly configured A2A agent",
    url="https://your-a2a-agent-host/echo"
)

Uso del agente

El agente A2A admite todas las operaciones de agente estándar.

Consulte los tutoriales de introducción del agente para obtener más información sobre cómo ejecutar e interactuar con agentes.

Pasos siguientes