Entender la orquestación de agentes
El marco de orquestación de agentes del SDK de Microsoft Agent Framework permite diseñar, administrar y escalar flujos de trabajo complejos de varios agentes sin tener que controlar manualmente los detalles de la coordinación del agente. En lugar de confiar en un solo agente para administrar todos los aspectos de una tarea, puede combinar varios agentes especializados. Cada agente con un rol único o área de experiencia puede colaborar para crear sistemas más sólidos, adaptables y capaces de resolver problemas reales de forma colaborativa.
Mediante la orquestación de agentes juntos, puede realizar tareas que serían demasiado complejas para un solo agente, desde la ejecución de análisis paralelos hasta la creación de canalizaciones de procesamiento de varias fases, para administrar entregas dinámicas y controladas por contexto entre expertos.
¿Por qué importa la orquestación multiagente?
Los sistemas de agente único suelen estar limitados en el ámbito, restringidos por un conjunto de instrucciones o una solicitud de modelo único. La orquestación multiagente aborda esta limitación al permitirle:
- Asigne aptitudes, responsabilidades o perspectivas distintas a cada agente.
- Combine salidas de varios agentes para mejorar la toma de decisiones y la precisión.
- Coordinar los pasos de un flujo de trabajo de modo que el trabajo de cada agente se base en el anterior.
- Enrutar dinámicamente el control entre agentes en función del contexto o las reglas.
Este enfoque abre la puerta a soluciones más flexibles, eficientes y escalables, especialmente para aplicaciones reales que requieren colaboración, especialización o redundancia.
Descripción de los flujos de trabajo en Microsoft Agent Framework
Microsoft Agent Framework proporciona flujos de trabajo: secuencias estructuradas de pasos que se usan para completar una tarea. Estos flujos de trabajo pueden incluir uno o varios agentes de inteligencia artificial junto con otros componentes para automatizar operaciones complejas.
Los flujos de trabajo proporcionan a los desarrolladores control sobre cómo se ejecutan las tareas, habilitan la orquestación de varios agentes y admiten puntos de control para guardar y reanudar los estados de flujo de trabajo.
Componentes principales de un flujo de trabajo
Ejecutores
Los ejecutores son los principales trabajadores de un flujo de trabajo. Reciben mensajes de entrada, realizan acciones específicas y generan salidas que mueven el flujo de trabajo hacia completar su objetivo.
Los ejecutores pueden representar agentes de IA o componentes lógicos personalizados .
Ejemplo: Un ejecutor podría analizar una solicitud de viaje, mientras que otro reserva el vuelo o el hotel en función de los resultados.
Bordes
Los bordes definen cómo fluyen los mensajes entre ejecutores, determinando la lógica y el orden de ejecución. Microsoft Agent Framework admite varios tipos de bordes:
Conexiones directas: Conectar un ejecutor directamente a otro en secuencia.
Ejemplo: Después de que un agente de IA recopile la entrada del usuario, el siguiente ejecutor procesa la reserva.*Bordes condicionales: Se desencadenan solo cuando se cumplen ciertas condiciones.
Ejemplo: Si las habitaciones del hotel no están disponibles, el flujo de trabajo se bifurca en un ejecutor que sugiere fechas o ubicaciones alternativas.*Switch-Case Edges: ruta los mensajes a diferentes ejecutores según condiciones predefinidas.
Ejemplo: Es posible que los clientes vip se enruten a un ejecutor de servicio Premium, mientras que otros siguen el proceso estándar.*Fan-Out Edges: Envíe un único mensaje a varios ejecutores simultáneamente.
Ejemplo: Una solicitud podría enviarse a varios agentes: uno verificará vuelos y otro verificará hoteles.Fan-In Edges: Combine varios mensajes de diferentes ejecutores en uno para un paso final.
Ejemplo: Después de recopilar los resultados del hotel y del vuelo, un ejecutor de resumen los compila en un único itinerario de viaje.*
Eventos
Microsoft Agent Framework incluye eventos integrados para mejorar la observabilidad y la depuración durante la ejecución del flujo de trabajo. Estos eventos ayudan a los desarrolladores a supervisar el progreso, realizar un seguimiento de los errores y analizar el rendimiento del sistema.
| Nombre de evento | Descripción |
|---|---|
| WorkflowStartedEvent | Se desencadena cuando comienza la ejecución del flujo de trabajo. |
| WorkflowOutputEvent | Se genera cuando el flujo de trabajo genera una salida. |
| WorkflowErrorEvent | Se produce cuando se encuentra un error. |
| ExecutorInvokeEvent | Se desencadena cuando un ejecutor comienza a procesar una tarea. |
| ExecutorCompleteEvent | Se desencadena cuando un ejecutor finaliza su trabajo. |
| RequestInfoEvent | Se registra cuando se emite una solicitud externa. |
Los flujos de trabajo de Microsoft Agent Framework permiten a los desarrolladores diseñar, supervisar y controlar cómo interactúan varios agentes de IA y componentes lógicos para completar tareas complejas. Aportan estructura, flexibilidad y transparencia a las aplicaciones controladas por agentes.
Patrones de orquestación admitidos
Microsoft Agent Framework proporciona varios patrones de orquestación directamente en el SDK, cada uno de los cuales ofrece un enfoque diferente para coordinar agentes. Estos patrones están diseñados para ser independientes de la tecnología para que pueda adaptarlos a su propio dominio e integrarlos en sus sistemas existentes.
- Orquestación simultánea: difunda la misma tarea a varios agentes a la vez y recopile sus resultados de forma independiente. Resulta útil para el análisis paralelo, subtareas independientes o la toma de decisiones de conjunto.
- Orquestación secuencial : pase la salida de un agente al siguiente en un orden fijo. Ideal para flujos de trabajo, canalizaciones y refinamiento progresivo paso a paso.
- Orquestación de transferencia - Transfiere dinámicamente el control entre agentes en función del contexto o las reglas. Ideal para la escalación, reserva y enrutamiento experto donde funciona un agente a la vez.
- Orquestación de chat en grupo: coordina una conversación compartida entre varios agentes (y, opcionalmente, un humano), administrado por un administrador de chat que elige quién habla a continuación. Ideal para la lluvia de ideas, la resolución de problemas de colaboración y la creación de consenso.
- Orquestación magnética: un enfoque dirigido por el administrador que planea, delega y se adapta a través de agentes especializados. Se adapta a problemas complejos y abiertos en los que evoluciona el camino de la solución.
Un flujo de trabajo de orquestación unificada
Independientemente del patrón de orquestación que elija, el SDK de Microsoft Agent Framework proporciona una interfaz coherente y fácil de desarrollar para compilarlos y ejecutarlos. El flujo típico tiene este aspecto:
- Defina los agentes y describa sus funcionalidades.
- Seleccione y cree un patrón de orquestación ; opcionalmente, agregue un agente de administrador si es necesario.
- Opcionalmente puede configurar callbacks o transformaciones para el manejo personalizado de entrada y salida.
- Inicie un entorno de ejecución para administrar la ejecución.
- Invoque la orquestación con la tarea.
- Recuperar resultados de una manera asincrónica y sin bloqueo.
Dado que todos los patrones comparten la misma interfaz principal, puede experimentar fácilmente con diferentes estrategias de orquestación sin volver a escribir lógica del agente ni aprender nuevas API. El SDK abstrae la complejidad de la comunicación del agente, la coordinación y la agregación de resultados para que pueda centrarse en el diseño de flujos de trabajo que proporcionan resultados.
La orquestación multiagente en el SDK de Microsoft Agent Framework proporciona una manera flexible y escalable de crear sistemas inteligentes que combinan los puntos fuertes de varios agentes especializados. Con patrones de orquestación integrados, un modelo de desarrollo unificado y características en tiempo de ejecución para administrar la ejecución, puede crear rápidamente prototipos, refinar e implementar flujos de trabajo de inteligencia artificial colaborativa. El marco proporciona las herramientas para convertir varios agentes en un equipo de resolución de problemas cohesivo, tanto si está ejecutando procesos paralelos, flujos de trabajo secuenciales o conversaciones dinámicas.