NVIDIA та Hugging Face представили NeMo Automodel для тонкого налаштування моделей Diffusers
NVIDIA та Hugging Face запустили відкриту бібліотеку NeMo Automodel на базі PyTorch DTensor. Вона дозволяє тонко налаштовувати великі моделі дифузії без конвертації чекпойнтів.
Вплив: Середній
Чому це важливо
Розробники можуть навчати великі моделі генерації медіа на власних даних, масштабуючи процес через YAML-файли без зміни коду скриптів.
TL;DR
- 01NeMo Automodel пов'язує моделі Diffusers з Hugging Face Hub із розподіленим навчанням PyTorch DTensor.
- 02Підтримує складні механізми паралелізму (FSDP2, тензорний тощо) через декларативні налаштування YAML.
- 03Усуває потребу в ручній конвертації чекпойнтів для моделей генерації зображень та відео.
Ключові факти
- Відкрита ліцензія
- Apache 2.0
- Рекомендований образ Docker
- nvcr.io/nvidia/nemo-automodel:26.06
- Основа тренувального середовища
- PyTorch DTensor
Інтеграція без зайвих кроків конвертації
NeMo Automodel — це відкрита бібліотека для навчання моделей на базі PyTorch DTensor, ліцензована під Apache 2.0. Попередньо навчені ваги завантажуються з Hugging Face Hub за допомогою параметра pretrained_model_name_or_path, а вихідні чекпойнти одразу імпортуються назад в інференс-пайплайни. Це спрощує роботу з квантизацією, компіляцією та LoRA.
Декларативне масштабування через YAML
Завдяки Automodel стратегії паралелізму налаштовуються у файлі конфігурації. Ви можете перемикатися між FSDP2, тензорним, контекстним чи конвеєрним паралелізмом без переписування логіки скрипта.
Командний інтерфейс для навчання FLUX.1-dev
Спочатку виконайте кешування латентів VAE для прискорення тренування на кількох GPU:
python -m tools.diffusion.preprocessing_multiprocess image \
--dataset_name multimodalart/1920-raider-waite-tarot-public-domain \
--model_name black-forest-labs/FLUX.1-devЗапустіть скрипт тонкого налаштування з конфігурацією FSDP2:
uv run --locked --no-default-groups --extra diffusion \
examples/diffusion/finetune/finetune.py \
-c examples/diffusion/finetune/flux_t2i_flow.yaml \
--data.dataloader.cache_dir /cache/flux_tarot \
--data.dataloader.base_resolution '[384,640]' \
--lr_scheduler.lr_decay_style constant \
--checkpoint.checkpoint_dir /tmp/flux_tarot/checkpoints/fullПісля завершення згенеруйте зображення прямо з отриманого чекпойнта:
uv run --locked --no-default-groups --extra diffusion \
python examples/diffusion/generate/generate.py \
-c examples/diffusion/generate/configs/generate_flux.yaml \
--model.checkpoint /tmp/flux_tarot/checkpoints/full/epoch_66_step_199 \
--inference.prompts '["a trtcrd of an astronaut tending a rose garden on Mars"]' \
--output.output_dir /tmp/flux_tarot/generations/full/step_200Спробуй за 2 хвилини
pip3 install nemo-automodelbash
✓ Коли використовувати
- Для тонкого налаштування великих моделей генерації зображень та відео на системах з кількома GPU.
✕ Коли НЕ варто
- Якщо ви працюєте з архітектурами, відмінними від дифузійних моделей flow-matching.
Що зробити сьогодні
- Завантажте готовий образ Docker `nvcr.io/nvidia/nemo-automodel:26.06`, щоб уникнути ручного збирання CUDA-залежностей.
- Запустіть скрипт попередньої обробки тестового набору даних для кешування латентів VAE перед початком тонкого налаштування.
Джерела