Construye, despliega y monitorea aplicaciones de IA con el open-source más popular del ecosistema LLM
Dify es la plataforma open-source de desarrollo de aplicaciones LLM más potente del mercado, con más de 150.000 estrellas en GitHub. Su interfaz visual combina workflows de IA, pipeline RAG, capacidades de agente, gestión de modelos y herramientas de observabilidad (Opik, Langfuse, Arize Phoenix) para que pases de prototipo a producción sin reconstruir todo.
Dify (langgenius/dify) nace con una visión clara: democratizar la creación de aplicaciones basadas en grandes modelos de lenguaje (LLMs). No es solo un playground de prompts: es una plataforma completa que cubre todo el ciclo de vida de una aplicación de IA.
Construir una aplicación con LLMs implica concatenar múltiples capas técnicas: elegir modelo, diseñar prompts, implementar RAG, conectar herramientas, gestionar memoria, monitorizar en producción y exponer APIs. Dify unifica todo esto en una interfaz visual que elimina la fricción entre equipos.
| Componente | Descripción |
|---|---|
| Workflow | Constructor visual de flujos de IA con nodos arrastrables |
| RAG Pipeline | Ingesta de documentos, chunking, embedding y recuperación |
| Agent Engine | Agentes con Function Calling y ReAct, herramientas integradas |
| Prompt IDE | Editor con pruebas A/B, comparación de modelos |
| LLMOps | Logs, análisis de rendimiento, anotaciones y mejora continua |
| BaaS | APIs REST para integrar en cualquier aplicación externa |
Dify se despliega en tres modalidades: Dify Cloud (sin instalación, con 200 GPT-4 gratis), Community Edition (self-hosted con Docker) y Enterprise (características adicionales para organizaciones). Para este curso usaremos la Community Edition.
La forma más rápida de tener Dify funcionando es con Docker Compose. Los requisitos mínimos del sistema son CPU de 2 núcleos y 4 GB de RAM.
git clone https://github.com/langgenius/dify.git
cd dify/docker
cp .env.example .env
Edita .env para configurar claves de API, base de datos y servicios externos.
docker compose up -d
Abre http://localhost/install en tu navegador y completa la configuración inicial: crea tu cuenta de administrador y configura el primer modelo.
$ docker compose ps
NAME STATUS PORTS
dify-api Up 5001/tcp
dify-web Up 3000/tcp
dify-db Up 5432/tcp
dify-redis Up 6379/tcp
dify-nginx Up 0.0.0.0:80->80/tcp
Si ves errores de permiso, asegúrate de que docker y docker compose (v2.24+) estén instalados.
En Linux, añade tu usuario al grupo docker: sudo usermod -aG docker $USER.
El corazón de Dify es su Workflow Visual Builder. Es un canvas donde arrastras y conectas nodos para construir aplicaciones complejas sin escribir código de orquestación.
| Nodo | Función |
|---|---|
| LLM | Ejecuta una llamada a un modelo de lenguaje |
| Knowledge Retrieval | Recupera documentos de la base de conocimiento |
| Code | Ejecuta código Python o Node.js inline |
| Http Request | Hace peticiones a APIs externas |
| Condition | Ruteo condicional (if/else) |
| Loop | Iteración sobre listas de datos |
| Template Transform | Transforma texto con plantillas |
| Variable Assignment | Asigna y modifica variables del flujo |
| Classifier | Clasificación por categorías |
| Iteration | Procesa arrays elemento por elemento |
El workflow se ejecuta en dos modos: Chatflow (conversacional, con memoria) y Workflow (batch, sin estado). Puedes probar cada nodo individualmente antes de encadenarlos.
Cada nodo tiene un panel de depuración que muestra las entradas, salidas y errores en tiempo real. Útil para depurar flujos complejos paso a paso.
Dify ofrece soporte para cientos de modelos de docenas de proveedores diferentes. Puedes conectar tanto modelos propietarios (OpenAI, Anthropic, Google) como open-source (Llama 3, Mistral) alojados localmente o en la nube.
| Proveedor | Modelos | Autenticación |
|---|---|---|
| OpenAI | GPT-4o, GPT-4, GPT-3.5 | API Key |
| Anthropic | Claude 3.5 Sonnet, Claude 3 Opus | API Key |
| Gemini 1.5 Pro, Gemini 1.5 Flash | API Key | |
| Ollama | Llama 3, Mistral, Qwen (local) | URL + API Key (opcional) |
| Azure OpenAI | GPT-4, GPT-3.5 | Endpoint + API Key |
| Hugging Face | Miles de modelos open-source | API Token |
| Replicate | Llama, Stable Diffusion, Whisper | API Token |
Para añadir un modelo, ve a Settings → Model Provider y configura las credenciales. Dify unifica todos los modelos bajo una interfaz común compatible con la API de OpenAI, facilitando el cambio entre proveedores sin modificar el código de la aplicación.
Si usas Ollama para modelos locales, asegúrate de que el contenedor de Ollama sea accesible desde la red de Docker de Dify.
Usa http://host.docker.internal:11434 en macOS/Windows o la IP del host en Linux.
El Prompt IDE de Dify es un entorno completo para diseñar, probar y optimizar prompts. A diferencia de editar prompts en código, aquí puedes experimentar visualmente con variables, contexto y formato.
{{variable}} para inyectar contexto dinámicoUn flujo típico: diseñas un prompt en el IDE, seleccionas dos modelos (ej: GPT-4o y Claude 3.5), los ejecutas en paralelo, comparas las respuestas, y promocionas la mejor combinación a producción.
Usa la plantilla de sistema para definir el comportamiento base del asistente y las variables para datos específicos de cada conversación. Así separas lógica de datos.
El pipeline RAG (Retrieval-Augmented Generation) de Dify permite conectar tus propios documentos a las aplicaciones de IA. Es uno de los diferenciadores clave frente a soluciones puramente basadas en prompts.
Sube documentos en PDF, DOCX, TXT, Markdown, HTML o desde APIs. Dify extrae el texto automáticamente.
Divide los documentos en fragmentos (chunks) con configuración de tamaño y solapamiento. Soporta chunking por párrafos, oraciones o tokens.
Cada chunk se convierte en un vector usando modelos de embedding (OpenAI, Hugging Face, etc.) y se almacena en una base de datos vectorial (Qdrant, Weaviate, Milvus o la interna).
Cuando llega una consulta, se vectoriza, se buscan los chunks más similares, y se inyectan como contexto en el prompt del LLM para generar la respuesta.
Dify soporta múltiples estrategias de recuperación: búsqueda por similitud, búsqueda híbrida (similitud + palabras clave) y reranking con modelos especializados.
Si la recuperación no encuentra resultados relevantes, prueba a: (1) reducir el tamaño de chunk, (2) aumentar el solapamiento entre chunks, o (3) cambiar a una estrategia de búsqueda híbrida con reranker.
Dify permite definir agentes autónomos que pueden planificar y ejecutar tareas utilizando herramientas. Soporta dos paradigmas principales: Function Calling (modelos que declaran funciones nativamente) y ReAct (razonamiento + acción para modelos que no soportan function calling).
Usuario
┣┃
┗── Dify Agent
┣┃ Instrucciones del sistema
┣┃ Memoria conversacional
┣┃ Prompt de razonamiento
┗── Herramientas
┣┃ Google Search
┣┃ DALL·E
┣┃ WolframAlpha
┣┃ Stable Diffusion
┗── APIs personalizadas
Para crear un agente: selecciona Agent como tipo de aplicación, escribe las instrucciones del sistema, añade las herramientas que necesite y elige el modo de ejecución (Function Calling o ReAct).
Comienza con el modo Function Calling si usas GPT-4o o Claude 3.5. Es más eficiente y fiable. El modo ReAct es útil para modelos open-source que no soportan function calling.
Dify incluye más de 50 herramientas pre-construidas listas para usar. Estas herramientas se conectan a servicios externos y amplían las capacidades de tus agentes.
| Categoría | Herramientas |
|---|---|
| Búsqueda | Google Search, Bing Search, SerpAPI, SearXNG |
| Imagen | DALL·E, Stable Diffusion, Replicate (imagen) |
| Datos | WolframAlpha, Yahoo Finance, CoinGecko |
| Productividad | Google Calendar, Gmail, Notion, Slack, Jira, Trello |
| Desarrollo | GitHub, GitLab, Stack Exchange |
| Audio/Video | Whisper (transcripción), YouTube Transcript |
| Web | Web scraping, RSS Feeds, Wikipedia |
| Almacenamiento | Google Drive, Dropbox, S3 |
Además de las herramientas integradas, puedes crear herramientas personalizadas definiendo endpoints HTTP con especificación OpenAPI/Swagger. Dify las descubre automáticamente y las expone como herramientas invocables por el agente.
// Ejemplo: herramienta personalizada para tu API
POST /api/v1/tools/custom
{
"name": "get_weather",
"description": "Obtiene el clima actual de una ciudad",
"parameters": {
"city": {"type": "string", "description": "Nombre de la ciudad"}
}
}
Una vez en producción, necesitas saber cómo se comporta tu aplicación. Dify incluye capacidades de LLMOps para monitorizar, analizar y mejorar continuamente el rendimiento de tus aplicaciones.
Dify se integra con plataformas de observabilidad externas:
Configura Langfuse desde el primer día. Te permite ver la traza completa de cada llamada: qué prompt se usó, qué documentos se recuperaron, qué herramientas se ejecutaron y cuánto costó.
Todas las aplicaciones creadas en Dify exponen APIs REST automáticas. Esto significa que cualquier aplicación externa puede consumir tus flujos de IA sin necesidad de integración adicional.
| Tipo | Endpoint | Uso |
|---|---|---|
| Chat | /chat-messages | Aplicaciones conversacionales con memoria |
| Workflow | /workflows/run | Ejecución de flujos batch sin estado |
| Knowledge | /datasets/{id}/documents | Gestión de bases de conocimiento |
| Audio | /audio-to-text / /text-to-audio | Transcripción y síntesis de voz |
curl -X POST "https://tu-dify.app/chat-messages" \
-H "Authorization: Bearer app-xxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"query": "¿Cuáles son las últimas tendencias en IA?",
"user": "usuario-123",
"conversation_id": ""
}'
Para entornos productivos, Dify recomienda:
Nunca expongas tu API Key de Dify en el frontend. Usa un proxy o backend intermedio. Las claves de aplicación (app-xxx) deben tratarse como secretos de producción.
Sí, la Community Edition es completamente open-source (código en GitHub con licencia Apache 2.0). Dify Cloud tiene un plan sandbox gratuito con 200 llamadas GPT-4 incluidas. La edición Enterprise añade características como SSO, auditoría y soporte premium.
Sí. Dify se integra con Ollama, Hugging Face, Replicate y cualquier API compatible con OpenAI. Puedes ejecutar Llama 3, Mistral o Qwen localmente y conectarlos a Dify.
Sí. La interfaz está traducida a más de 15 idiomas (incluyendo español). Las aplicaciones que construyas heredan el idioma del prompt del sistema. El RAG pipeline procesa documentos en cualquier idioma.
Ambos son visual builders, pero Dify se enfoca más en el ciclo completo de desarrollo LLM (incluye LLMOps, BaaS, gestión de usuarios), mientras que LangFlow es un builder de flujos más puro. Dify tiene 150K estrellas vs 152K de LangFlow — ambos son líderes del sector.