Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
AG-UI ist ein Protokoll, mit dem Sie webbasierte KI-Agent-Anwendungen mit erweiterten Features wie Echtzeitstreaming, Zustandsverwaltung und interaktiven UI-Komponenten erstellen können. Die Agent Framework AG-UI-Integration bietet eine nahtlose Verbindung zwischen Ihren Agenten und Webclients.
Was ist AG-UI?
AG-UI ist ein standardisiertes Protokoll zum Erstellen von KI-Agent-Schnittstellen, das Folgendes bereitstellt:
- Remote-Agent-Hosting: Bereitstellen von KI-Agents als Webdienste, auf die von mehreren Clients zugegriffen werden kann
- Echtzeitstreaming: Stream-Agent-Antworten mithilfe von Server-Sent Events (SSE) für sofortiges Feedback
- Standardisierte Kommunikation: Einheitliches Nachrichtenformat für zuverlässige Agentinteraktionen
- Sitzungsverwaltung: Aufrechterhaltung des Konversationskontexts über mehrere Anfragen hinweg
- Erweiterte Features: Genehmigungen von Menschen in der Schleife, Zustandssynchronisierung und benutzerdefiniertes Benutzeroberflächenrendering
Wann sollte man AG-UI verwenden
Erwägen Sie die Verwendung von AG-UI, wenn Sie Folgendes benötigen:
- Erstellen von Web- oder mobilen Anwendungen, die mit KI-Agents interagieren
- Bereitstellen von Agents als Dienste, auf die mehrere gleichzeitige Benutzer zugreifen können
- Echtzeit-Streaming von Agentenreaktionen, um sofortiges Benutzerfeedback zu ermöglichen
- Implementieren von Genehmigungsworkflows, bei denen Benutzer Aktionen vor der Ausführung bestätigen
- Synchronisieren des Zustands zwischen Client und Server für interaktive Erfahrungen
- Rendern benutzerdefinierter UI-Komponenten basierend auf Agenttoolaufrufen
AG-UI Szenarien
AG-UI definiert sieben Showcase-Szenarien. Die MAF-Unterstützung variiert je nach SDK; verwenden Sie den sprachspezifischen Abschnitt auf dieser Seite für die aktuelle Unterstützungsstufe und Implementierungsanleitungen.
- Agentischer Chat: Einfacher Streaming-Chat mit automatischen Toolanrufen
- Rendering von Back-End-Tools: Tools, die im Backend ausgeführt werden, wobei die Ergebnisse an den Client gestreamt werden
- Human in the Loop: Genehmigungsanfragen zur Benutzerbestätigung
- Agentische generative UI: Asynchrone Tools für langdauernde Vorgänge mit Fortschrittsaktualisierungen
- Toolbasierte generative UI: Benutzerdefinierte UI-Komponenten, die basierend auf Toolaufrufen gerendert werden
- Freigegebener Zustand: Bidirektionale Zustandssynchronisierung zwischen Client und Server
- Predictive State Updates: Stream-Toolargumente als optimistische Zustandsaktualisierungen
Erstellen von Agent-UIs mit CopilotKit
CopilotKit bietet umfangreiche UI-Komponenten zum Erstellen von Agent-Benutzeroberflächen basierend auf dem Standardprotokoll AG-UI Protokoll. CopilotKit unterstützt Streaming-Chatschnittstellen, Front-End- und Back-End-Toolaufrufe, Benutzerinteraktionen, generative Benutzeroberflächen, gemeinsamen Zustand und vieles mehr. Beispiele für die verschiedenen Agent-UI-Szenarien, die CopilotKit in der AG-UI Dojo-Beispielanwendung unterstützt.
Um ein CopilotKit React-Frontend mit einem Agent Framework AG-UI Back-End zu verbinden, registrieren Sie Ihren Endpunkt als eine HttpAgent in der CopilotKit-Laufzeit. Auf diese Weise können die Frontend-Tools von CopilotKit als AG-UI-Client-Tools durchlaufen, und alle AG-UI-Funktionen (Streaming, Genehmigungen, Zustandssynchronisierung) funktionieren automatisch.
CopilotKit hilft Ihnen, sich auf die Funktionen Ihres Agenten zu konzentrieren und gleichzeitig eine ansprechende Benutzererfahrung zu bieten, ohne das Rad neu zu erfinden. Weitere Informationen zu den ersten Schritten mit Microsoft Agent Framework und CopilotKit finden Sie in der Dokumentation zur Microsoft Agent Framework-Integration für CopilotKit .
.NET-Integration
Die .NET-Integration macht ein MAF AIAgent als AG-UI HTTP-Endpunkt verfügbar. Der Hostingadapter konvertiert den Antwortdatenstrom des Agents in AG-UI Ereignisse; Kern-Agent-Verhalten, z. B. Toolausführung und Genehmigung, bleibt Teil von MAF.
Verwenden Sie die .NET-Integration, um:
- Text des Agenten über Server-Sent Events (SSE) übertragen.
- Backend- und Frontend-Toolaufrufe als AG-UI-Ereignisse anzeigen.
- Senden Sie MAF-Toolgenehmigungsanforderungen an den Client und geben Sie die Entscheidung zurück.
- Tauschen Sie den Clientstatus, Status-Snapshots und Deltas sowie weitergeleitete Eigenschaften aus.
-
Fortsetzen beibehaltener gehosteter Sitzungen mithilfe der AG-UI
threadId. - Machen Sie Workflows verfügbar, die über denselben Endpunkt in Agents konvertiert wurden .
AG-UI Clients entscheiden, wie Text-, Tool-, Genehmigungs- und Zustandsereignisse gerendert werden sollen.
Architecture
Das C#-Hostingpaket fügt einen ASP.NET-Core-Endpunkt um einen gewöhnlichen MAF-Agenten herum hinzu:
AG-UI client -- HTTP POST / SSE --> MapAGUIServer --> AIAgent
MapAGUIServer passt die AG-UI Anforderung an MAF-Nachrichten und Ausführungsoptionen an. Anschließend wird die Streamingantwort des Agents mithilfe des AG-UI .NET SDK in AG-UI Ereignisse konvertiert.
Installation
dotnet add package Microsoft.Agents.AI.Hosting.AGUI.AspNetCore --prerelease
Nächste Schritte
Verwandte Ressourcen
AG-UI im Vergleich zur Direct Agent-Nutzung
Zwar können Sie Agents direkt in Ihrer Anwendung mit den Methoden run und run(..., stream=True) des Agent Framework ausführen, aber die AG-UI bietet zusätzliche Funktionen:
| Funktion | Direkte Agent-Verwendung | Integration von AG-UI |
|---|---|---|
| Deployment | Eingebettet in Anwendung | Remotedienst über HTTP |
| Clientzugriff | Einzelne Anwendung | Mehrere Clients (Web, Mobil) |
| Streaming | Asynchrone Iteration im Prozess | Vom Server gesendete Ereignisse (SSE) |
| Zustandsverwaltung | Von der Anwendung verwaltet | Bidirektionale Synchronisierung auf Protokollebene |
| Threadkontext | Von der Anwendung verwaltet | Protokollverwaltete Thread-IDs |
| Genehmigungsworkflows | Benutzerdefinierte Implementierung | Integrierte Protokollunterstützung |
Übersicht über die Architektur
Die AG-UI Integration verwendet eine saubere, modulare Architektur:
┌─────────────────┐
│ Web Client │
│ (Browser/App) │
└────────┬────────┘
│ HTTP POST + SSE
▼
┌─────────────────────────┐
│ FastAPI Endpoint │
│ (add_agent_framework_ │
│ fastapi_endpoint) │
└────────┬────────────────┘
│
▼
┌─────────────────────────┐
│ AgentFrameworkAgent │
│ (Protocol Wrapper) │
└────────┬────────────────┘
│
▼
┌─────────────────────────┐
│ Orchestrators │
│ (Execution Flow Logic) │
└────────┬────────────────┘
│
▼
┌─────────────────────────┐
│ Agent │
│ (Agent Framework) │
└────────┬────────────────┘
│
▼
┌─────────────────────────┐
│ Chat Client │
│ (Azure OpenAI, etc.) │
└─────────────────────────┘
Wichtige Komponenten
- FastAPI-Endpunkt: HTTP-Endpunkt, der SSE-Streaming verarbeitet, konfigurierbare Keepalive-Kommentare und Anforderungsrouting
- AgentFrameworkAgent: Lightweight Wrapper, der Agent Framework-Agents an AG-UI Protokoll anpasst
- Orchestratoren: Behandeln unterschiedlicher Ausführungsflüsse (Standard, Human-in-the-Loop, Zustandsverwaltung)
- Ereignisbrücke: Konvertiert Agent Framework-Ereignisse in AG-UI Protokollereignisse
- Nachrichtenadapter: Bidirektionale Konvertierung zwischen AG-UI- und Agent Framework-Nachrichtenformaten
- Bestätigungsstrategien: Erweiterbare Strategien für domänenspezifische Bestätigungsmeldungen
Wie das Agent-Framework in AG-UI übersetzt wird
Das Verständnis der Zuordnung von Agent-Framework-Konzepten zu AG-UI hilft Ihnen, effektive Integrationen zu erstellen.
| Agent Framework-Konzept | AG-UI Entsprechung | Description |
|---|---|---|
Agent |
Agent-Endpunkt | Jeder Agent wird zu einem HTTP-Endpunkt |
agent.run() |
HTTP POST-Anforderung | Client sendet Nachrichten über HTTP |
agent.run(..., stream=True) |
Vom Server gesendete Ereignisse | Streaming-Antworten über SSE |
| Agentantwortaktualisierungen | AG-UI-Ereignisse |
TEXT_MESSAGE_CONTENT, TOOL_CALL_START usw. |
Funktionswerkzeuge (@tool) |
Backend-Tools | Ausgeführt auf dem Server, Ergebnisse, die an den Client gestreamt wurden |
| Toolgenehmigungsmodus | Mensch-überwachter Prozess | Genehmigungsanforderungen/Antworten per Protokoll |
| Konversationsverlauf | Threadverwaltung |
threadId bewahrt den Kontext zwischen Anfragen |
Installation
Installieren Sie das AG-UI Integrationspaket:
pip install agent-framework-ag-ui --pre
Dadurch werden sowohl das Kern-Agent-Framework als auch AG-UI Integrationskomponenten installiert.
Nächste Schritte
So beginnen Sie mit AG-UI Integration:
- Erste Schritte: Erstellen Ihres ersten AG-UI Servers und Clients
- Backend-Toolrendering: Funktionswerkzeuge zu Ihren Agenten hinzufügen
- Workflows: Verfügbarmachen von Workflows mit mehreren Agents über AG-UI
- Human-in-the-Loop: Implementieren von Genehmigungsworkflows
- MCP-Apps-Kompatibilität: Verwenden von MCP-Apps mit Ihrem AG-UI-Endpunkt
- Statusverwaltung: Synchronisieren des Zustands zwischen Client und Server
Zusätzliche Ressourcen
- Agent Framework-Dokumentation
- AG-UI Protokolldokumentation
- AG-UI Dojo-App – Beispielanwendung zur Demonstration der Agent Framework-Integration
- CopilotKit MAF-Integration - Verbinden Sie CopilotKit React-Frontends an AG-UI-Backends
- Agent Framework GitHub Repository
Go unterstützt AG-UI über provider/aguiprovider sowohl für Server als auch für Clients.
import "github.com/microsoft/agent-framework-go/provider/aguiprovider"
mux := http.NewServeMux()
mux.Handle("/", aguiprovider.NewJSONHTTPHandler(myAgent, aguiprovider.HandlerConfig{}))
if err := http.ListenAndServe(":8888", mux); err != nil {
log.Fatal(err)
}
Tip
In den AG-UI Go-Beispielen finden Sie vollständige Server- und Clientbeispiele.