Fine-tune video and image models at scale with NVIDIA NeMo Automodel and 🤗 Diffusers NVIDIA and Hugging Face announced a collaboration integrating NVIDIA NeMo Automodel with the Hugging Face Diffusers library, enabling distributed fine-tuning of diffusion models at scale without checkpoint conversion. The open-source integration supports models like FLUX.1-dev, Wan 2.1, and HunyuanVideo, allowing users to scale training from one to hundreds of GPUs using configurable parallelism strategies. Text-to-Image • 20B • Updated • 185k • 2.54k Fine-tune video and image models at scale with NVIDIA NeMo Automodel and 🤗 Diffusers Enterprise + Article /blog A joint post from NVIDIA and Hugging Face. Special thanks to Sayak Paul from Hugging Face for their contributions to the integration work and for co-authoring this blog. Diffusion models power some of the most exciting open-source releases of the last two years — such as FLUX.1-dev https://huggingface.co/black-forest-labs/FLUX.1-dev for text-to-image and Wan 2.1 https://huggingface.co/Wan-AI/Wan2.1-T2V-1.3B-Diffusers and HunyuanVideo https://huggingface.co/hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-720p t2v for text-to-video. The 🤗 Diffusers https://github.com/huggingface/diffusers library has become the de facto home for these models, giving researchers and builders a single, consistent interface for inference, adaptation, and pipeline composition. In addition, training and fine-tuning diffusion models are also on the rise, requiring utilities that offer memory-efficient sharding, latent caching, multiresolution bucketing, and configurations that scale gracefully from one GPU to hundreds. To cater to these technical demands, we offer the NVIDIA NeMo Automodel https://github.com/NVIDIA-NeMo/Automodel open-source library. Today, we're highlighting the collaboration between NVIDIA and Hugging Face that brings production-grade, distributed diffusion training to any Diffusers-format model on the Hugging Face Hub — with no checkpoint conversion and no model rewrites for any new model. The integration is documented in the Diffusers training guide https://docs.nvidia.com/nemo/automodel/recipes-e2e-examples/diffusion-fine-tuning and is fully open source under Apache 2.0. Table of contents What is NeMo Automodel? what-is-nemo-automodel Supported diffusion models supported-diffusion-models What this collaboration unlocks what-this-collaboration-unlocks A look at the fine-tuning workflow a-look-at-the-fine-tuning-workflow Other Finetuned/LoRA examples other-finetunedlora-examples Try it today try-it-today Coming next: Pythonic recipe APIs coming-next-pythonic-recipe-apis Resources resources What is NeMo Automodel? NeMo Automodel is an open-source PyTorch DTensor-native training library, part of the NVIDIA NeMo framework, built around two design principles that matter for the Diffusers ecosystem: Hugging Face native. Point pretrained model name or path at any Diffusers model ID on the Hub and start training. NeMo Automodel uses Diffusers model classes e.g. WanTransformer3DModel for loading and Diffusers pipelines WanPipeline for generation. Checkpoints round-trip cleanly back into the Diffusers ecosystem. One program, any scale. The recipes and training scripts can be easily modified to suit training at any scale. Parallelism is a configuration choice, not a code rewrite — switch between FSDP2, tensor parallel, expert parallel, context parallel, and pipeline parallel by declaring configurations, not rewriting models. AutoModel currently supports flow-matching models only. Under the hood, it uses flow matching as the training objective, with latent-space training via pre-encoded VAE outputs and multiresolution bucketed dataloading to accelerate throughput. Supported diffusion models NeMo Automodel integration ships with ready-to-use fine-tuning recipes for the open diffusion models below. The list reflects the recipes currently in examples/diffusion/finetune . | Model | Hugging Face ID | Task | Parameters | LoRA recipe | |---|---|---|---|---| | Wan 2.1 T2V 1.3B / 14B | Wan-AI/Wan2.1-T2V-1.3B-Diffusers | Wan-AI/Wan2.1-T2V-14B-Diffusers Wan-AI/Wan2.2-T2V-A14B-Diffusers black-forest-labs/FLUX.1-dev black-forest-labs/FLUX.2-dev hunyuanvideo-community/HunyuanVideo-1.5-Diffusers-720p t2v Qwen/Qwen-Image What this collaboration unlocks For Diffusers users, the practical gains break down into a few concrete capabilities. No checkpoint conversion. Pretrained weights from the Hub work out of the box. There's no separate "training format" to convert to, then convert back. Your fine-tuned checkpoint loads directly into a DiffusionPipeline for inference, or back to the Hub for sharing. Downstream tools — quantization, compilation, LoRA adapters, custom samplers — all keep working. Fast path to new model support. When a new diffusion model lands in Diffusers, enabling it in NeMo Automodel takes a small, contained code addition — a data preprocessing handler and a model adapter — rather than a full custom training script. The rest of the recipe stack FSDP2, bucketed dataloading, checkpointing, generation carries over unchanged, and the same YAML-driven workflow applies. Full and parameter-efficient fine-tuning. Both full fine-tuning and LoRA-style PEFT are supported, so you can choose between maximum quality full FT on a large cluster or maximum efficiency LoRA on a single node . The same recipe structure handles both. Scalable training that goes beyond what built-in scripts offer. NeMo Automodel adds sharding schemes such as FSDP2, tensor, context, and pipeline parallelisms, multi-node orchestration SLURM today, Kubernetes coming , and multiresolution bucketing. These capabilities make training larger models like FLUX.1-dev 12B and HunyuanVideo 13B possible. A look at the fine-tuning workflow In this section, we walk through the typical workflow for fine-tuning any of the supported models. The recommended way to install Automodel is the NeMo Automodel Docker container nvcr.io/nvidia/nemo-automodel:26.06 , which ships with PyTorch, TransformerEngine, and other CUDA-compiled dependencies pre-built. Alternatively, install with pip3 install nemo-automodel or from source pip3 install git+https://github.com/NVIDIA-NeMo/Automodel.git ; see the installation guide https://docs.nvidia.com/nemo/automodel/latest/get-started/installation for all options. This guide walks through a full-transformer fine-tune of FLUX.1-dev on the 78-card Rider–Waite tarot dataset https://huggingface.co/datasets/multimodalart/1920-raider-waite-tarot-public-domain , then generating from the resulting checkpoint. It reuses the checked-in YAML configs and applies run-specific settings as command-line overrides, so no new config files are required. 1. Pre-encode the dataset The diffusion recipe consumes cached VAE latents and text embeddings instead of encoding source images during every training step. Stream the 78 Rider–Waite images directly from Hugging Face and distribute preprocessing across all visible GPUs: uv run --locked --no-default-groups \ --extra diffusion \ --extra diffusion-media \ python -m tools.diffusion.preprocessing multiprocess image \ --dataset name multimodalart/1920-raider-waite-tarot-public-domain \ --dataset media column image \ --dataset caption column caption \ --dataset streaming \ --max images 78 \ --output dir /cache/flux tarot \ --processor flux \ --model name black-forest-labs/FLUX.1-dev \ --max pixels 245760 The captions already contain the trtcrd trigger token. With this pixel budget and the dataset's portrait aspect ratio, preprocessing assigns the samples to the 384×640 bucket used by the showcase run. For image training, preprocessing produces .pt cache files and sharded metadata: /cache/flux tarot/ ├── 384x640/ │ ├──