Скидка 5% при первом запуске GPU по промокоду Активировать скидку

Обучение FLUX.1 dev LoRA: файлы модели, конфиг и GPU

Рецепт рассчитан на FLUX.1 dev с flux_train_network.py и networks.lora_flux. Он не предназначен для FLUX.1 schnell, FLUX.2, SDXL или GGUF-модели для inference. Проверьте семейство модели до начала платного обучения.

Существующий пресет ComfyUI FLUX запускает schnell для генерации. Его объединённый flux1-schnell-fp8.safetensors не подходит как база этого рецепта. Нужен GPU-инстанс с SSH и отдельное окружение trainer.

1. Подготовьте окружение и доступ

Выполните подготовку сервера и установку общего trainer из руководства SDXL. После проверки окружения вернитесь сюда: скачивать SDXL и запускать его обучение не требуется. В обоих рецептах закреплена версия sd-scripts 690ea7f96c23182352ec63def76d431c6120bd2f.

Перед загрузкой прочитайте карточку FLUX.1 dev и условия доступа. Модель распространяется по некоммерческой лицензии; разрешение на использование сгенерированных изображений не разрешает автоматически любое коммерческое использование модели или её производных. Примите условия своим аккаунтом и используйте токен с правом чтения репозитория. Руководство не обходит ограничение доступа и не распространяет веса.

Команда авторизации ниже запрашивает данные интерактивно. Не вставляйте токен в копируемую команду, TOML или общий лог. При 401/403 сначала решите вопрос с доступом.

2. Скачайте четыре отдельных файла

Компонент Файл в этом рецепте Источник
Transformer flux1-dev.safetensors Репозиторий FLUX.1-dev от Black Forest Labs
Autoencoder ae.safetensors Тот же репозиторий
CLIP-L clip_l.safetensors Репозиторий энкодеров ComfyUI, указанный в документации trainer
T5-XXL t5xxl_fp16.safetensors Тот же репозиторий энкодеров

Нужен transformer из корня репозитория, а не Diffusers-шарды из вложенной папки. Рецепт загружает обычные веса и включает преобразование в FP8 внутри trainer. Это не означает, что подойдёт любая квантизация для inference.

set -euo pipefail
cd /workspace/lora/sd-scripts
source .venv/bin/activate
hf auth login
hf download black-forest-labs/FLUX.1-dev flux1-dev.safetensors ae.safetensors \
  --local-dir /workspace/lora/models
hf download comfyanonymous/flux_text_encoders clip_l.safetensors t5xxl_fp16.safetensors \
  --local-dir /workspace/lora/models
sha256sum /workspace/lora/models/flux1-dev.safetensors \
  /workspace/lora/models/ae.safetensors /workspace/lora/models/clip_l.safetensors \
  /workspace/lora/models/t5xxl_fp16.safetensors > /workspace/lora/config/flux-models.sha256
mkdir -p /workspace/lora/flux1-dev/images /workspace/lora/flux1-dev/holdout

Файлы большие. Заранее проверьте свободный диск и оставьте место для Python-пакетов, кэшей, адаптеров и папок состояния обучения. Остальные требования к серверу разобраны в подборе GPU и бюджета.

3. Подготовьте отдельный датасет и конфиги

Скопируйте изображения и .txt-подписи в /workspace/lora/flux1-dev/images. Если уже обучали SDXL, переносите только пары файлов, без latent-кэша. Проверочные референсы держите вне images.

Сохраните в /workspace/lora/config/ на GPU-сервере:

Начальные параметры: 768 × 768, batch 1, rank/alpha 16, accumulation 4 и 1 000 шагов оптимизатора. Обучается только адаптер модели изображений. Текстовые энкодеры заморожены, их выходы кэшируются, поэтому shuffle/dropout подписей выключены. Специальные параметры модели: guidance_scale = 1.0, timestep_sampling = "flux_shift", model_prediction_type = "raw".

