Ir al contenido principal

AutoGen: Marcos de Conversación Multi-Agente para IA en Finanzas

· 7 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Después de que Gorilla demostrara que un solo LLM puede aprender a llamar a miles de APIs con precisión, la pregunta natural es: ¿qué sucede cuando se asignan roles distintos a múltiples LLMs y se les permite hablar entre sí? AutoGen (Wu et al., 2023) responde a esa pregunta construyendo un marco para la conversación multi-agente, y leerlo ahora se siente oportuno — la mayoría de los sistemas de IA financiera en producción que veo diseñar involucran al menos tres agentes de forma predeterminada.

El artículo

2026-05-04-autogen-multi-agent-conversation-framework

AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation (Wu, Bansal, Zhang et al., Microsoft Research, 2023) propone un marco donde "agentes conversables" — cada uno respaldado por alguna combinación de un LLM, herramientas e intervención humana — se envían mensajes entre sí hasta que se completa una tarea. El marco introduce dos tipos de agentes integrados: AssistantAgent (impulsado por un LLM) y UserProxyAgent (que puede ejecutar código y transmitir la intervención humana), además de un GroupChatManager que dirige los turnos en conjuntos más grandes.

La idea central es lo que los autores llaman "programación de conversaciones": en lugar de escribir a mano la lógica de orquestación en código, se especifica qué debe hacer cada agente a través de instrucciones del sistema en lenguaje natural y se deja que el paso de mensajes maneje el flujo de control. El artículo demuestra esto a través de la resolución de problemas matemáticos, control de calidad aumentado por recuperación, toma de decisiones en ALFWorld y una aplicación de investigación de operaciones llamada OptiGuide.

Ideas clave

  • Aumento de precisión en la referencia MATH: una configuración de AutoGen con dos agentes (un asistente LLM más un proxy de ejecución de código) alcanza el 69,48% en el conjunto de prueba MATH, en comparación con el 55,18% de GPT-4 utilizado solo — una ganancia de 14 puntos al añadir retroalimentación de ejecución de código.
  • El humano en el bucle es una prioridad: el UserProxyAgent tiene un human_input_mode configurable — ALWAYS, NEVER o TERMINATE — lo que significa que se puede ajustar la supervisión hacia arriba o hacia abajo sin cambiar la lógica del agente.
  • Chat de grupo dinámico: el GroupChatManager selecciona al siguiente interlocutor basándose en el estado de la conversación en lugar de un orden rotativo fijo, lo que permite que los flujos de trabajo se ramifiquen en respuesta a los resultados emergentes.
  • Ganancia de seguridad en OptiGuide: añadir un agente SafeGuard a un flujo de trabajo de optimización de la cadena de suministro mejoró la detección de código no seguro (F1) en 8 puntos porcentuales en GPT-4 y 35 puntos en GPT-3.5, al tiempo que redujo la base de código del usuario de 430 líneas a 100.
  • Recuperación interactiva: en tareas de preguntas y respuestas, el agente asistente podía solicitar contexto adicional emitiendo una señal UPDATE CONTEXT; esto se activó en aproximadamente el 19,4% de las preguntas en Natural Questions, y el F1 general fue del 23,40%.
  • Composibilidad por diseño: cualquier agente de AutoGen es en sí mismo una "herramienta" válida que otro agente puede llamar, por lo que las tuberías jerárquicas se componen sin necesidad de código de unión especial.

Qué se mantiene y qué no

Los resultados de MATH y ALFWorld son sólidos — comparaciones controladas y reproducibles contra líneas de base nombradas con referencias reales. La cifra del 69,48% es significativa porque aísla el beneficio de la retroalimentación de la ejecución de código dentro de un bucle de conversación estructurado.

