Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
AG-UI es un protocolo que permite crear aplicaciones de agente de IA basadas en web con características avanzadas, como streaming en tiempo real, administración de estado y componentes de interfaz de usuario interactivos. La integración de Agent Framework AG-UI proporciona conectividad sin problemas entre los agentes y los clientes web.
¿Qué es AG-UI?
AG-UI es un protocolo estandarizado para crear interfaces de agente de IA que proporciona:
- Hospedaje de agente remoto: implementación de agentes de IA como servicios web accesibles por varios clientes
- Streaming en tiempo real: transmisión de respuestas del agente mediante eventos enviados por el servidor (EES) para retroalimentación inmediata
- Comunicación estandarizada: formato de mensaje coherente para interacciones de agente confiables
- Administración de sesiones: mantener el contexto de conversación en varias solicitudes
- Características avanzadas: aprobaciones con intervención humana, sincronización de estado y renderizado personalizado de la interfaz de usuario
Cuándo usar AG-UI
Considere la posibilidad de usar AG-UI cuando necesite:
- Creación de aplicaciones web o móviles que interactúan con agentes de inteligencia artificial
- Implementación de agentes como servicios accesibles por varios usuarios simultáneos
- Emitir respuestas del agente en tiempo real para proporcionar retroalimentación inmediata al usuario.
- Implementación de flujos de trabajo de aprobación en los que los usuarios confirman acciones antes de la ejecución
- Sincronizar el estado entre el cliente y el servidor para experiencias interactivas
- Representación de componentes de interfaz de usuario personalizados basados en llamadas a herramientas de agente
Características compatibles
La integración de Agent Framework AG-UI admite todas las 7 características del protocolo AG-UI:
- Chat de agente: chat de streaming básico con llamadas automáticas a herramientas
- Representación de herramientas de back-end: herramientas ejecutadas en back-end con resultados transmitidos al cliente
- Human in the Loop: Solicitudes de aprobación de funcionalidades para confirmar por el usuario
- Interfaz generativa de usuario agente: herramientas asíncronas para operaciones de larga duración con actualizaciones sobre el progreso
- Interfaz de usuario generativa basada en herramientas: componentes de interfaz de usuario personalizados representados en función de las llamadas a herramientas
- Estado compartido: sincronización de estado bidireccional entre el cliente y el servidor
- Actualizaciones de estado predictivo: argumentos de la herramienta de transmisión como actualizaciones de estado optimista
Compilación de interfaces de usuario del agente con CopilotKit
CopilotKit proporciona componentes enriquecidos de la interfaz de usuario para crear interfaces de usuario de agente basadas en el protocolo estándar AG-UI. CopilotKit admite interfaces de chat en streaming, llamadas de front-end y back-end, interacciones humanas en el bucle, interfaz de usuario generativa, estado compartido y mucho más. Puede ver un ejemplo de los distintos escenarios de interfaz de usuario del agente compatibles con CopilotKit en la aplicación de ejemplo AG-UI Dojo .
CopilotKit le ayuda a centrarse en las funcionalidades del agente al tiempo que ofrece una experiencia de usuario pulida sin reinventar la rueda. Para obtener más información sobre cómo empezar a trabajar con Microsoft Agent Framework y CopilotKit, consulte la documentación de integración de Microsoft Agent Framework para CopilotKit .
AG-UI frente al uso del agente directo
Aunque puede ejecutar agentes directamente en su aplicación utilizando los métodos Run y RunStreamingAsync del Marco de Agente, AG-UI proporciona capacidades adicionales.
| Característica | Uso del agente directo | integración de AG-UI |
|---|---|---|
| Despliegue | Incrustado en la aplicación | Servicio remoto a través de HTTP |
| Acceso de cliente | Aplicación única | Varios clientes (web, móviles) |
| Transmisión en línea | Iteración asincrónica en proceso | Server-Sent Eventos (SSE) |
| Administración de estados | Administrado por la aplicación | Instantáneas de estado de nivel de protocolo |
| Contexto de sesión | Administrado por la aplicación | Identificadores de sesión administrados por protocolo |
| Flujos de trabajo de aprobación | Implementación personalizada | Patrón de middleware integrado |
Introducción a la arquitectura
La integración de AG-UI usa ASP.NET Core y sigue una arquitectura limpia basada en middleware:
┌─────────────────┐
│ Web Client │
│ (Browser/App) │
└────────┬────────┘
│ HTTP POST + SSE
▼
┌─────────────────────────┐
│ ASP.NET Core │
│ MapAGUI("/", agent) │
└────────┬────────────────┘
│
▼
┌─────────────────────────┐
│ AIAgent │
│ (with Middleware) │
└────────┬────────────────┘
│
▼
┌─────────────────────────┐
│ IChatClient │
│ (Azure OpenAI, etc.) │
└─────────────────────────┘
Componentes clave
-
ASP.NET Core Endpoint:
MapAGUIel método de extensión maneja las solicitudes HTTP y la transmisión SSE. -
AIAgent: agente de Agent Framework creado a partir de
IChatCliento implementación personalizada - Pipeline de middleware: middleware opcional para aprobaciones, administración de estado y lógica personalizada
- Adaptador de Protocolo: convierte entre tipos de framework de agente y eventos de protocolo de AG-UI
- Cliente de chat: Microsoft.Extensions.AI cliente de chat (Azure OpenAI, OpenAI, Ollama, etc.)
Cómo se traduce Agent Framework en AG-UI
Comprender cómo se asignan los conceptos de Agent Framework a AG-UI le ayuda a crear integraciones eficaces:
| Concepto del marco de trabajo del agente | AG-UI equivalente | Description |
|---|---|---|
AIAgent |
Punto de conexión del agente | Cada agente se convierte en un punto de conexión HTTP. |
agent.Run() |
Solicitud HTTP POST | El cliente envía mensajes a través de HTTP |
agent.RunStreamingAsync() |
Eventos enviados por el servidor | Streaming de respuestas a través de SSE |
AgentResponseUpdate |
eventos de AG-UI | Convertido automáticamente en eventos de protocolo |
AIFunctionFactory.Create() |
Herramientas de back-end | Ejecución en el servidor, resultados transmitidos en secuencias |
ApprovalRequiredAIFunction |
Humano en el Bucle | El middleware se convierte en protocolo de aprobación |
AgentSession |
Administración de sesiones |
ConversationId mantiene el contexto |
ChatResponseFormat.ForJsonSchema<T>() |
Instantáneas de estado | La salida estructurada se convierte en eventos de estado |
Installation
La integración de AG-UI se incluye en el paquete de hospedaje ASP.NET Core:
dotnet add package Microsoft.Agents.AI.Hosting.AGUI.AspNetCore
Este paquete incluye todas las dependencias necesarias para AG-UI integración, incluido Microsoft.Extensions.AI.
Pasos siguientes
Para empezar a trabajar con la integración de AG-UI:
- Introducción: Compilación del primer servidor y cliente de AG-UI
- Representación de herramientas de back-end: agregar herramientas de función a los agentes
Recursos adicionales
AG-UI frente al uso del agente directo
Aunque puede ejecutar agentes directamente en su aplicación utilizando los métodos run y run(..., stream=True) del Marco de Agente, AG-UI proporciona capacidades adicionales.
| Característica | Uso del agente directo | integración de AG-UI |
|---|---|---|
| Despliegue | Incrustado en la aplicación | Servicio remoto a través de HTTP |
| Acceso de cliente | Aplicación única | Varios clientes (web, móviles) |
| Transmisión en línea | Iteración asincrónica en proceso | Server-Sent Eventos (SSE) |
| Administración de estados | Administrado por la aplicación | Sincronización de nivel de protocolo bidireccional |
| Contexto de hilo | Administrado por la aplicación | Identificadores de subprocesos administrados mediante protocolo |
| Flujos de trabajo de aprobación | Implementación personalizada | Compatibilidad con protocolos integrados |
Introducción a la arquitectura
La integración de AG-UI usa una arquitectura modular limpia:
┌─────────────────┐
│ 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.) │
└─────────────────────────┘
Componentes clave
- Punto de conexión de FastAPI: punto de conexión HTTP que controla el enrutamiento de solicitudes y streaming de SSE
- AgentFrameworkAgent: contenedor ligero que adapta los agentes de Agent Framework al protocolo AG-UI
- Orquestadores: manejan diferentes flujos de ejecución (predeterminado, con intervención humana, gestión de estado)
- Puente de Eventos: convierte eventos de Agent Framework en eventos de protocolo de AG-UI
- Adaptadores de Mensajes: conversión bidireccional entre AG-UI y formatos de mensaje de Agent Framework
- Estrategias de confirmación: estrategias extensibles para mensajes de confirmación específicos del dominio
Cómo se traduce Agent Framework en AG-UI
Comprender cómo se asignan los conceptos de Agent Framework a AG-UI le ayuda a crear integraciones eficaces:
| Concepto del marco de trabajo del agente | AG-UI equivalente | Description |
|---|---|---|
Agent |
Punto de conexión del agente | Cada agente se convierte en un punto de conexión HTTP. |
agent.run() |
Solicitud HTTP POST | El cliente envía mensajes a través de HTTP |
agent.run(..., stream=True) |
Eventos enviados por el servidor | Streaming de respuestas a través de SSE |
| Actualizaciones de respuesta del agente | eventos de AG-UI |
TEXT_MESSAGE_CONTENT, TOOL_CALL_START, etc. |
Herramientas de funciones (@tool) |
Herramientas de back-end | Ejecutados en el servidor, los resultados son enviados al cliente |
| Modo de aprobación de herramientas | Humano en el Bucle | Solicitudes o respuestas de aprobación a través del protocolo |
| Historial de conversaciones | Administración de subprocesos |
threadId mantiene el contexto entre las solicitudes. |
Installation
Instale el paquete de integración de AG-UI:
pip install agent-framework-ag-ui --pre
Esto instala tanto el marco de trabajo del agente principal como los componentes de integración de AG-UI.
Pasos siguientes
Para empezar a trabajar con la integración de AG-UI:
- Introducción: Compilación del primer servidor y cliente de AG-UI
- Representación de herramientas de back-end: agregar herramientas de función a los agentes
Recursos adicionales
- Documentación de Agent Framework
- Documentación del protocoloAG-UI
- AG-UI Aplicación Dojo : aplicación de ejemplo que muestra la integración de Agent Framework
- Repositorio de GitHub de Agent Framework