Una de las preguntas más frecuentes que recibimos de equipos técnicos que planifican su primer agente en producción: «¿Qué framework debemos usar?» La pregunta es comprensible — GitHub tiene decenas de proyectos, cada uno con demos que lucen bien y blogs comparativos que se contradicen entre sí.
La respuesta corta: el framework es una decisión secundaria. Lo primario es la arquitectura del agente — el patrón según el cual el agente razona y actúa (ReAct, Plan-and-Execute, reflexión). Los frameworks *implementan* esos patrones, no los inventan. LangGraph, CrewAI, AutoGen y el código propio son cuatro formas de materializar los mismos patrones en código. Cada uno tiene sus trade-offs. Este artículo te ayudará a elegir el correcto — o a disuadirte de escoger un framework donde no hace ninguna falta.
Qué hacen los frameworks (y qué no hacen)
Antes de comparar proyectos concretos, conviene aclarar qué resuelve realmente un framework de agentes. Típicamente proporciona:
- Orquestación de pasos — cómo el agente transita de un estado al siguiente (ciclo reason-act-observe o plan → ejecución → reflexión)
- Gestión de contexto y estado — dónde se almacena el historial, los resultados intermedios, el contexto entre llamadas
- Routing entre agentes — cómo se traspasa la tarea de un agente especializado al siguiente
- Integración de herramientas — forma estandarizada de que el agente llame APIs externas, bases de datos vectoriales, código
- Checkpointing y resumibilidad — posibilidad de reanudar el agente tras un fallo sin perder el progreso
Lo que los frameworks no hacen: no comparten contigo la responsabilidad sobre la corrección de los prompts, la calidad de las herramientas, los guardrails ni la observabilidad. Eso sigue siendo tuyo, independientemente de lo que elijas.
LangGraph: grafo explícito, estado explícito
LangGraph construye el agente como un grafo dirigido — los nodos son funciones (llamada LLM, herramienta, condición) y las aristas son transiciones entre estados. El estado es un dataclass o dict explícito de Python que se pasa entre nodos.
Qué implica esto en la práctica:
- Cada transición del grafo es visible y testeable de forma aislada
- El checkpointing está integrado — el agente puede detenerse y reanudarse desde el último nodo (fundamental en tareas largas)
- HITL (human-in-the-loop) se implementa mediante
interrupt()— el agente se detiene, espera la entrada humana y luego continúa. Esto está alineado con el requisito del artículo 14 de la EU AI Act sobre supervisión humana en sistemas de alto riesgo, obligatorio desde agosto de 2026 - La depurabilidad es superior a la media: sé exactamente en qué nodo y con qué estado falló el agente
Cuándo tiene sentido LangGraph:
- Agentes stateful en producción con múltiples pasos (más de 3–4 tool calls por tarea)
- Necesitas checkpointing — el agente corre durante minutos u horas
- HITL en acciones críticas (operaciones financieras, envío de documentos)
- El equipo quiere una visualización gráfica del flujo para revisión y depuración
- Despliegue en entorno regulado donde se exige audit trail a nivel de nodo por nodo
Cuándo LangGraph es innecesario:
- RAG sencillo de un solo paso (embed → retrieve → generate) — aquí es overhead sin valor
- Prototipo rápido donde necesitas resultado en un día, no en una semana
- El equipo no está familiarizado con programación basada en grafos — la curva de aprendizaje es real
LangGraph es hoy considerado el framework con mayor estabilidad en producción para agentes stateful enterprise. No es la entrada más sencilla, pero sí la salida más controlable.
CrewAI: roles, equipos, arranque rápido
CrewAI piensa en términos de roles y equipos. Defines agentes con roles concretos (Researcher, Analyst, Writer), cada uno con su propio objetivo y conjunto de herramientas, y el framework coordina cómo se traspasan la tarea.
La barrera de entrada es baja — un equipo multi-agente básico cabe en ~20–35 líneas de código. Esa es la ventaja principal de CrewAI: un prototipo funcional de sistema multi-agente en horas, no en días.
Qué implica esto en la práctica:
- El prototipado rápido es realmente rápido — la sintaxis es legible, un nuevo miembro del equipo puede incorporarse en horas
- La abstracción basada en roles es intuitiva para equipos que piensan en términos de «quién hace qué»
- En producción, CrewAI cuenta con menos herramientas para el control explícito del estado y el checkpointing en comparación con LangGraph
- La depurabilidad es más débil — ante un fallo es más difícil identificar con precisión en qué paso y por qué
Cuándo tiene sentido CrewAI:
- Proof-of-concept o prototipo interno donde quieres demostrar valor rápidamente
- Escenarios multi-agente donde el pensamiento basado en roles encaja de forma natural con el problema (p. ej., pipeline: recopilación de datos → análisis → informe)
- Equipos sin base profunda en programación orientada a grafos
- Sistemas menos críticos donde un fallo ocasional es aceptable
Cuándo CrewAI no es suficiente:
- Sistemas en producción donde necesitas checkpointing y resumibilidad fiables
- HITL con parada garantizada en puntos críticos
- Tareas agénticas largas (decenas de tool calls) donde el estado debe gestionarse explícitamente
- Entornos regulados con requisito de audit trail
CrewAI no es un mal framework. Es la herramienta correcta para el prototipo — pero la transición de un prototipo CrewAI a un sistema en producción suele implicar una reescritura parcial o total en LangGraph o código propio.
AutoGen: agentes conversacionales, carácter investigador
AutoGen (ahora AG2) piensa de forma diferente a LangGraph o CrewAI. En lugar de un grafo explícito o de roles, dispone de un GroupChat conversacional — los agentes se envían mensajes, el framework gestiona quién habla cuándo.
AutoGen alcanzó la versión 1.0 GA en 2025, lo que señala su madurez. Es popular en entornos de investigación y en la experimentación con diálogos multi-agente.
Qué implica esto en la práctica:
- Potente para escenarios donde la solución emerge de la conversación entre agentes — p. ej., un agente escribe código, otro lo revisa y propone mejoras
- Flexible y expresivo para experimentar — añadir un nuevo agente al chat es sencillo
- Menos predecible en producción — el flujo conversacional es más difícil de controlar de forma determinista que un grafo explícito
- La observabilidad y el checkpointing son puntos débiles en comparación con LangGraph
Cuándo tiene sentido AutoGen:
- Investigación y experimentación con nuevos patrones agent-to-agent
- Sistemas donde varios especialistas (agentes) deben trabajar juntos de forma iterativa sobre una respuesta
- Asistentes de codificación y pipelines de code review
- Prototipos donde puedes aceptar menor predictibilidad
Cuándo AutoGen no es suficiente:
- Sistemas en producción con requisitos de flujo determinista
- Escenarios donde necesitas parada garantizada (HITL) en acciones concretas
- Empresas con responsabilidad a largo plazo sobre la calidad del output — el caos conversacional es difícil de auditar
Código propio: a veces la mejor opción
Esta es la respuesta que nadie espera, pero en la práctica la vemos más a menudo de lo que parecería: a veces no hace falta ningún framework.
Si tu agente ejecuta una secuencia fija de pasos — p. ej., recibe un documento, llama a 2–3 herramientas, devuelve un output estructurado — Python con llamadas directas al SDK (Anthropic, OpenAI) y lógica de retry propia puede ser más limpio, más rápido y más fácil de mantener que cualquier framework.
Cuándo tiene sentido el código propio:
- La lógica agéntica es sencilla y estable — menos de 3–4 pasos, sin bifurcaciones
- El equipo tiene una base sólida en Python y los frameworks añaden más complejidad que valor
- Quieres un conjunto mínimo de dependencias — cada framework añade decenas de paquetes transitivos
- Estás construyendo un pipeline específico, no un runtime genérico de agentes
Cuidado con la trampa:
El código propio se convierte rápidamente en un «framework artesanal» incontrolable — vas añadiendo estado, retry, checkpointing uno a uno. Cuando el agente crece a 5+ pasos con bifurcaciones, LangGraph u otro framework se convierte en la elección racional. El código propio es un buen punto de partida, no siempre un buen destino.
Marco de decisión
En lugar de una tabla (que resultaría ilegible), aquí está la lógica de decisión desde la práctica:
Empieza por la pregunta: ¿Cuántos pasos y qué complejidad?
- Menos de 3–4 pasos, secuencia fija → código propio o CrewAI
- 5+ pasos, bifurcaciones, necesidad de resumibilidad → LangGraph
- Diálogo multi-agente, investigación, code review → AutoGen
Luego: ¿Es un prototipo o es producción?
- Prototipo, PoC, demo → CrewAI o AutoGen (velocidad de entrada)
- Producción, SLA, entorno regulado → LangGraph o código propio (control)
Luego: ¿Se necesita HITL?
- Sí, con parada garantizada → LangGraph (
interrupt()) o código propio con await explícito - No, o «human-on-the-loop» es suficiente → cualquier framework
Por último: ¿Cuáles son los requisitos de observabilidad?
Este es el punto que las empresas subestiman con más frecuencia. Sin observabilidad — captura de trazas a nivel de cada nodo y tool call — no puedes diagnosticar fallos en producción. Para LangGraph la integración natural es con LangSmith; para los demás frameworks funciona bien Langfuse (self-hostable, framework-agnostic) o Arize Phoenix. Más sobre este tema en el artículo sobre observabilidad de agentes de IA.
Lo que todos los frameworks tienen en común: el tool calling
Un patrón aplica independientemente del framework que elijas: la fiabilidad del tool calling no es gratuita. La mayoría de los incidentes en producción con agentes no ocurren por un razonamiento defectuoso — ocurren por argumentos de herramienta malformados, errores de herramienta no gestionados o porque el agente llama a una herramienta con parámetros sin sentido.
Mínimo obligatorio para producción:
- Validación estricta de JSON schema en la entrada y salida de cada herramienta
- Lógica de retry con backoff exponencial para errores transaccionales
- Número máximo de intentos (p. ej., 3) con fallback — el agente debe saber «rendirse» con elegancia
- Registro de cada tool call con parámetros y resultado
Un análisis más profundo de este tema está en el artículo tool calling de forma fiable.
Frameworks vs. patrones: el orden correcto
Volvamos al punto de partida. Antes de elegir un framework, respóndete estas preguntas:
- 1.¿Qué patrón necesito? ¿ReAct (bucle), Plan-and-Execute (plan primero), reflexión (autocrítica)? Más sobre patrones en arquitecturas de agentes de IA.
- 2.¿Cuáles son los requisitos de fiabilidad y auditabilidad? Entorno regulado, operaciones financieras, sanidad — aquí aplica LangGraph o código propio.
- 3.¿Cuál es el horizonte? Prototipo de 2 semanas frente a sistema que correrá 2 años — son decisiones fundamentalmente distintas.
El framework es solo el envoltorio. Un patrón incorrecto en un framework elegante seguirá fallando. El patrón correcto en código propio sencillo puede funcionar sin problemas durante años.
Preguntas frecuentes
¿Puedo combinar frameworks?
Sí, pero con precaución. Combinar LangGraph para la orquestación con un crew de CrewAI dentro de un nodo es técnicamente posible, pero la depuración se complica. En la práctica recomendamos elegir un solo framework para todo el sistema. Si no es posible (p. ej., integras un prototipo CrewAI existente en un nuevo sistema LangGraph), aísla la integración en un nodo dedicado con un contrato API claro.
¿Tengo que migrar de CrewAI a LangGraph cuando voy a producción?
No necesariamente. Algunos sistemas en producción sobre CrewAI funcionan de forma fiable — depende de la complejidad del agente y de los requisitos. Regla práctica: si tu agente corre más de un minuto, tiene más de 5 pasos o necesita HITL garantizado, la migración vale la pena. Los agentes más cortos y sencillos pueden quedarse en CrewAI.
¿Es AutoGen adecuado para producción?
AutoGen 1.0 GA (2025) es más maduro que sus versiones 0.x. Para casos de uso bien definidos (asistentes de codificación, pipelines de revisión) el despliegue en producción es viable. Para escenarios con requisito de auditabilidad de cada paso y HITL garantizado, LangGraph sigue siendo la mejor opción.
¿Qué modelo usar con el framework?
El framework es agnóstico al modelo — funciona con cualquier modelo con soporte de tool calling. En la práctica recomendamos desarrollar con un modelo frontier (Claude Sonnet, clase GPT) y, si el coste es crítico, probar gradualmente modelos más económicos (tier Haiku, open-weight Qwen 3.x o Llama 4) en el entorno de producción. Los costes de distintos modelos en escenarios agénticos se tratan en costes del agente de IA en producción.
¿Cómo gestionan los frameworks la seguridad — guardrails?
Respuesta corta: no la gestionan — eso es responsabilidad tuya. El framework proporciona estructura de flujo, no una capa de seguridad. Los guardrails (validación de input, detección de prompt injection, scope de permisos de herramientas, filtrado de output) debes añadirlos explícitamente — ya sea mediante herramientas dedicadas (NeMo Guardrails, Guardrails AI) o lógica de validación propia. Más en el artículo sobre guardrails para agentes de IA.
*La elección del framework es una decisión importante, pero no la más importante a la hora de construir un agente. En MP Industrial Solutions ayudamos a los clientes a recorrer todo el camino — desde la elección del patrón y el framework hasta el despliegue en producción, el monitoring y los guardrails. Si estás planificando tu primer agente en producción o evaluando si tu prototipo está listo para producción, estaremos encantados de revisar contigo el caso de uso concreto.*
