Dify is a visual IDE for AI: connect models, prompts, tools, and data through a drag-and-drop interface, then ship as a chatbot, REST API, or automated workflow. It supports 100+ LLMs — GPT-4o, Claude, Gemini, Llama, DeepSeek, and any OpenAI-compatible endpoint.
Free Tier: Cloud vs Self-Hosted
| Option | Cost | Limits | Best For |
|---|---|---|---|
| Dify Cloud (Sandbox) | Free forever | 200 message credits/day, 5 apps, 5 MB knowledge base | Trying Dify without setup |
| Self-Hosted (Community) | Free forever | Unlimited apps, messages, users | Production use, full control |
| Cloud Starter | $59/month | Unlimited apps, 10K credits/month | Teams who don't want to host |
The real value is self-hosting. Deploy on any Linux server — even a free Oracle Cloud VM — for the full platform at zero usage cost. You pay only for the LLM API calls you make.
Self-Host with Docker
Docker Compose is the fastest path. The stack (API server, worker, web frontend, PostgreSQL, Redis, Weaviate vector DB, Nginx) comes pre-configured:
# Clone the repository
git clone https://github.com/langgenius/dify.git
cd dify/docker
# Copy and edit environment variables (optional)
cp .env.example .env
# Start all services
docker compose up -d
Dify then starts at http://localhost (port 80).
Resource Requirements
| Setup | CPU | RAM | Disk |
|---|---|---|---|
| Minimal (testing) | 2 cores | 4 GB | 20 GB |
| Recommended (production) | 4 cores | 8 GB | 50 GB |
| High load | 8+ cores | 16+ GB | 100+ GB |
Oracle Cloud's Always Free tier (2 ARM cores, 12 GB RAM since the June 2026 cut) still runs a production Dify instance at zero cost.
Core Features
- Chatbot builder — visual prompt editor with system prompts, conversation memory, and context windows. Deploy as an embeddable widget or shareable link.
- Workflow (agent) builder — multi-step pipelines: LLM calls, tool use, conditional logic, HTTP requests, code execution. Ideal for document processing and content generation.
- RAG knowledge base — upload PDFs, Notion pages, URLs, or text; Dify chunks and embeds automatically so your bot answers from your data.
- 100+ model providers — OpenAI, Anthropic, Google, Mistral, Groq, DeepSeek, Ollama (local), and any OpenAI-compatible endpoint.
- Agent tools — built-in web search, calculator, code interpreter, Wikipedia, DALL-E, plus custom tools from any OpenAPI/Swagger spec.
- API + webhook publishing — every app exposes a REST API automatically, no extra backend needed.
Build Your First Chatbot
A customer-support bot with a knowledge base, in under 10 minutes:
1. Connect an LLM. In Settings → Model Providers, add your API key. For free options use Groq or a local Ollama model.
2. Create a knowledge base. Upload docs/FAQs (Dify handles chunking and vector indexing), or import via API:
curl -X POST 'http://localhost/v1/datasets'
-H 'Authorization: Bearer {dataset_api_key}'
-H 'Content-Type: application/json'
-d '{"name": "Support Docs"}'
3. Create the app. Create App → Chatbot → Basic, then set the prompt and attach your knowledge base under Context:
You are a helpful customer support agent for Acme Inc.
Answer questions based on the provided context.
If you don't know the answer, say "I'll connect you with a human agent."
Be concise and friendly.
4. Publish and integrate. Click Publish → API Access for your key, then call it from any app:
import requests
url = "http://localhost/v1/chat-messages"
headers = {
"Authorization": "Bearer app-your-api-key",
"Content-Type": "application/json"
}
payload = {
"inputs": {},
"query": "How do I reset my password?",
"response_mode": "blocking",
"conversation_id": "",
"user": "user-123"
}
response = requests.post(url, headers=headers, json=payload)
print(response.json()["answer"])
Workflow Example: Document Summarizer
A workflow that accepts a URL, fetches its content, and returns a structured summary — built visually, then called via API:
# Workflow nodes (configured visually in Dify):
# 1. Start node — input: {url: string}
# 2. HTTP Request node — GET {url}
# 3. LLM node — prompt:
# "Summarize this article. Return JSON with:
# - title: string
# - summary: 2-3 sentences
# - key_points: list of 3-5 bullets
# - action_items: list (if any)
# Article: {{http_response.body}}"
# 4. End node — output: {result: LLM_output}
# Call the workflow via API:
curl -X POST 'http://localhost/v1/workflows/run'
-H 'Authorization: Bearer app-your-key'
-H 'Content-Type: application/json'
-d '{
"inputs": {"url": "https://example.com/article"},
"response_mode": "blocking",
"user": "user-123"
}'
Trigger Dify from Chat with OpenClaw
Pair Dify with OpenClaw to run your workflows from natural-language commands via WhatsApp or Telegram — no frontend code. Configure a custom HTTP tool:
{
"name": "summarize_url",
"description": "Summarize any URL using Dify",
"method": "POST",
"url": "http://your-dify-server/v1/workflows/run",
"headers": {
"Authorization": "Bearer app-your-key"
},
"body": {
"inputs": {"url": "{{url}}"},
"response_mode": "blocking",
"user": "openclaw"
}
}
Message OpenClaw "summarize https://example.com/article" and it calls your Dify workflow, returning a structured summary.
Dify vs Alternatives
| Platform | Price | Self-Hosted | No-Code UI | RAG Support | Workflow Builder |
|---|---|---|---|---|---|
| Dify | Free (OSS) | Yes | Yes | Yes | Yes |
| FlowiseAI | Free (OSS) | Yes | Yes | Yes | Partial |
| LangFlow | Free (OSS) | Yes | Yes | Yes | Yes |
| n8n + AI nodes | Free (OSS) | Yes | Yes | No | Yes |
| Botpress | Free tier | Limited | Yes | Partial | Yes |
| Voiceflow | Paid | No | Yes | Partial | Yes |
Dify wins on the combination: a polished no-code UI, proper RAG pipelines, a visual workflow builder, multi-model support, and full self-hosting — all in one free package.
Who Should Use Dify?
- Developers: prototype AI apps in hours, expose as API, integrate into existing products.
- Small teams: build internal tools (support bot, doc Q&A) without hiring ML engineers.
- Startups: ship AI features with zero infra cost on Oracle Cloud's free tier.
- Enterprises: self-host for full data control, compliance, and unlimited scale.
- Agencies: deliver client chatbots with a repeatable, no-code workflow.
Final Recommendation
Dify is the fastest path from "I want an AI chatbot" to a production deployment. The self-hosted version is completely free with no usage limits — you pay only for LLM API calls, and with free tiers from Groq, Gemini, or DeepSeek you can run a full AI app at zero cost. For most teams building internal tools, support bots, or content pipelines, the workflow builder alone replaces what would otherwise need LangChain, a custom API server, and a React frontend.
Get started: dify.ai | GitHub (80k+ stars) | Documentation