CrewAI
Introducción
CrewAI es un framework Python que te permite construir equipos de agentes de IA. Cada agente recibe un rol, un objetivo y herramientas. Juntos resuelven tareas complejas que un solo agente tendría dificultades en manejar. Es especialmente útil para flujos de trabajo donde varios pasos deben ejecutarse en secuencia o en paralelo.
CrewAI en pocas palabras
CrewAI se basa en tres conceptos clave: agentes, tareas y una crew. Un agente asume un rol como “investigador” o “redactor”. Una tarea describe qué debe hacer. La crew orquesta los agentes y sus tareas en un flujo de trabajo definido. Los agentes pueden pasar sus resultados a otros hasta alcanzar el objetivo general.
Herramientas, términos y técnicas
- CrewAI Python - El framework principal. Se instala mediante pip.
- Documentación de CrewAI - Guía oficial con ejemplos.
- Ollama - Se ejecuta localmente y puede usarse como backend de modelos para CrewAI.
- Agent - Un rol de IA con una tarea, personalidad y herramientas.
- Task - Un paquete de trabajo bien definido que realiza un agente.
- Crew - La construcción completa formada por agentes y tareas.
Ejemplo práctico: Una crew simple de investigación
from crewai import Agent, Task, Crew
from langchain_ollama import ChatOllama
# Modelo local a través de Ollama
llm = ChatOllama(model="llama3.1", base_url="http://localhost:11434")
researcher = Agent(
role="Investigador",
goal="Recopila información sobre un tema",
backstory="Eres un investigador preciso.",
llm=llm,
verbose=True
)
writer = Agent(
role="Redactor",
goal="Escribe un artículo claro a partir de la investigación",
backstory="Eres un redactor experimentado.",
llm=llm,
verbose=True
)
research_task = Task(
description="Investiga las ventajas de la IA local.",
agent=researcher,
expected_output="Puntos clave sobre ventajas"
)
writing_task = Task(
description="Escribe un artículo breve.",
agent=writer,
expected_output="Un texto de 300 palabras",
context=[research_task]
)
crew = Crew(
agents=[researcher, writer],
tasks=[research_task, writing_task]
)
result = crew.kickoff()
print(result)
CrewAI ejecuta primero la investigación y pasa el resultado al redactor. A través de context=[research_task], el redactor sabe sobre qué debe construir.
Tropiezos comunes y criterios de decisión
- Demasiados agentes al inicio - Comienza con dos o tres roles. Más agentes hacen el flujo inmanejable.
- Tareas vagas - Cada tarea necesita una descripción clara y un resultado esperado bien definido.
- Los modelos locales son lentos - Crews grandes con muchos pasos requieren paciencia en hardware de consumo.
- ¿Cuándo elegir CrewAI en lugar de LangGraph? CrewAI es mejor si quieres modelar roles y tareas paralelas. LangGraph es mejor para decisiones cíclicas y cambios de estado.
Información adicional y enlaces
- CrewAI se basa en agentes con roles, tareas y una crew.
- Puede ejecutarse con Ollama para modelos locales.
- Las transferencias de tareas funcionan a través de
context. - Más sobre agentes en ¿Qué es un agente de IA? y LangGraph.
FAQ - Preguntas frecuentes sobre CrewAI
¿Se ejecuta CrewAI localmente?
Sí, con Ollama o LM Studio como backend de modelos. No necesitas un servicio en la nube.
¿Cuántos agentes necesito?
A menudo son suficientes dos o tres. Para flujos de trabajo más complejos puede haber más. Lo importante es que cada rol esté bien definido.
¿Es CrewAI gratuito?
Sí, el framework de código abierto es gratuito. Los costos surgen solo si usas modelos en la nube.
¿Puedo aprender CrewAI con Python?
Sí. Con conocimientos básicos de Python es suficiente para construir tus primeras crews.
¿Cuál es la diferencia con respecto a LangGraph?
CrewAI se enfoca en roles y distribución de tareas. LangGraph se enfoca en estados, decisiones y grafos.
¿Qué modelo usar localmente con CrewAI?
Un modelo cuantizado de 7B como Llama 3.1 o Qwen 2 es un buen punto de partida. Para tareas más grandes ayuda tener más memoria y un modelo más potente.


