LoRA training
Train a MiniMax H3 LoRA locally
MiniMax H3 is the video model, and it trains on still images. It learns appearance, meaning look, style, character and lighting, and the finished adapter then applies to all four H3 nodes at generation time. It does not learn motion or sound, because it never sees any. The unusual part is where the cost sits: the peak is set before a single training step runs, so 512px and 768px cost exactly the same, and a 16GB card is out regardless.

The Trainer canvas. The run pictured is a Z-Image LoRA, and the graph is the same shape for every architecture.
Which base to train on
Pick the architecture in the Trainer's Adjust panel, then a base within it. Training directly on a step-distilled checkpoint breaks the distillation down, so every architecture offers a way around that.
FL2VA, the only base
It is undistilled, so there is no adapter to download and nothing to drift. Train on stills, then wire the LoRA into any of the four H3 nodes. It loads on the Reference to Video node too, which uses a different checkpoint file: the two partitions are the same architecture.
4-bit, always
H3 is 40GB after the AdaLN factorisation and 11.7GB after quantisation, so full precision is refused up front rather than offered and then failing partway through a run. There is no base-precision control for H3 for the same reason.
What the trainer needs on disk: minimax_h3_fl2va_bf16.safetensors, in models/diffusion_models/. Nothing is downloaded behind your back, and a run that is missing a file stops and names it.
MiniMax H3 LoRA training VRAM, measured
Peak allocation at 12 steps, rank 16, batch 1, with gradient checkpointing on. The number is torch.cuda.max_memory_allocated, so leave headroom for the CUDA context and allocator slack.
| Configuration | L40S (46GB) | T4 (15GB) |
|---|---|---|
| 512px, 4-bit base | 20.6GB | not measured |
| 768px, 4-bit base | 20.6GB | not measured |
Where the peak comes from
The run has three phases that never overlap, and the tallest is not the one doing the learning:
| Phase | Peak | What is resident |
|---|---|---|
| Latent caching (video VAE) | 10.8GB | The fp32 video VAE, then dropped |
| Caption caching (Qwen3-VL) | 20.5GB | The 32B conditioner at 4-bit, then dropped |
| Training | 11.7GB | The 4-bit base, 62GB on disk, plus activations |
Both resolutions read the same because the peak is set before training starts. Training itself sits at 11.7GB, and a 512px still is only 310 rows of packed sequence against 630 at 768px, so on H3 the weights are the cost rather than the activations. A 16GB card cannot train H3 at all: the caption pass alone needs 20.5GB, and below about 24GB there is no configuration that fits. Host RAM stays near 1.1GB throughout, because each block is shrunk as its tensors land rather than after the whole model is read.
See the full matrix in the README, or compare all three architectures.
How long a run takes
- Steps are fast. On an L40S a step is about 0.63s at 512px and 0.77s at 768px, so a 1500-step run is roughly 16 to 19 minutes of actual training.
- Startup is not. Getting there takes about 7 minutes first, while the 62GB checkpoint streams block by block and each one is factorised and quantised, with the two caching passes running before it. That cost is per run and does not scale with steps, so it hurts a short run far more than a long one.
- H3 has not been timed on a T4, and would not fit one. The download is about 124GB before any of this.
MiniMax H3 LoRA training FAQ
What GPU do I need to train a MiniMax H3 LoRA?
A 24GB card is the floor. The run peaks at about 20.6GB on an L40S, and a 16GB card cannot do it at any resolution or setting, because the caption pass alone needs 20.5GB. The 24GB figure is interpolated from that measured peak rather than measured on a 24GB card.
Why do 512px and 768px cost the same?
Because the high-water mark is the caption caching pass, not training. The 32B conditioner needs 20.5GB while it is resident, and it is dropped before the base loads. Training itself sits at 11.7GB, and going from 512 to 768 only moves the packed sequence from 310 rows to 630, which is small next to the weights.
Does an H3 LoRA learn motion?
No. It trains on still images, so it learns appearance: look, style, character and lighting. It never sees motion or sound and so cannot learn either. This is how image LoRAs for video models are normally trained, and the adapter still applies across all four H3 nodes at generation time.
Can I train H3 at full precision?
No, and the trainer refuses rather than letting you start a run that would fail hours later. H3 is 40GB after the AdaLN factorisation and 11.7GB once quantised, so the 4-bit base is the only path and there is no base-precision control for this architecture.
Train your first MiniMax H3 LoRA
Free and open source. Runs on macOS, Windows, and Linux.