La IA moderna comenzó con los Grandes Modelos de Lenguaje (LLM), seguidos de la llamada a funciones para obtener resultados estructurados, luego el desarrollo de agentes y herramientas, que condujo a la creación de servidores MCP. Actualmente, la atención se centra en los sistemas multiagente. Las empresas buscan soluciones para construir sistemas automatizados inteligentes utilizando diversas herramientas, entre las que AutoGen es la más popular.
En este tutorial, exploraremos AutoGen, su ecosistema, sus diversos casos de uso y cómo utilizar cada componente dentro de ese ecosistema. Es importante señalar que AutoGen no es sólo una herramienta típica de orquestación de modelos lingüísticos como LangChain; ofrece mucho más que eso.
Si eres nuevo en la IA, haz el curso Fundamentos de la IA antes de seguir con este tutorial. También puedes aprender sobre IA Agenética en otro artículo.
¿Qué es AutoGen?
AutoGen es un marco de trabajo de código abierto diseñado para crear aplicaciones de IA multiagente que pueden funcionar de forma semiautónoma y totalmente autónoma. Proporciona a los programadores herramientas para construir sistemas en los que varios agentes de IA puedan comunicarse, cooperar y realizar tareas juntos.
AutoGen admite una amplia gama de casos de uso, incluidos los flujos de trabajo automatizados, la colaboración multiagente y la resolución dinámica de tareas. Permite a los programadores crear sistemas en los que los agentes pueden interactuar mediante lenguaje natural, ejecutar código, recuperar información y adaptarse a flujos de trabajo complejos.
El ecosistema AutoGen se divide en cuatro componentes principales:
AutoGen Studio: Una interfaz gráfica sin código para construir y probar flujos de trabajo multiagente.
AutoGent AgentChat: Una API simplificada para construir aplicaciones conversacionales mono y multiagente.
Núcleo AutoGen: La API fundamental para construir sistemas de IA multiagente escalables.
Extensión AutoGen: Una biblioteca de extensiones propias y de terceros que amplían las capacidades del marco.
Simplifica la orquestación y optimización de flujos de trabajo LLM complejos.
Mejorar el rendimiento de los LLM, abordando al mismo tiempo sus limitaciones.
Permitir la creación sin fisuras de sistemas multiagente que integren LLM, herramientas y aportaciones humanas.
Su extensibilidad y modularidad la convierten en una potente herramienta para programadores de todos los sectores, desde las finanzas y la sanidad hasta la educación y la robótica.
En esta sección, exploraremos los cuatro componentes principales del ecosistema AutoGen instalándolos y ejecutándolos localmente.
1. AutoGen Studio
AutoGen Studio es una interfaz de bajo código diseñada para ayudarte a crear rápidamente prototipos de agentes de IA. Proporciona una interfaz de arrastrar y soltar fácil de usar para crear sistemas multiagente y probarlos en tiempo real.
1. Para instalar el Estudio, utiliza el comando pip.
2. Una vez instalado, puedes iniciar la interfaz de usuario de AutoGen Studio especificando el puerto y el directorio de la aplicación donde se almacenarán todos los agentes y plantillas.
Después de ejecutar el comando, deberías ver la siguiente salida en tu terminal:
INFO [alembic.runtime.migration] Context impl SQLiteImpl.
INFO [alembic.runtime.migration] Will assume non-transactional DDL.
2025-05-09 15:15:22.825 | INFO | AutoGenstudio.web.app:lifespan:39 - Application startup complete. Navigate to http://127.0.0.1:8080Con la tecnología de
3. Navega a http://127.0.0.1:8080 en tu navegador para acceder al panel de AutoGen Studio.
Una vez que la aplicación esté en marcha, serás recibido con una interfaz de usuario limpia e intuitiva.
AutoGen Studio proporciona varias funciones clave para ayudarte a construir y gestionar flujos de trabajo multiagente:
Creador de equipos: Una interfaz de arrastrar y soltar para crear equipos de agentes.
Parque infantil: Un entorno interactivo para probar y ejecutar flujos de trabajo de agentes.
Galería: Un eje central para descubrir e importar componentes creados por la comunidad.
Laboratorios: Es una función experimental de AutoGen Studio que permite a los usuarios explorar flujos de trabajo avanzados y crear prototipos de ideas vanguardistas.
Despliega: Exporta y ejecuta flujos de trabajo de agentes como código Python.
AutoGen Studio es una aplicación de bajo código, lo que significa que te permite crear flujos de trabajo con una codificación mínima. Sin embargo, también proporciona flexibilidad para personalizar los agentes y los flujos de trabajo utilizando código Python.
2. AutoGen AgentChat
AgentChat es un marco de alto nivel para crear flujos de trabajo conversacionales multiagente. Simplifica el proceso de construcción de aplicaciones en las que múltiples agentes (IA, herramientas o humanos) colaboran para resolver tareas.
A continuación, crearemos tres agentes -un usuario, un programador y un ejecutor de código- que colaborarán en un chat de grupo rotatorio para generar, ejecutar y narrar código Python. El sistema está diseñado para facilitar la generación y ejecución dinámica de código, permitiendo al mismo tiempo la interacción humana y las condiciones de terminación.
Para este ejemplo, estamos utilizando el modelogpt-4.1-mini para la generación de código, CodeExecutorAgent para la ejecución de código de línea de comandos y UserProxyAgent para mantener a los humanos en el bucle.
import asyncio
from pathlib import Path
from AutoGen_agentchat.agents import AssistantAgent, CodeExecutorAgent, UserProxyAgent
from AutoGen_agentchat.conditions import TextMentionTermination
from AutoGen_agentchat.teams import RoundRobinGroupChat
from AutoGen_agentchat.ui import Console
from AutoGen_ext.code_executors.local import LocalCommandLineCodeExecutor
from AutoGen_ext.models.openai import OpenAIChatCompletionClient
asyncdefmain()->None:
model_client = OpenAIChatCompletionClient(model="gpt-4.1-mini")
coder = AssistantAgent("coder",
model_client=model_client,
system_message=("You are a senior engineer. Think step-by-step, then output ONLY runnable ""Python inside ```pythonthon``` blocks—no commentary."),)
executor = CodeExecutorAgent("executor",
model_client=model_client,# lets it narrate results
code_executor=LocalCommandLineCodeExecutor(work_dir=Path.cwd()/"runs"),)
user = UserProxyAgent("user")# human in the loop
termination = TextMentionTermination("exit", sources=["user"])
team = RoundRobinGroupChat([user, coder, executor], termination_condition=termination
)try:await Console(
team.run_stream())finally:await model_client.close()if __name__ =="__main__":
asyncio.run(main())Con la tecnología de
Guarda el código anterior en un archivo chat_app.py, y ejecútalo utilizando:
Hemos pedido a la aplicación Agente que genere código para imprimir las estrellas en forma de triángulo, y que luego ejecute el código.
Generó correctamente el código y lo ejecutó, ofreciendo además opciones adicionales. El usuario puede teclear "salir" para abandonar o hacer preguntas de seguimiento para una experiencia conversacional.
Salida:
Enter your response: Write a Python script that prints stars and run it.
---------- TextMessage (user) ----------
Write a Python script that prints stars and run it.
Con la tecnología de
---------- TextMessage (coder)----------# Print a simple star patternfor i inrange(1,6):print('*'* i)Con la tecnología de
---------- CodeGenerationEvent (executor)----------# Print a simple star patternfor i inrange(1,6):print('*'* i)Con la tecnología de
---------- CodeExecutionEvent (executor) ----------
*
**
***
****
*****
---------- TextMessage (executor) ----------
The star pattern has been printed successfully. If you'd like a different pattern or further modifications, just let me know!
Enter your response:Con la tecnología de
3. Núcleo AutoGen
El Núcleo AutoGen es un marco de trabajo de bajo nivel que proporciona una forma potente de crear y gestionar sistemas multiagente.
En este ejemplo, crearemos dos agentes: un Agente Eco que invierte el contenido de un mensaje y un Agente Impresor que imprime el contenido del mensaje en la consola.
Estructura del mensaje: La claseText es una sencilla estructura de datos que contiene el contenido de un mensaje.
Agente Eco: El agenteEcho invierte el contenido de cualquier mensaje que reciba y publica el mensaje invertido en el tema por defecto utilizando publish_message.
Agente de impresión: El agentePrinter escucha los mensajes e imprime su contenido en la consola.
Tiempo de ejecución: El SingleThreadedAgentRuntime se utiliza para gestionar el ciclo de vida de los agentes y manejar el enrutamiento de mensajes.
import asyncio
from dataclasses import dataclass
from AutoGen_core import(
AgentId,
DefaultTopicId,
MessageContext,
RoutedAgent,
SingleThreadedAgentRuntime,
default_subscription,
message_handler,)@dataclassclassText:
content:str@default_subscriptionclassEcho(RoutedAgent):def__init__(self)->None:super().__init__("echo")@message_handlerasyncdefhandle(self, message: Text, ctx: MessageContext)->None:# param must be named 'message'await self.publish_message(Text(message.content[::-1]), DefaultTopicId())@default_subscriptionclassPrinter(RoutedAgent):def__init__(self)->None:super().__init__("printer")@message_handlerasyncdefhandle(self, message: Text, ctx: MessageContext)->None:# param must be named 'message'print(message.content)asyncdefmain()->None:
rt = SingleThreadedAgentRuntime()await Echo.register(rt,"echo",lambda: Echo())await Printer.register(rt,"printer",lambda: Printer())
rt.start()await rt.send_message(Text("DataCamp"), AgentId("echo","default"))await rt.stop_when_idle()if __name__ =="__main__":
asyncio.run(main())Con la tecnología de
Guarda el código en un archivo core_app.py, y ejecútalo utilizando:
El marco de Extensiones AutoGen proporciona extensiones propias y de terceros que amplían las capacidades del marco.
En este ejemplo, demostraremos cómo utilizar el agente MultimodalWebSurfer, que puede interactuar con páginas web, realizar búsquedas y extraer información .
Antes de ejecutar el ejemplo, asegúrate de que tienes instaladoPlaywright:
Inicialización del agente: Se crea un agenteMultimodalWebSurfer, que utiliza el modelogpt-4.1-mini de OpenAI para la toma de decisiones y un navegador (mediante Playwright) para las interacciones web.
Configuración del equipo: El agente se añade a un equipo deRoundRobinGroupChat, que gestiona el flujo de trabajo del agente y limita la tarea a 3 turnos.
Ejecución de la tarea: Se ordena al equipo que realice la tarea: "Navega hasta Google y busca sobre Abid Ali Awan". El agente abre un navegador, navega hasta Google, realiza la búsqueda y extrae la información relevante.
Salida de streaming: Las acciones del agente (por ejemplo, navegar a una página, hacer clic en enlaces, extraer metadatos) se transmiten a la consola en tiempo real.
Limpieza: Una vez finalizada la tarea, se cierra el navegador para liberar recursos.
import asyncio
from AutoGen_agentchat.ui import Console
from AutoGen_agentchat.teams import RoundRobinGroupChat
from AutoGen_ext.models.openai import OpenAIChatCompletionClient
from AutoGen_ext.agents.web_surfer import MultimodalWebSurfer
asyncdefmain()->None:# Define an agent
web_surfer_agent = MultimodalWebSurfer(
name="MultimodalWebSurfer",
model_client=OpenAIChatCompletionClient(model="gpt-4.1-mini"),)# Define a team
agent_team = RoundRobinGroupChat([web_surfer_agent], max_turns=3)# Run the team and stream messages to the console
stream = agent_team.run_stream(task="Navigate to Google and search about Abid Ali Awan.")await Console(stream)# Close the browser controlled by the agentawait web_surfer_agent.close()
asyncio.run(main())Con la tecnología de
Guarda el código en un archivo, web_ext_app.py, y ejecútalo utilizando:
Cuando ejecutes la aplicación, se producirá la siguiente interacción:
---------- TextMessage (user) ----------
Navigate to Google and search about Abid Ali Awan.
---------- MultiModalMessage (MultimodalWebSurfer) ----------
I typed 'https://www.google.com' into the browser address bar.
The web browser is open to the page [Google](https://www.google.com/).
The viewport shows 100% of the webpage, and is positioned at the top of the page
The following text is visible in the viewport:
Gmail
Images
Sign in
Google offered in:
اردو
پښتو
سنڌيPakistan
About
Advertising
Business
How Search works
Privacy
Terms
Settings
Google recommends using Chrome
Try a fast, secure browser with updates built in
Don't switch
Yes
The following metadata was extracted from the webpage:
{
"microdata": [
{
"itemType": "http://schema.org/WebPage",
"image": "/images/branding/googleg/1x/googleg_standard_color_128dp.png"
}
],
"meta_tags": {
"referrer": "origin"
}
}
Here is a screenshot of the page.
<image>
---------- MultiModalMessage (MultimodalWebSurfer) ----------
I clicked 'Sign in'.
The web browser is open to the page [Sign in - Google Accounts](https://accounts.google.com/v3/signin/identifier?continue=https%3A%2F%2Fwww.google.com%2F&ec=futura_exp_og_so_72776762_e&hl=en&ifkv=ASKV5MhAzFZnwDH-Aw10tuqQN1ppsY8OZ2-OJ3YavFHXMDlX9iTddg1d_k78ZZ0SogFUivcY7Td0Hg&passive=true&flowName=GlifWebSignIn&flowEntry=ServiceLogin&dsh=S1980923188%3A1746809726624486).
The viewport shows 100% of the webpage, and is positioned at the top of the page
The following text is visible in the viewport:
Sign inUse your Google AccountEmail or phone
Forgot email?
Not your computer? Use a private browsing window to sign in.
Learn more about using Guest modeNext
Create account
English (United States)
Help
Privacy
Terms
Sign in Use your Google Account
The following metadata was extracted from the webpage:
{"meta_tags":{"referrer":"origin",
"chrome":"nointentdetection",
"viewport":"width=device-width, initial-scale=1",
"description":""}}
Here is a screenshot of the page.
<image>
---------- TextMessage (MultimodalWebSurfer) ----------
Please provide the email or phone number you want to use to sign in, or let me know if you want to create a new account or need help with something else on this page.Con la tecnología de
AutoGen abre numerosas posibilidades para crear sistemas inteligentes multiagente. He aquí algunos de los casos de uso más destacados del ecosistema AutoGen:
Generación, ejecución y depuración de código: Automatiza las tareas de codificación, reduciendo los errores y mejorando la eficacia.
Colaboración multiagente: Permite el trabajo en equipo de los agentes para resolver tareas complejas.
Charlas multiagente secuenciales: Gestiona secuencias de tareas estructuradas para completarlas con eficacia.
Chats anidados: Maneja tareas intrincadas mediante conversaciones detalladas y estratificadas.
Uso de herramientas: Amplía la funcionalidad del agente integrando herramientas como la búsqueda web y las consultas SQL.
Implicación humana: Incorpora los comentarios humanos para mejorar los flujos de trabajo.
Agente de enseñanza y aprendizaje: Mejora las habilidades y conocimientos de los agentes.
Chat multiagente con Asistentes OpenAI: Combina las capacidades de OpenAI con AutoGen para tareas avanzadas.
Agente Multimodal: Maneja texto, imágenes y otros medios para interacciones más ricas.
Manipulación de contextos largos: Mantiene la coherencia en conversaciones extensas.
Conclusión
Hay una razón por la que AutoGen ha ganado tanta atención y reconocimiento, ganándose su lugar como uno de los frameworks Agentic con más estrellas en GitHub.
Es un marco de trabajo muy completo que se adapta a todo el mundo, desde programadores profesionales a programadores ocasionales, e incluso a personas sin experiencia previa en programación.
Con AutoGen, puedes crear rápidamente prototipos de flujos de trabajo mediante AutoGen Studio, crear aplicaciones sólidas con el marco de trabajo principal y las extensiones, e implantarlas sin problemas en la nube. Es realmente una solución todo en uno para crear y gestionar sistemas inteligentes multiagente.
Soy un científico de datos certificado que disfruta creando aplicaciones de aprendizaje automático y escribiendo blogs sobre ciencia de datos. Actualmente me centro en la creación de contenidos, la edición y el trabajo con grandes modelos lingüísticos.
Aprende a utilizar modelos de IA generativa para crear un editor de imágenes, un chatbot similar a ChatGPT con pocos recursos y una aplicación clasificadora de aprobación de préstamos y a automatizar interacciones PDF y un asistente de voz con GPT.
Conoce los principales tipos de agentes de IA, cómo interactúan con los entornos y cómo se utilizan en los distintos sectores. Comprende los agentes simples reflejos, basados en modelos, basados en objetivos, basados en utilidades, de aprendizaje y más.
Descubre los mejores generadores de vídeo con IA disponibles en la actualidad, entre los que se incluyen RunwayML, Synthesia, Colossyan, Pictory, DeepBrain AI, Invideo y los muy esperados Sora y Veo de DeepMind.
Un tutorial completo sobre la construcción de agentes LangChain multiherramienta para automatizar tareas en Python utilizando LLMs y modelos de chat utilizando OpenAI.
Una visión completa de la API Assistants con nuestro artículo, que ofrece una mirada en profundidad a sus características, usos en la industria, guía de configuración y las mejores prácticas para maximizar su potencial en diversas aplicaciones empresariales.
La IA moderna comenzó con los Grandes Modelos de Lenguaje (LLM), seguidos de la llamada a funciones para obtener resultados estructurados, luego el desarrollo de agentes y herramientas, que condujo a la creación de servidores MCP. Actualmente, la atención se centra en los sistemas multiagente. Las empresas buscan soluciones para construir sistemas automatizados inteligentes utilizando diversas herramientas, entre las que AutoGen es la más popular.
En este tutorial, exploraremos AutoGen, su ecosistema, sus diversos casos de uso y cómo utilizar cada componente dentro de ese ecosistema. Es importante señalar que AutoGen no es sólo una herramienta típica de orquestación de modelos lingüísticos como LangChain; ofrece mucho más que eso.
Si eres nuevo en la IA, haz el curso Fundamentos de la IA antes de seguir con este tutorial. También puedes aprender sobre IA Agenética en otro artículo.
¿Qué es AutoGen?
AutoGen es un marco de trabajo de código abierto diseñado para crear aplicaciones de IA multiagente que pueden funcionar de forma semiautónoma y totalmente autónoma. Proporciona a los programadores herramientas para construir sistemas en los que varios agentes de IA puedan comunicarse, cooperar y realizar tareas juntos.
AutoGen admite una amplia gama de casos de uso, incluidos los flujos de trabajo automatizados, la colaboración multiagente y la resolución dinámica de tareas. Permite a los programadores crear sistemas en los que los agentes pueden interactuar mediante lenguaje natural, ejecutar código, recuperar información y adaptarse a flujos de trabajo complejos.
El ecosistema AutoGen se divide en cuatro componentes principales:
Fuente: microsoft/AutoGen
AutoGen destaca por su capacidad para:
Su extensibilidad y modularidad la convierten en una potente herramienta para programadores de todos los sectores, desde las finanzas y la sanidad hasta la educación y la robótica.
Lee Comprender a los agentes de IA: El Futuro de los Sistemas Autónomos para aprender a aprovechar los agentes de IA para la innovación y la eficacia en tus proyectos.
Primeros pasos con el ecosistema AutoGen
En esta sección, exploraremos los cuatro componentes principales del ecosistema AutoGen instalándolos y ejecutándolos localmente.
1. AutoGen Studio
AutoGen Studio es una interfaz de bajo código diseñada para ayudarte a crear rápidamente prototipos de agentes de IA. Proporciona una interfaz de arrastrar y soltar fácil de usar para crear sistemas multiagente y probarlos en tiempo real.
1. Para instalar el Estudio, utiliza el comando pip.
2. Una vez instalado, puedes iniciar la interfaz de usuario de AutoGen Studio especificando el puerto y el directorio de la aplicación donde se almacenarán todos los agentes y plantillas.
Después de ejecutar el comando, deberías ver la siguiente salida en tu terminal:
3. Navega a http://127.0.0.1:8080 en tu navegador para acceder al panel de AutoGen Studio.
Una vez que la aplicación esté en marcha, serás recibido con una interfaz de usuario limpia e intuitiva.
AutoGen Studio proporciona varias funciones clave para ayudarte a construir y gestionar flujos de trabajo multiagente:
AutoGen Studio es una aplicación de bajo código, lo que significa que te permite crear flujos de trabajo con una codificación mínima. Sin embargo, también proporciona flexibilidad para personalizar los agentes y los flujos de trabajo utilizando código Python.
2. AutoGen AgentChat
AgentChat es un marco de alto nivel para crear flujos de trabajo conversacionales multiagente. Simplifica el proceso de construcción de aplicaciones en las que múltiples agentes (IA, herramientas o humanos) colaboran para resolver tareas.
Primero, instala los paquetes necesarios:
A continuación, crearemos tres agentes -un usuario, un programador y un ejecutor de código- que colaborarán en un chat de grupo rotatorio para generar, ejecutar y narrar código Python. El sistema está diseñado para facilitar la generación y ejecución dinámica de código, permitiendo al mismo tiempo la interacción humana y las condiciones de terminación.
Para este ejemplo, estamos utilizando el modelo
gpt-4.1-minipara la generación de código,CodeExecutorAgentpara la ejecución de código de línea de comandos yUserProxyAgentpara mantener a los humanos en el bucle.Guarda el código anterior en un archivo
chat_app.py, y ejecútalo utilizando:Hemos pedido a la aplicación Agente que genere código para imprimir las estrellas en forma de triángulo, y que luego ejecute el código.
Generó correctamente el código y lo ejecutó, ofreciendo además opciones adicionales. El usuario puede teclear "salir" para abandonar o hacer preguntas de seguimiento para una experiencia conversacional.
Salida:
3. Núcleo AutoGen
El Núcleo AutoGen es un marco de trabajo de bajo nivel que proporciona una forma potente de crear y gestionar sistemas multiagente.
En este ejemplo, crearemos dos agentes: un Agente Eco que invierte el contenido de un mensaje y un Agente Impresor que imprime el contenido del mensaje en la consola.
Componentes utilizados en esta aplicación:
Textes una sencilla estructura de datos que contiene el contenido de un mensaje.Echoinvierte el contenido de cualquier mensaje que reciba y publica el mensaje invertido en el tema por defecto utilizandopublish_message.Printerescucha los mensajes e imprime su contenido en la consola.SingleThreadedAgentRuntimese utiliza para gestionar el ciclo de vida de los agentes y manejar el enrutamiento de mensajes.Guarda el código en un archivo
core_app.py, y ejecútalo utilizando:Flujo de mensajes:
Salida:
4. Extensiones AutoGen
El marco de Extensiones AutoGen proporciona extensiones propias y de terceros que amplían las capacidades del marco.
En este ejemplo, demostraremos cómo utilizar el agente
MultimodalWebSurfer, que puede interactuar con páginas web, realizar búsquedas y extraer información .Antes de ejecutar el ejemplo, asegúrate de que tienes instalado
Playwright:Cómo funciona el código:
MultimodalWebSurfer, que utiliza el modelogpt-4.1-minide OpenAI para la toma de decisiones y un navegador (mediante Playwright) para las interacciones web.RoundRobinGroupChat, que gestiona el flujo de trabajo del agente y limita la tarea a 3 turnos.Guarda el código en un archivo,
web_ext_app.py, y ejecútalo utilizando:Cuando ejecutes la aplicación, se producirá la siguiente interacción:
Similar a AutoGen, CrewAI es otro marco favorito de los fans de la IA para construir flujos de trabajo agénticos. Sigue la CrewAI: A Guide With Examples of Multi AI Agent Systems tutorial to learn more about it.
Casos de uso de AutoGen
AutoGen abre numerosas posibilidades para crear sistemas inteligentes multiagente. He aquí algunos de los casos de uso más destacados del ecosistema AutoGen:
Conclusión
Hay una razón por la que AutoGen ha ganado tanta atención y reconocimiento, ganándose su lugar como uno de los frameworks Agentic con más estrellas en GitHub.
Es un marco de trabajo muy completo que se adapta a todo el mundo, desde programadores profesionales a programadores ocasionales, e incluso a personas sin experiencia previa en programación.
Con AutoGen, puedes crear rápidamente prototipos de flujos de trabajo mediante AutoGen Studio, crear aplicaciones sólidas con el marco de trabajo principal y las extensiones, e implantarlas sin problemas en la nube. Es realmente una solución todo en uno para crear y gestionar sistemas inteligentes multiagente.
Toma la Construye Agentes Dinámicos LangChain y aprende a crear tu primera aplicación de agente de IA utilizando el popular marco LLM.