Megosztás:


AG-UI Integráció az Ügynök-keretrendszerrel

Az AG-UI egy protokoll, amellyel webes AI-ügynökalkalmazásokat hozhat létre olyan speciális funkciókkal, mint a valós idejű streamelés, az állapotkezelés és az interaktív felhasználói felületi összetevők. Az Ügynök-keretrendszer AG-UI integrációja zökkenőmentes kapcsolatot biztosít az ügynökök és a webügyfelek között.

Mi az AG-UI?

AG-UI egy szabványosított protokoll az AI-ügynökök interfészeinek létrehozásához, amelyek a következőt biztosítják:

  • Távoli ügynök üzemeltetése: AI-ügynökök üzembe helyezése több ügyfél által elérhető webszolgáltatásként
  • Valós idejű streamelés: Ügynökválaszok streamelése Server-Sent események (SSE) használatával azonnali visszajelzés céljából
  • Szabványos kommunikáció: Konzisztens üzenetformátum megbízható ügynök-interakciókhoz
  • Munkamenet-kezelés: Több kérés beszélgetési környezetének karbantartása
  • Speciális funkciók: Emberi közreműködéssel történő jóváhagyások, állapotszinkronizálás és egyedi felhasználói felület megjelenítése

Mikor érdemes használni a AG-UI

A következő esetekben érdemes AG-UI használnia:

  • Az AI-ügynökökkel kommunikáló webes vagy mobilalkalmazások létrehozása
  • Ügynökök üzembe helyezése több egyidejű felhasználó által elérhető szolgáltatásként
  • Az ügynök válaszainak valós idejű streamelése azonnali felhasználói visszajelzések küldéséhez
  • Jóváhagyási munkafolyamatok implementálása, amelyekben a felhasználók végrehajtás előtt megerősítik a műveleteket
  • Állapot szinkronizálása az ügyfél és a kiszolgáló között az interaktív élmény érdekében
  • Egyéni felhasználói felületi összetevők renderelése ügynökeszköz-hívások alapján

Támogatott szolgáltatások

Az Agent Framework AG-UI integrációja mind a 7 AG-UI protokollfunkciót támogatja:

  1. Ügynöki csevegés: Egyszerű streamelési csevegés automatikus eszközhívással
  2. Háttéreszköz renderelése: A háttérrendszeren végrehajtott eszközök az ügyfélnek streamelt eredményekkel
  3. Human in the Loop: Függvény-jóváhagyási kérések a felhasználó megerősítéséhez
  4. Agentic Generative UI: Aszinkron eszközök hosszú ideig tartó műveletekhez előrehaladási frissítésekkel
  5. Eszközalapú Generatív felhasználói felület: Eszközhívások alapján renderelt egyéni felhasználói felületi összetevők
  6. Megosztott állapot: Kétirányú állapot szinkronizálása az ügyfél és a kiszolgáló között
  7. Prediktív állapotfrissítések: Az eszköz argumentumainak streamelése optimista állapotfrissítésként

Ügynök felhasználói felületének létrehozása a CopilotKittel

A CopilotKit gazdag felhasználói felületi összetevőket biztosít az ügynök felhasználói felületeinek létrehozásához a standard AG-UI protokoll alapján. A CopilotKit támogatja a streamelt csevegőfelületeket, a frontend & háttéreszköz-hívásokat, az emberi beavatkozásokat, a generatív felhasználói felületet, a megosztott állapotot és még sok mást. AAG-UI Dojo mintaalkalmazásban a CopilotKit által támogatott különböző ügynök felhasználói felületi forgatókönyvekre láthat példákat.

A CopilotKit segítségével az ügynök képességeire összpontosíthat, miközben csiszolt felhasználói élményt nyújt anélkül, hogy újra feltalálja a kereket. A Microsoft Agent Framework és a CopilotKit használatának első lépéseiről a Microsoft Agent Framework copilotkit dokumentációjában olvashat bővebben.

AG-UI és közvetlen ügynökhasználat

Bár közvetlenül az alkalmazásban futtathat ügynököket az Agent Framework Run és RunStreamingAsync a metódusok használatával, AG-UI további képességeket biztosít:

Tulajdonság Közvetlen ügynök használata AG-UI integráció
Telepítés Beágyazás az alkalmazásba Távoli szolgáltatás HTTP-en keresztül
Ügyfélhozzáférés Egyetlen alkalmazás Több ügyfél (web, mobil)
Online közvetítés Folyamatban lévő aszinkron iteráció Server-Sent események (SSE)
Állapotkezelés Alkalmazás által felügyelt Protokollszintű állapot pillanatképei
Munkamenet-környezet Alkalmazás által felügyelt Protokoll által felügyelt munkamenet-azonosítók
Jóváhagyási munkafolyamatok Egyéni megvalósítás Beépített köztes szoftverminta

Tervezési áttekintés

A AG-UI integráció a ASP.NET Core-t használja, és tiszta köztesszoftver-alapú architektúrát követ:

┌─────────────────┐
│  Web Client     │
│  (Browser/App)  │
└────────┬────────┘
         │ HTTP POST + SSE
         ▼
┌─────────────────────────┐
│  ASP.NET Core           │
│  MapAGUI("/", agent)    │
└────────┬────────────────┘
         │
         ▼
┌─────────────────────────┐
│  AIAgent                │
│  (with Middleware)      │
└────────┬────────────────┘
         │
         ▼
┌─────────────────────────┐
│  IChatClient            │
│  (Azure OpenAI, etc.)   │
└─────────────────────────┘