Lo que es más débil es el análisis de costo y latencia, o más bien su ausencia. Cada turno de GroupChat activa una llamada completa al LLM con el historial de conversación acumulado. Un flujo de trabajo de cuatro agentes con diez rondas significa un mínimo de cuarenta llamadas al LLM, cada una con una ventana de contexto creciente. El artículo nunca informa sobre el costo de tokens o la latencia para ninguna de sus aplicaciones. En una tubería contable real que procesa miles de transacciones, esa omisión no es académica — determina si el enfoque es viable en absoluto.

La metáfora de la programación de conversaciones también es más frágil de lo que parece en las demostraciones. El GroupChatManager selecciona al siguiente interlocutor pidiendo al LLM que elija de una lista de agentes. Esa selección es en sí misma un paso de generación de texto probabilístico, lo que significa que el flujo de control puede fallar de formas sutiles que no generan excepciones. Para un agente de escritura en el libro mayor — donde el orden de las operaciones importa y una llamada de herramienta fuera de lugar podría corromper un asiento contable — la selección no determinista del interlocutor es una responsabilidad real.

Finalmente, las tareas de evaluación son todas de una sola sesión y de corto horizonte. No hay ningún experimento donde los agentes acumulen estado a lo largo de los días, manejen instrucciones contradictorias o necesiten resolver conflictos entre una memoria de agente antigua y un nuevo asiento en el libro mayor. Estos son exactamente los escenarios que surgen en los flujos de trabajo contables reales.

Por qué esto es importante para la IA financiera

El caso de la IA financiera para sistemas multi-agente es sencillo: la conciliación, la contabilización y los informes son preocupaciones naturalmente separadas. Una tubería de Beancount podría tener un LedgerReaderAgent que consulte el libro mayor como solo lectura, un ReconcilerAgent que compare las transacciones con los extractos bancarios, un WriterAgent que proponga nuevos asientos y un ReviewerAgent que los verifique contra las reglas del catálogo de cuentas antes de que se confirme cualquier escritura. El patrón UserProxyAgent de AutoGen es la abstracción adecuada para el WriterAgent — puede ejecutar la escritura real en el libro mayor y devolver el resultado como un mensaje que el ReviewerAgent inspecciona.

El resultado de SafeGuard en OptiGuide es el hallazgo más directamente transferible: añadir un agente de verificación dedicado para detectar acciones inseguras mejoró sustancialmente la detección, y la detección ocurrió dentro del bucle de conversación en lugar de ser una auditoría post-hoc. Esa es exactamente la arquitectura que yo querría para la seguridad de escritura en Beancount — un verificador que bloquee la confirmación (commit), no uno que alerte después del hecho.

El problema de la selección no determinista del interlocutor tiene solución: se puede anular el GroupChatManager con una función de Python determinista que dirija basándose en el contenido del mensaje. Pero hay que saber que se debe hacer eso, y el artículo no lo destaca como una preocupación.

Qué leer a continuación

  • AgentBench: Evaluating LLMs as Agents (Liu et al., arXiv:2308.03688, ICLR 2024) — evalúa los LLMs en ocho entornos de agentes distintos, incluyendo navegación web, codificación y manipulación de bases de datos; la brecha entre los modelos comerciales y los de código abierto es el hallazgo clave e informa directamente qué modelos base usar para las tuberías de agentes financieros.
  • TradingAgents: Multi-Agents LLM Financial Trading Framework (arXiv:2412.20138) — instancia directamente el patrón de AutoGen para los mercados financieros con agentes especializados en análisis, investigación, trading y gestión de riesgos; los resultados del ratio de Sharpe y el drawdown máximo ofrecen las primeras cifras reales de rendimiento para sistemas financieros multi-agente.
  • AGENTLESS: Demystifying LLM-based Software Engineering Agents (Xia et al., arXiv:2407.01514) — argumenta que un enfoque simple y sin agentes de dos fases (localizar y luego reparar) supera a los complejos marcos multi-agente en SWE-bench; un contrapeso útil a la suposición de que más agentes siempre ayudan.