AutoGen: La nueva generación de aplicaciones de modelos de lenguaje
Recursos como AutoGen están a punto de transformar radicalmente lo que son capaces de hacer los grandes modelos de lenguaje.
Autogen es uno de los avances más emocionantes en la IA recientes.
Diseñar, implementar y optimizar un flujo de trabajo que pueda aprovechar todo el potencial de los grandes modelos lingüísticos (LLM) requiere mucho esfuerzo y experiencia. La automatización de estos flujos de trabajo tiene un enorme valor. A medida que los desarrolladores empiecen a crear aplicaciones basadas en LLM cada vez más complejas, los flujos de trabajo se volverán inevitablemente más intrincados. El espacio de diseño potencial para dichos flujos de trabajo podría ser vasto y complejo, lo que aumenta el reto de orquestar un flujo de trabajo óptimo con un rendimiento robusto.
AutoGen es un entorno para simplificar la orquestación, optimización y automatización de flujos de trabajo LLM. Ofrece agentes personalizables y conversables que aprovechan las capacidades más potentes de los LLM más avanzados, como GPT-4, al tiempo que abordan sus limitaciones mediante la integración con humanos y herramientas y la celebración de conversaciones entre varios agentes a través del chat automatizado.
Con AutoGen, construir un complejo sistema de conversación multiagente se reduce a:
- Definir un conjunto de agentes con capacidades y roles especializados.
- Definir el comportamiento de interacción entre agentes, es decir, qué responder cuando un agente recibe mensajes de otro agente.
Ambos pasos son intuitivos y modulares, lo que hace que estos agentes sean reutilizables. Por ejemplo, para construir un sistema de respuesta a preguntas basado en código, se pueden diseñar los agentes y sus interacciones como en el siguiente diagrama.
- Se ha demostrado que un sistema de este tipo reduce el tiempo de respuesta de los agentes.
- Se ha demostrado que un sistema de este tipo reduce el número de interacciones manuales necesarias de 3 a 10 veces en aplicaciones como la optimización de la cadena de suministro.
El uso de AutoGen reduce en más de 4 veces el esfuerzo de codificación.
Agentes capaces, conversables y personalizables: integración de LLM, humanos y herramientas
Los agentes AutoGen tienen capacidades habilitadas por LLMs, humanos, herramientas o una mezcla de estos elementos. Por ejemplo:
- Uno puede configurar fácilmente el uso y los roles de los LLMs en un agente (resolución automatizada de tareas complejas mediante chat en grupo) con características avanzadas de inferencia (por ejemplo, optimizar el rendimiento con el ajuste de parámetros de inferencia).
- La inteligencia y supervisión humanas pueden lograrse a través de un agente proxy con diferentes niveles y patrones de implicación (por ejemplo, resolución automatizada de tareas con GPT-4 + múltiples usuarios humanos).
- Los agentes disponen de soporte nativo para la ejecución de código/función basada en LLM (por ejemplo, resolución automatizada de tareas con generación, ejecución y depuración de código, uso de herramientas proporcionadas como funciones).
Una forma sencilla de utilizar los agentes incorporados de AutoGen es invocar el chat automatizado entre un agente asistente y un agente proxy de usuario. Como ejemplo, se puede construir fácilmente una versión mejorada de ChatGPT + Code Interpreter + plugins, con un grado de automatización personalizable, utilizable en un entorno personalizado e integrable en un sistema mayor. También es fácil ampliar su comportamiento para soportar diversos escenarios de aplicación, como añadir personalización y adaptabilidad basadas en interacciones pasadas (por ejemplo, aprendizaje continuo automatizado(, enseñar a los agentes nuevas habilidades).
El diseño centrado en la conversación del agente tiene numerosas ventajas, entre ellas que:
- Maneja con naturalidad la ambigüedad, la retroalimentación, el progreso y la colaboración.
- Permite la realización de tareas de codificación eficaces, como el uso de herramientas para la resolución de problemas.
- Permite a los usuarios darse de alta o de baja sin problemas a través de un agente en el chat.
- Logra un objetivo colectivo con la cooperación de múltiples especialistas.
AutoGen admite el chat automatizado y diversos patrones de comunicación, lo que facilita orquestar un flujo de trabajo complejo y dinámico y experimentar con la versatilidad. El siguiente diagrama ilustra un nuevo juego, el ajedrez conversacional, habilitado por AutoGen.
El siguiente diagrama ilustra cómo AutoGen admite chats de grupo entre varios agentes utilizando otro agente especial llamado «GroupChatManager»:
¿Cómo empezar con Autogen?
AutoGen está disponible gratuitamente como paquete Python aquí.
AutoGen es un proyecto open source, impulsado por la comunidad y en desarrollo activo (como un spinoff de FLAML, una biblioteca para el aprendizaje automático de máquinas), que fomenta las contribuciones de individuos de todos los orígenes. AutoGen pretende ofrecer un marco eficaz y fácil de usar para que los desarrolladores creen aplicaciones de nueva generación, y ya demuestra oportunidades prometedoras para crear aplicaciones creativas y ofrecer un amplio espacio para la innovación.