What is ComfyUI?
ComfyUI is a powerful, node-based interface for Stable Diffusion that allows building complex image generation workflows. It supports SDXL, ControlNet, LoRA, and provides an API for programmatic access.
Installation
git clone https://github.com/comfyanonymous/ComfyUI.git /opt/comfyui
cd /opt/comfyui
pip install -r requirements.txt
# Download SDXL model
wget -P models/checkpoints/ \
https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors
Running
# Start with API enabled
python main.py --listen 0.0.0.0 --port 8188
# With GPU
python main.py --listen 0.0.0.0 --port 8188 --cuda-device 0
API Usage
# Queue a workflow via API
import json, urllib.request
workflow = json.load(open("workflow_api.json"))
# Modify prompt text, seed, etc.
workflow["6"]["inputs"]["text"] = "a beautiful sunset over mountains"
data = json.dumps({"prompt": workflow}).encode("utf-8")
req = urllib.request.Request("http://localhost:8188/prompt", data=data)
urllib.request.urlopen(req)
Features
- Node-based visual workflow builder
- SDXL, SD 1.5, SD 3.0 model support
- ControlNet, LoRA, IP-Adapter integration
- Inpainting and outpainting
- Upscaling with ESRGAN, SwinIR
- API for automation and integration
- Custom node ecosystem