Freigeben über


A2A-Agenten

Das Microsoft Agent Framework unterstützt die Verwendung eines Remote-Agents, der über das A2A-Protokoll in Ihrer Anwendung mit der gleichen AIAgent Abstraktion wie jeder andere Agent verfügbar gemacht wird.

Erste Schritte

Fügen Sie dem Projekt die erforderlichen NuGet-Pakete hinzu.

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

Erstellen eines A2A-Agents mittels des bekannten Agentenkartenstandorts

Lassen Sie uns zunächst ein Szenario betrachten, in dem wir den bekannten Agent-Kartenstandort verwenden. Wir übergeben den Stamm-URI des A2A-Agenthosts an den A2ACardResolver Konstruktor, und der Resolver sucht nach der Agentkarte unter https://your-a2a-agent-host/.well-known/agent-card.json.

Erstellen Sie zunächst einen A2ACardResolver mit dem URI des Remote-Agent-Hosts für A2A.

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

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

Erstellen Sie eine Instanz des AIAgent A2A-Remote-Agents mithilfe der GetAIAgentAsync Hilfsmethode.

AIAgent agent = await agentCardResolver.GetAIAgentAsync();

Erstellen eines A2A-Agents mithilfe des Direct Configuration/Private Discovery-Mechanismus

Es ist auch möglich, direkt auf die Agent-URL zu verweisen, wenn es uns bekannt ist. Dies kann für eng gekoppelte Systeme, private Agents oder Entwicklungszwecke nützlich sein, bei denen Clients direkt mit Agentkarteninformationen und Agent-URL konfiguriert sind."

In diesem Fall erstellen wir eine A2AClient direkt mit der URL des Agents.

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

Anschließend können wir eine Instanz von AIAgent mithilfe der GetAIAgent-Methode erstellen.

AIAgent agent = a2aClient.GetAIAgent();

Den Agent verwenden

Der Agent ist ein Standard AIAgent und unterstützt alle Standard-Agent-Vorgänge.

Weitere Informationen zum Ausführen und Interagieren mit Agenten finden Sie in den Einführungstutorials für Agenten.

Erste Schritte

Fügen Sie ihrem Projekt die erforderlichen Python-Pakete hinzu.

pip install agent-framework-a2a --pre

Erstellen eines A2A-Agents

Lassen Sie uns zunächst ein Szenario anschauen, in dem wir die bekannte Agenten-Kartenposition verwenden. Wir übergeben die Basis-URL des A2A-Agenthosts an den A2ACardResolver Konstruktor, und der Resolver sucht nach der Agentkarte unter https://your-a2a-agent-host/.well-known/agent.json.

Erstellen Sie zunächst eine A2ACardResolver mit der URL des A2A-Remote-Agent-Hosts.

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")

Rufen Sie die Agentkarte ab, und erstellen Sie eine Instanz des A2AAgent Remote-A2A-Agents.

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"
)

Erstellen eines A2A-Agents mit URL

Es ist auch möglich, direkt auf die Agent-URL zu verweisen, wenn es uns bekannt ist. Dies kann für eng gekoppelte Systeme, private Agents oder Entwicklungszwecke nützlich sein, bei denen Clients direkt mit Agentkarteninformationen und Agent-URL konfiguriert sind.

In diesem Fall erstellen wir eine A2AAgent direkt mit der URL des Agents.

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"
)

Den Agent verwenden

Der A2A-Agent unterstützt alle Standard-Agentenoperationen.

Weitere Informationen zum Ausführen und Interagieren mit Agenten finden Sie in den Einführungstutorials für Agenten.

Nächste Schritte