Cómo instalar CrewAI con GUI

Las capacidades de los modelos de redes neuronales crecen día a día. Los investigadores y las empresas comerciales invierten cada vez más en entrenarlos. Pero por sí solos, estos modelos no pueden actuar de forma autónoma. Para resolver tareas específicas, necesitan orientación: ampliación del contexto y establecimiento de direcciones. Este enfoque no siempre es eficaz, sobre todo cuando se trata de problemas complejos.
Pero, ¿y si permitiéramos a una red neuronal actuar de forma autónoma? ¿Y si le proporcionáramos muchas herramientas para interactuar con el mundo exterior? Obtendríamos un agente de IA capaz de resolver tareas determinando de forma independiente qué herramientas utilizar. Suena complicado, pero funciona muy bien. Sin embargo, incluso para un usuario avanzado, crear un agente de IA desde cero puede ser una tarea nada trivial.
La razón es que la mayoría de las bibliotecas populares carecen de interfaz gráfica de usuario. Requieren interacción a través de un lenguaje de programación como Python. Esto eleva drásticamente el umbral de entrada y hace que los agentes de IA sean demasiado complejos para su implementación independiente. Este es exactamente el caso de CrewAI.
Qué es CrewAI
CrewAI es una librería muy popular y práctica, pero no viene con una interfaz gráfica por defecto. Esto llevó a desarrolladores independientes a crear una interfaz no oficial. La naturaleza de código abierto de CrewAI hizo la tarea mucho más fácil, y pronto la comunidad lanzó el proyecto CrewAI Studio.
Los desarrolladores y entusiastas conocieron mejor la arquitectura del sistema y pudieron crear herramientas adaptadas a tareas específicas. Los usuarios normales podían crear agentes de IA sin escribir una sola línea de código. Se hizo más fácil asignar tareas y gestionar el acceso a redes neuronales y herramientas. También permitió exportar e importar agentes de un servidor a otro y compartirlos con amigos, colegas o la comunidad de código abierto.
Otra ventaja de CrewAI Studio es su flexibilidad de despliegue. Puede instalarse como una aplicación normal o como un contenedor Docker, el método preferido, ya que incluye todas las bibliotecas y componentes necesarios para ejecutar el sistema.
Instalación
Actualiza los paquetes de tu sistema operativo y las aplicaciones instaladas a las últimas versiones:
sudo apt update && sudo apt -y upgrade
Utiliza el script de instalación automática de controladores o sigue nuestra guía Instalar controladores NVIDIA® en Linux:
sudo ubuntu-drivers autoinstall
Reinicia el servidor para que los cambios surtan efecto:
sudo shutdown - r now
Tras volver a conectarte por SSH, instala las utilidades del servidor web Apache 2, que te darán acceso al generador de archivos .htpasswd utilizado para la autenticación básica de usuarios:
sudo apt install -y apache2-utils
Instala Docker Engine usando el script shell oficial:
curl -sSL https://get.docker.com/ | sh
Añade Docker Compose al sistema:
sudo apt install -y docker-compose
Clonar el repositorio:
git clone https://github.com/strnad/CrewAI-Studio.git
Navegue hasta el directorio descargado:
cd CrewAI-Studio
Cree un archivo .htpasswd para el usuario usergpu. Se le pedirá que introduzca una contraseña dos veces:
htpasswd -c .htpasswd usergpu
Ahora edita el archivo de despliegue del contenedor. Por defecto, hay dos contenedores:
sudo nano docker-compose.yaml
Borra la sección:
ports:
- "5432:5432"
Y añada el siguiente servicio:
nginx:
image: nginx:latest
container_name: crewai_nginx
ports:
- "80:80"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
- ./.htpasswd:/etc/nginx/.htpasswd:ro
depends_on:
- web
Nginx necesitará un archivo de configuración, así que crea uno:
sudo nano nginx.conf
Pega lo siguiente:
events {}
http {
server {
listen 80;
location / {
proxy_pass http://web:8501;
# WebSocket headers
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
# Forward headers
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
auth_basic "Restricted Content";
auth_basic_user_file /etc/nginx/.htpasswd;
}
}
}
Todas las variables de servicio importantes para CrewAI están definidas en el archivo .env. Abra el archivo .env_example para editarlo:
nano .env_example
Añade las siguientes líneas:
OLLAMA_HOST="http://open-webui:11434"
OLLAMA_MODELS="ollama/llama3.2:latest"
Y añade Postgres config:
POSTGRES_USER="admin"
POSTGRES_PASSWORD="your_password"
POSTGRES_DB="crewai_db"
AGENTOPS_ENABLED="False"
Ahora copia el archivo de ejemplo y renómbralo a .env para que el sistema pueda leerlo durante el despliegue del contenedor:
cp .env_example .env
En este ejemplo, usaremos modelos locales con inferencia manejada por Ollama. Recomendamos nuestra guía Open WebUI: Todo en uno, y durante el despliegue añadir -e OLLAMA_HOST=0.0.0.0 para permitir a CrewAI conectarse directamente al contenedor Ollama. Descargue el modelo deseado (por ejemplo, llama3.2:latest) a través de WebUI o conectándose a la consola del contenedor y ejecutando:
ollama pull llama3.2:latest
Una vez que todo esté configurado, inicie el despliegue:
sudo docker-compose up -d --build
Ahora, visitando http://[your_server_ip]/ se le pedirán las credenciales de acceso. Una vez introducidas correctamente, aparecerá la interfaz CrewAI.
Características
Exploremos las entidades clave que utiliza CrewAI. Esto le ayudará a entender cómo configurar los flujos de trabajo. La entidad central en el Agent, un ejecutor de tareas autónomo. Cada agente tiene atributos que le ayudan a cumplir sus tareas:
- Role. Una breve descripción del trabajo, de 2-3 palabras.
- Backstory. Opcional; ayuda al modelo lingüístico a entender cómo debe comportarse el agente y en qué experiencias debe basarse.
- Goal. El objetivo que debe perseguir el agente.
- Allow delegation. Permite al agente delegar tareas (o parte de ellas) en otros.
- Verbose. Indica al agente que registre acciones detalladas.
- LLM Provider and Model. Especifica el modelo y el proveedor a utilizar.
- Temperature. Determina la creatividad de la respuesta. Mayor = más creativo.
- Max iterations. Número de intentos que tiene el agente para tener éxito, actuando como salvaguarda (por ejemplo, contra bucles infinitos).
Los agentes actúan analizando de forma iterativa las entradas, razonando y extrayendo conclusiones utilizando las herramientas disponibles.
La entrada se define mediante una entidad Task. Cada tarea incluye una descripción, un agente asignado y, opcionalmente, un resultado esperado. Por defecto, las tareas se ejecutan de forma secuencial, pero pueden paralelizarse utilizando la bandera Async execution.
El trabajo de los agentes autónomos se apoya en Tools, que permite la interacción con el mundo real. CrewAI incluye herramientas para búsquedas web, análisis sintáctico de sitios, llamadas a API y manejo de archivos, lo que mejora el contexto y ayuda a los agentes a alcanzar sus objetivos.
Por último, está Crew entity. Une agentes con diferentes funciones en un equipo para abordar problemas complejos. Pueden comunicarse, delegar, revisar y corregirse unos a otros, formando esencialmente una inteligencia colectiva.
Utilizando
Ahora que estás familiarizado con las entidades, vamos a construir y ejecutar un flujo de trabajo CrewAI mínimo. En este ejemplo, seguiremos el progreso global en el desarrollo de fármacos contra el cáncer.
Utilizaremos tres agentes:
- Oncology Drug Pipeline Analyst - sigue los nuevos desarrollos desde las primeras fases hasta los ensayos clínicos.
- Regulatory and Approval Watchdog - monitoriza las aprobaciones de nuevos fármacos y los cambios normativos.
- Scientific Literature and Innovation Scout - explora publicaciones científicas y patentes relacionadas con la oncología.
Abra la sección Agentes y cree el primer agente:

Por ahora, estamos utilizando el modelo llama3.2:latest previamente descargado, pero en un escenario real, elija el que mejor se adapte a la tarea. Repite el proceso para el resto de agentes y pasa a la creación de tareas.

Reúna a todos los agentes en una cuadrilla y asígneles la tarea preparada:

Active las herramientas necesarias de la lista:

Por último, vaya a la página Kickoff! y haga clic en Run Crew! Después de algunas iteraciones, el sistema devolverá un resultado, como por ejemplo:

Antes de terminar, revisemos la sección Import/export. Su flujo de trabajo o tripulación puede ser exportado como JSON para transferirlo a otro servidor CrewAI. También puede crear una aplicación de una sola página (SPA) con un solo clic - perfecto para el despliegue de producción:

Conclusión
CrewAI simplifica significativamente la creación de agentes de IA, permitiendo su integración en cualquier aplicación o su uso independiente. La librería se basa en la idea de inteligencia distribuida, donde cada agente es un experto de dominio, y el equipo combinado supera a un único agente generalista.
Al estar escrita en Python, CrewAI se integra fácilmente con plataformas y herramientas de ML. Su naturaleza de código abierto permite la ampliación mediante módulos de terceros. La comunicación entre agentes reduce el uso de tokens al distribuir el procesamiento del contexto.
Como resultado, las tareas complejas se completan de forma más rápida y eficiente. La menor barrera de entrada que ofrece CrewAI Studio amplía el alcance de los agentes de IA y los sistemas multiagente. Y la compatibilidad con modelos locales garantiza un mejor control de los datos confidenciales.
Véase también:
Actualizado: 12.08.2025
Publicado: 23.07.2025