Qwen-ImageForFlo-Advanced / UPDATE_NOTES.md
Gerchegg's picture
Upload UPDATE_NOTES.md with huggingface_hub
b27a83f verified
# 🔄 Обновление Qwen-ImageForFlo-Advanced
## ✨ Что изменено
### 1. Опциональный импорт `spaces`
- ✅ Модуль `spaces` теперь опциональный
- ✅ Работает на RunPod, локально и в HF Spaces
- ✅ Автоматически определяет окружение
### 2. Автоматическая загрузка ControlNet
-**Автоматически проверяет** наличие ControlNet в кэше
-**Автоматически скачивает** если модели нет
-**Определяет путь** кэша (RunPod: `/workspace/.cache` или локально: `~/.cache`)
- ✅ Корректная обработка ошибок
### 3. Правильные препроцессоры ControlNet
-**OpenposeDetector** - для Pose detection
-**AnylineDetector** - для Soft Edge detection
-**DepthAnythingV2** - для Depth map extraction
-**Fallback режимы** - если препроцессоры недоступны
- ✅ Добавлен **"Soft Edge"** в выбор control types
### 4. Исправлены параметры API
- ✅ Параметр `controlnet_scale``controlnet_conditioning_scale`
- ✅ Соответствует стандартному API Diffusers
---
## 📝 Что делает новый код
### Проверка окружения:
```python
# Используем /workspace/.cache на RunPod или ~/.cache локально
if os.path.exists("/workspace"):
cache_base = Path("/workspace/.cache")
else:
cache_base = Path.home() / ".cache"
```
### Автоматическая загрузка:
```python
if not cache_dir.exists():
logger.info(" 📥 ControlNet не найден в кэше, скачиваю...")
snapshot_download(
repo_id=controlnet_model_id,
local_dir=cache_dir,
token=hf_token
)
logger.info(" ✓ ControlNet успешно загружен в кэш")
```
---
## 🚀 Как использовать
### На RunPod:
```bash
# 1. Скачать проект
cd /workspace
hf download Gerchegg/Qwen-ImageForFlo-Advanced --repo-type space --local-dir Qwen-ImageForFlo-Advanced
# 2. Установить зависимости
cd Qwen-ImageForFlo-Advanced
pip install -r requirements.txt
# 3. Запустить (ControlNet скачается автоматически!)
python app.py
```
### Локально:
```bash
# Клонировать и запустить
git clone https://huggingface.co/spaces/Gerchegg/Qwen-ImageForFlo-Advanced
cd Qwen-ImageForFlo-Advanced
pip install -r requirements.txt
python app.py
```
---
## ✅ Преимущества
1. **Не нужно вручную качать ControlNet** - всё автоматически
2. **Работает везде** - RunPod, локально, HF Spaces
3. **Умный кэш** - использует правильную директорию в зависимости от окружения
4. **Graceful degradation** - если ControlNet не загружается, приложение продолжит работать
5. **Правильные препроцессоры** - из референсной реализации InstantX
6. **Полная поддержка**: Canny, Soft Edge, Depth, Pose
---
## 📊 Загружаемые модели и препроцессоры
### Основные модели:
1. **Text2Image** - Qwen-Soloband-Diffusers (~40GB)
2. **Image2Image** - Создается из Text2Image
3. **ControlNet** - InstantX/Qwen-Image-ControlNet-Union (~3GB) - **АВТОМАТИЧЕСКИ!**
### Препроцессоры:
1. **OpenPose** - lllyasviel/Annotators (для Pose detection)
2. **Anyline** - TheMistoAI/MistoLine (для Soft Edge)
3. **Depth Anything V2** - depth-anything/Depth-Anything-V2-Large (для Depth maps)
Все препроцессоры загружаются автоматически при первом запуске!
---
## 🎯 Итог
Теперь для запуска Advanced версии достаточно:
1. Скачать проект
2. Установить зависимости
3. Запустить app.py
**Всё остальное скачается автоматически!** 🚀