Add ComfyUI configuration for image generation with ROCm support

- Docker Compose setup with ROCm for RX 7800 XT (gfx1101)
- Auto-download script for SDXL models
- Basic SDXL workflow for testing
- Full documentation in README.md
- Update .gitignore to exclude model files (too large)
This commit is contained in:
Folzo
2026-04-05 23:17:45 +02:00
parent 4473f56240
commit ad2f7bb221
5 changed files with 432 additions and 0 deletions
+181
View File
@@ -0,0 +1,181 @@
# 🎨 Effi - ComfyUI (Génération d'Images)
Configuration Docker de ComfyUI avec support ROCm pour RX 7800 XT.
## 📋 Prérequis
- Docker et Docker Compose installés
- ROCm 6.x installé sur l'hôte
- RX 7800 XT (16GB VRAM)
- ~20GB d'espace disque libre
## 🚀 Installation
### 1. Copier cette configuration sur folzo-Corp
```bash
cd ~/
git clone https://gitea.folzocorp.fr/Folzo/effi.git
cd effi/comfyui
```
### 2. Télécharger le modèle SDXL Base
```bash
# Créer le dossier models/checkpoints
mkdir -p models/checkpoints
# Télécharger SDXL Base (6.9GB)
wget -O models/checkpoints/sd_xl_base_1.0.safetensors \
"https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors"
# Alternative avec huggingface-cli (si installé)
# huggingface-cli download stabilityai/stable-diffusion-xl-base-1.0 \
# sd_xl_base_1.0.safetensors --local-dir models/checkpoints
```
### 3. Lancer ComfyUI
```bash
docker compose up -d
```
### 4. Vérifier le fonctionnement
```bash
# Logs
docker logs -f comfyui
# Accès web
http://192.168.1.11:8188
```
## 🔧 Configuration ROCm
Cette configuration utilise les variables d'environnement ROCm pour la RX 7800 XT:
- `HIP_VISIBLE_DEVICES=0` - Utilise le premier GPU
- `HSA_OVERRIDE_GFX_VERSION=11.0.1` - Force l'architecture gfx1101 (Navi 32)
- `PYTORCH_HIP_ALLOC_CONF=expandable_segments:True` - Optimisation mémoire PyTorch
## 📁 Structure des dossiers
```
comfyui/
├── docker-compose.yml # Configuration Docker
├── models/
│ ├── checkpoints/ # Modèles principaux (SDXL, etc.)
│ ├── vae/ # Encodeurs/décodeurs VAE
│ └── loras/ # Modères LoRA pour fine-tuning
├── output/ # Images générées
├── input/ # Images d'entrée (img2img)
├── custom_nodes/ # Extensions ComfyUI
└── workflows/ # Workflows sauvegardés
```
## 🖼️ Modèles recommandés
### Pour RX 7800 XT 16GB
| Modèle | Taille | VRAM | Usage |
|--------|--------|------|-------|
| SDXL Base 1.0 | 6.9GB | 8-10GB | Usage général |
| SDXL Lightning | 6.9GB | 8-10GB | Génération rapide |
| RealVisXL | 6.9GB | 8-10GB | Photoréalisme |
### Commandes de téléchargement
```bash
# SDXL Base
wget -O models/checkpoints/sd_xl_base_1.0.safetensors \
"https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors"
# SDXL VAE (optionnel mais recommandé)
wget -O models/vae/sdxl_vae.safetensors \
"https://huggingface.co/stabilityai/sdxl-vae/resolve/main/diffusion_pytorch_model.safetensors"
```
## 🔌 Intégration OpenWebUI
Dans OpenWebUI (http://192.168.1.27:3000):
1. Aller dans **Admin Panel** → **Settings** → **Images**
2. **Image Generation Engine**: ComfyUI
3. **ComfyUI URL**: `http://192.168.1.11:8188`
4. **ComfyUI Workflow**: Default
5. Sauvegarder
## 🧪 Tests
### Test via interface web
1. Ouvrir http://192.168.1.11:8188
2. Charger un workflow (bouton **Load**)
3. Sélectionner le modèle SDXL dans le nœud "Load Checkpoint"
4. Modifier le prompt
5. Cliquer **Queue Prompt**
### Test via OpenWebUI
Dans une conversation avec Effi:
```
Dessine-moi un chat astronaute sur la lune
```
## 🐛 Dépannage
### ComfyUI ne démarre pas
```bash
# Vérifier les logs
docker logs comfyui
# Vérifier que ROCm est accessible
docker exec -it comfyui rocm-smi
```
### Erreur mémoire GPU
Réduire la résolution dans le workflow (max 1024x1024 pour SDXL).
### Modèle non trouvé
Vérifier que le fichier `.safetensors` est bien dans `models/checkpoints/`.
### Accès refusé (SELinux)
Les volumes utilisent le flag `:Z` pour SELinux. Si problème persiste:
```bash
sudo chown -R $USER:$USER models/ output/ input/
```
## 📊 Monitoring
```bash
# Surveiller l'utilisation GPU
watch -n 1 docker exec comfyui rocm-smi
# Espace disque utilisé
du -sh models/*
```
## 🔒 Sécurité
- ComfyUI écoute sur `0.0.0.0` (toutes les interfaces)
- Pas d'authentification par défaut
- Accessible uniquement depuis le réseau local
- Port non exposé sur Internet
## 📝 Notes
- Premier démarrage peut être long (téléchargement des dépendances)
- La génération d'image utilise ~8-10GB VRAM
- Laisser de la marge pour Ollama (~6GB)
- Les workflows peuvent être sauvegardés/chargés via l'interface
## 🆘 Support
En cas de problème:
1. Vérifier `docker logs comfyui`
2. Vérifier `rocm-smi` sur l'hôte
3. Consulter https://github.com/comfyanonymous/ComfyUI