- Un artículo que compara varios frameworks open source de agentes de IA como LangGraph, OpenAI Agents SDK, Smolagents, CrewAI, AutoGen, Semantic Kernel y LlamaIndex Agents
- Antes, desarrollar agentes de IA era una combinación de scripts, prompt engineering y prueba y error, pero ahora están aumentando los frameworks open source
- Cada framework tiene una filosofía arquitectónica propia en el equilibrio entre la autonomía y la estabilidad del agente
- Se puede integrar con herramientas de observabilidad como Langfuse para visualizar y depurar prompts, respuestas y el proceso de llamadas a API
LangGraph – flujo de trabajo basado en grafos
- Framework de arquitectura de grafos basado en LangChain
- Cada nodo procesa un prompt o una unidad de trabajo, y los edges controlan el flujo de datos y las bifurcaciones
- Conveniente para tareas complejas de varios pasos, procesamiento en paralelo e inserción de lógica de manejo de errores
- Fuerte en visualización y depuración, y adecuado para diseñar agentes basados en estado
OpenAI Agents SDK – toolkit oficial de agentes de OpenAI
- SDK oficial provisto por OpenAI
- Se integra de forma natural con modelos como GPT-4o y GPT-o3
- Permite realizar tareas de varios pasos configurando roles, tools y triggers
- Adecuado para usuarios familiarizados con el ecosistema de OpenAI
Smolagents – enfoque minimalista basado en código
- Framework de agentes minimalista y centrado en código de Hugging Face
- Dentro de un loop simple, la IA genera y ejecuta código Python
- Adecuado para prototipado rápido sin necesidad de una orquestación compleja
- Utiliza internamente prompts de estilo ReAct
CrewAI – colaboración multiagente basada en roles
- Asigna un rol único a cada agente para permitir la colaboración
- A través del concepto de contenedor llamado "Crew", ajusta automáticamente el flujo de trabajo
- Facilita implementar escenarios como Planner - Researcher - Writer
- Incluye funciones de memoria y lógica de manejo de errores
AutoGen – agentes conversacionales asíncronos
- Framework de agentes basado en conversaciones asíncronas desarrollado por Microsoft Research
- Cada agente opera de forma asíncrona intercambiando mensajes de conversación
- Es ventajoso cuando son importantes las conversaciones multi-turno, el cambio de roles y las llamadas a herramientas en tiempo real
- Su estructura basada en eventos lo hace adecuado para tareas con alta concurrencia
Semantic Kernel – flujo de trabajo amigable para entornos empresariales
- Framework de Microsoft centrado en .NET
- Combina skills de IA y skills basadas en código para construir flujos de trabajo basados en planificación
- Optimizado para requisitos empresariales como seguridad, cumplimiento e integración con Azure
- Soporta varios lenguajes como Python, C# y Java
LlamaIndex Agents – agentes centrados en datos
- LlamaIndex comenzó como un framework basado en RAG y expandió sus capacidades de agentes
- Busca fuentes de datos locales o externas y conecta los resultados con una respuesta o una acción
- Adecuado para Q&A basado en documentos, resúmenes y agentes de búsqueda personalizados
- Si ya tienes experiencia usando LlamaIndex, la barrera de entrada es baja
¿Cuándo usar cada framework?
- Complejidad de la tarea: hay que elegir el framework adecuado según si la tarea es simple o compleja
- Flujos complejos de varios pasos: LangGraph, Semantic Kernel
- Ejecución simple basada en código: Smolagents
- Colaboración multiagente: si se necesitan varios agentes, hace falta una arquitectura que soporte conversación asíncrona y delegación de roles
- Agentes basados en roles: CrewAI
- Agentes conversacionales asíncronos: AutoGen
- Entorno de integración: hay que considerar el entorno y los sistemas con los que el agente debe interactuar
- Servicios centrados en OpenAI: OpenAI Agents SDK
- Necesidad de integrarse con lógica de negocio existente: Semantic Kernel
- Rendimiento y escalabilidad: hay que considerar los requisitos de rendimiento de la aplicación. Si se necesita interacción en tiempo real, puede hacer falta una arquitectura basada en eventos
- Necesidad de procesamiento con alta concurrencia: AutoGen
- Integración con herramientas de observabilidad (como Langfuse) para depuración y trazabilidad
Importancia de las herramientas de observabilidad y tracing
- Como los agentes incluyen llamadas a APIs externas, recuperación de datos y lógica compleja de bifurcación, el seguimiento transparente es esencial
- Con herramientas como Langfuse se pueden rastrear los siguientes elementos:
- El flujo de cada prompt y respuesta
- El momento y resultado de las llamadas a herramientas
- La visualización de errores y rutas de ejecución
- En entornos de producción, son esenciales para medir rendimiento, depurar errores y mejorar de forma iterativa
Aún no hay comentarios.