Kulcsösszetevők

  • ASP.NET core endpoint: MapAGUI extension metódus kezeli a HTTP-kéréseket és az SSE-streamelést
  • AIAgent: Az ügynök-keretrendszer által létrehozott ügynök IChatClient vagy egyéni megvalósítás alapján
  • Köztes szoftverfolyamat: Választható köztes szoftver jóváhagyásokhoz, állapotkezeléshez és egyéni logikához
  • Protokolladapter: Átalakít a framework Agent típusai és AG-UI protokoll események között
  • Csevegési ügyfél: Microsoft.Extensions.AI csevegőügyfél (Azure OpenAI, OpenAI, Ollama stb.)

Hogyan valósul meg az Agent Framework az AG-UI-ban

Agent Framework fogalmainak AG-UI-ra való leképezése segít a hatékony integrációk megvalósításában.

Ügynök-keretrendszer fogalma AG-UI egyenértékű Description
AIAgent Ügynöki végpont Minden ügynök HTTP-végponttá válik
agent.Run() HTTP POST-kérelem Az ügyfél HTTP-en keresztül küld üzeneteket
agent.RunStreamingAsync() Kiszolgáló által küldött események Válaszok streamelése SSE-en keresztül
AgentResponseUpdate AG-UI események Automatikusan protokolleseményekké alakítva
AIFunctionFactory.Create() Háttéreszközök A kiszolgálón végrehajtva, az eredmények streamelve
ApprovalRequiredAIFunction Ember a folyamatban A köztes szoftver jóváhagyási protokolllá alakul
AgentSession Munkamenet-kezelés ConversationId fenntartja a környezetet
ChatResponseFormat.ForJsonSchema<T>() Állapot-pillanatképek A strukturált kimenet állapot eseménnyé válik

Installation

A AG-UI integráció a ASP.NET Core-csomag része:

dotnet add package Microsoft.Agents.AI.Hosting.AGUI.AspNetCore

Ez a csomag tartalmazza AG-UI integrációhoz szükséges összes függőséget, beleértve a Microsoft.Extensions.AI.

Következő lépések

AG-UI integráció első lépései:

  1. Első lépések: Az első AG-UI kiszolgáló és ügyfél létrehozása
  2. Háttéreszköz renderelése: Függvényeszközök hozzáadása az ügynökökhöz

További források

AG-UI és közvetlen ügynökhasználat

Bár közvetlenül az alkalmazásban futtathat ügynököket az Agent Framework run és run(..., stream=True) a metódusok használatával, AG-UI további képességeket biztosít:

Tulajdonság Közvetlen ügynök használata AG-UI integráció
Telepítés Beágyazás az alkalmazásba Távoli szolgáltatás HTTP-en keresztül
Ügyfélhozzáférés Egyetlen alkalmazás Több ügyfél (web, mobil)
Online közvetítés Folyamatban lévő aszinkron iteráció Server-Sent események (SSE)
Állapotkezelés Alkalmazás által felügyelt Kétirányú protokollszintű szinkronizálás
Szálkörnyezet Alkalmazás által felügyelt Protokoll által felügyelt szálazonosítók
Jóváhagyási munkafolyamatok Egyéni megvalósítás Beépített protokolltámogatás

Tervezési áttekintés

A AG-UI integráció tiszta, moduláris architektúrát használ:

┌─────────────────┐
│  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.)   │
└─────────────────────────┘

Kulcsösszetevők

  • FastAPI-végpont: AZ SSE-streamelést és a kérések útválasztását kezelő HTTP-végpont
  • AgentFrameworkAgent: Egyszerűsített burkoló, amely az Agent Framework-ügynököket AG-UI protokollhoz igazítja
  • Vezénylők: Különböző végrehajtási folyamatok kezelése (alapértelmezett, human-in-the-loop, állapotkezelés)
  • Event Bridge: Átalakítja az Ügynök-keretrendszer eseményeit AG-UI protokolleseményekké
  • Üzenetadapterek: Kétirányú átalakítás a AG-UI és az Agent Framework üzenetformátumai között
  • Megerősítő stratégiák: Bővíthető stratégiák tartományspecifikus megerősítési üzenetekhez

Hogyan valósul meg az Agent Framework az AG-UI-ban

Agent Framework fogalmainak AG-UI-ra való leképezése segít a hatékony integrációk megvalósításában.

Ügynök-keretrendszer fogalma AG-UI egyenértékű Description
Agent Ügynök végpontja Minden ügynök HTTP-végponttá válik
agent.run() HTTP POST-kérelem Az ügyfél HTTP-en keresztül küld üzeneteket
agent.run(..., stream=True) Kiszolgáló által küldött események Válaszok streamelése SSE-en keresztül
Ügynök válaszfrissítései AG-UI események TEXT_MESSAGE_CONTENT, stb TOOL_CALL_START.
Függvényeszközök (@tool) Háttéreszközök A kiszolgálón hajtják végre, az eredmények pedig az ügyfélhez streamelődnek
Eszközjóváhagyási mód Ember a folyamatban Jóváhagyási kérelmek/válaszok protokollon keresztül
Beszélgetési előzmények Szálkezelés threadId fenntartja a környezetet a kérések között

Installation

Telepítse a AG-UI integrációs csomagot:

pip install agent-framework-ag-ui --pre

Ez az alapvető ügynök-keretrendszert és AG-UI integrációs összetevőket is telepíti.

Következő lépések

AG-UI integráció első lépései:

  1. Első lépések: Az első AG-UI kiszolgáló és ügyfél létrehozása
  2. Háttéreszköz renderelése: Függvényeszközök hozzáadása az ügynökökhöz

További források