fp8_base = true и blocks_to_swap = 18 снижают объём данных в GPU за счёт точности базы и переноса блоков между CPU и GPU. Это компромисс: важны RAM сервера и скорость передачи, а FP8 может менять результат. Число 18 — начальное экспериментальное значение, не гарантия объёма VRAM. Не сочетайте block swapping с cpu_offload_checkpointing.

set -euo pipefail
cd /workspace/lora/sd-scripts
source .venv/bin/activate
python /workspace/lora/config/check-dataset.py /workspace/lora/flux1-dev/images
python flux_train_network.py --help > /workspace/lora/config/flux-help.txt

4. Проверьте загрузку, кэширование и сохранение

Это реальная работа на GPU. До первого шага оптимизатора может пройти заметное время на кэширование. Запуск проверяет работоспособность рецепта в данном окружении; пять шагов не дают полезно обученный адаптер и не задают лимит расходов.

set -euo pipefail
cd /workspace/lora/sd-scripts
source .venv/bin/activate
test ! -e /workspace/lora/flux1-dev/smoke-output
CUDA_VISIBLE_DEVICES=0 accelerate launch \
  --num_processes 1 --num_machines 1 --mixed_precision bf16 --dynamo_backend no \
  --num_cpu_threads_per_process 2 flux_train_network.py \
  --config_file /workspace/lora/config/flux1-dev-train.toml \
  --max_train_steps 5 --save_every_n_steps 5 \
  --output_dir /workspace/lora/flux1-dev/smoke-output --output_name smoke-flux1-dev \
  2>&1 | tee /workspace/lora/flux1-dev/smoke.log
test -s /workspace/lora/flux1-dev/smoke-output/smoke-flux1-dev.safetensors

Проверьте число изображений, конечные значения loss и сохранённый файл. Если процесс убит без Python traceback, проверьте RAM и диск наряду с видеопамятью. Offloading уменьшает расход VRAM, но может увеличить нагрузку на оперативную память хоста.

5. Обучите и сравните чекпоинты

После успешного smoke test начните новый эксперимент:

set -euo pipefail
cd /workspace/lora/sd-scripts
source .venv/bin/activate
test ! -e /workspace/lora/flux1-dev/output-v1
CUDA_VISIBLE_DEVICES=0 accelerate launch \
  --num_processes 1 --num_machines 1 --mixed_precision bf16 --dynamo_backend no \
  --num_cpu_threads_per_process 2 flux_train_network.py \
  --config_file /workspace/lora/config/flux1-dev-train.toml \
  2>&1 | tee /workspace/lora/flux1-dev/train-v1.log
test -s /workspace/lora/flux1-dev/output-v1/mug-flux1-dev-v1.safetensors

Итоговый файл — mug-flux1-dev-v1.safetensors; промежуточные адаптеры и папки состояния остаются в output. Выбирайте чекпоинт по одинаковым промптам и seed, а не только по номеру последнего шага. Сохраните контрольные суммы базы и точный конфиг вместе с выбранной LoRA.

6. Подключите к совместимому FLUX.1 dev workflow

Адаптер FLUX не работает в скачиваемом SDXL-графе. Для ComfyUI нужен FLUX.1 dev workflow с отдельными загрузчиками diffusion model, CLIP-L/T5 и AE. LoRA добавляется в путь модели. Руководство ComfyUI объясняет расположение файлов и связи узлов. Не проверяйте dev-адаптер на schnell-пресете, чтобы затем ошибочно считать обучение неудачным.

Скачайте результат и состояние для продолжения до завершения инстанса. Эти инструкции не создают автоматический backup, диспетчер обучения или автоматическое завершение аренды.

Рецепт сверен с исходниками и определениями конфигурации, но на GPU не запускался. Источники: закреплённая документация FLUX, файлы текстовых энкодеров. Устранение ошибок · Все руководства.

Готовы запустить?

Запустить GPU-сервер