# Multi-scale training and REPA [Contents](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/README.md) · [Previous: Combining an assistant with regularisation](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/experiments/assistant-regularisation.md) · [Next: Learning-rate experiments](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/experiments/learning-rate.md) The fixed-shift multi-scale REPA run produces coherent Domokun beach and bicycle samples with fine texture at 1024px. The comparisons cover single-resolution REPA, multi-scale training, and fixed versus automatic flow shift. | Shared setting | Value | | --- | --- | | Assistant | Frozen v2; disabled for validation | | Regularisation target | **Bare base**, both adapters disabled | | Rank / alpha / precision | 32 / 32 / BF16 | | Optimizer / learning rate | AdamW BF16 / `1e-4` | | Batch / warmup / norm clipping | 1 / 25 updates / 1.0 | | Gradient checkpointing | Interval 2 | | Multi-scale sampling | Domokun-512, Domokun-1024, synthetic-512, synthetic-1024: 0.25 each | | REPA | DINOv2-G patch features, size 518, block 8, weight 0.5, spatial alignment, temporal distance 0 | | Flow shift | Fixed 3, or auto (approximately 1.7138 at 512px and 2.0008 at 1024px) | The three original multi-scale runs share initial concept weights and batch counts: 1,005 Domokun-512, 1,014 Domokun-1024, 1,036 synthetic-512, and 945 synthetic-1024. Training uses square buckets. At 4,000 updates, exposure per resolution approximately matches the 2,000-update single-resolution runs. ## Final checkpoints CPU-generator seed 42 · 40 inference steps · CFG 1 · Details-fixed VAE (madebyollin) · full-frame decoding. Concept adapter only. Columns show prompts; rows show checkpoints or methods. Click a sample to view it at full resolution. ### 512px output
Checkpoint / methodBeachRed scarfBicycleFoxPortrait
BaseBase, 512pxBase, 512pxBase, 512pxBase, 512pxBase, 512px
512px control, 2,000512px control, 2,000, 512px512px control, 2,000, 512px512px control, 2,000, 512px512px control, 2,000, 512px512px control, 2,000, 512px
512px + REPA, 2,000512px + REPA, 2,000, 512px512px + REPA, 2,000, 512px512px + REPA, 2,000, 512px512px + REPA, 2,000, 512px512px + REPA, 2,000, 512px
### 1024px output
Checkpoint / methodBeachRed scarfBicycleFoxPortrait
BaseBase, 1024pxBase, 1024pxBase, 1024pxBase, 1024pxBase, 1024px
512px control, 2,000512px control, 2,000, 1024px512px control, 2,000, 1024px512px control, 2,000, 1024px512px control, 2,000, 1024px512px control, 2,000, 1024px
512px + REPA, 2,000512px + REPA, 2,000, 1024px512px + REPA, 2,000, 1024px512px + REPA, 2,000, 1024px512px + REPA, 2,000, 1024px512px + REPA, 2,000, 1024px
### Multi-scale, 512px output
Checkpoint / methodBeachRed scarfBicycleFoxPortrait
BaseBase, 512pxBase, 512pxBase, 512pxBase, 512pxBase, 512px
Fixed shift, 4,000Multi-scale, fixed shift, 4,000, 512pxMulti-scale, fixed shift, 4,000, 512pxMulti-scale, fixed shift, 4,000, 512pxMulti-scale, fixed shift, 4,000, 512pxMulti-scale, fixed shift, 4,000, 512px
Auto shift, 4,000Multi-scale, auto shift, 4,000, 512pxMulti-scale, auto shift, 4,000, 512pxMulti-scale, auto shift, 4,000, 512pxMulti-scale, auto shift, 4,000, 512pxMulti-scale, auto shift, 4,000, 512px
REPA, fixed shift, 4,000Multi-scale + REPA, fixed shift, 4,000, 512pxMulti-scale + REPA, fixed shift, 4,000, 512pxMulti-scale + REPA, fixed shift, 4,000, 512pxMulti-scale + REPA, fixed shift, 4,000, 512pxMulti-scale + REPA, fixed shift, 4,000, 512px
REPA + auto shift, 4,000character_beach, REPA + auto shift, step 4000, 512pxcharacter_scarf, REPA + auto shift, step 4000, 512pxcharacter_bicycle, REPA + auto shift, step 4000, 512pxprior_fox, REPA + auto shift, step 4000, 512pxprior_portrait, REPA + auto shift, step 4000, 512px
### Multi-scale, 1024px output
Checkpoint / methodBeachRed scarfBicycleFoxPortrait
BaseBase, 1024pxBase, 1024pxBase, 1024pxBase, 1024pxBase, 1024px
Fixed shift, 4,000Multi-scale, fixed shift, 4,000, 1024pxMulti-scale, fixed shift, 4,000, 1024pxMulti-scale, fixed shift, 4,000, 1024pxMulti-scale, fixed shift, 4,000, 1024pxMulti-scale, fixed shift, 4,000, 1024px
Auto shift, 4,000Multi-scale, auto shift, 4,000, 1024pxMulti-scale, auto shift, 4,000, 1024pxMulti-scale, auto shift, 4,000, 1024pxMulti-scale, auto shift, 4,000, 1024pxMulti-scale, auto shift, 4,000, 1024px
REPA, fixed shift, 4,000Multi-scale + REPA, fixed shift, 4,000, 1024pxMulti-scale + REPA, fixed shift, 4,000, 1024pxMulti-scale + REPA, fixed shift, 4,000, 1024pxMulti-scale + REPA, fixed shift, 4,000, 1024pxMulti-scale + REPA, fixed shift, 4,000, 1024px
REPA + auto shift, 4,000character_beach, REPA + auto shift, step 4000, 1024pxcharacter_scarf, REPA + auto shift, step 4000, 1024pxcharacter_bicycle, REPA + auto shift, step 4000, 1024pxprior_fox, REPA + auto shift, step 4000, 1024pxprior_portrait, REPA + auto shift, step 4000, 1024px
## Learning progression Single-resolution REPA, 512px training: ### 512px output
Checkpoint / methodBeachRed scarfBicycleFoxPortrait
BaseBase, 512pxBase, 512pxBase, 512pxBase, 512pxBase, 512px
Step 1,000Step 1,000, 512pxStep 1,000, 512pxStep 1,000, 512pxStep 1,000, 512pxStep 1,000, 512px
Step 2,000Step 2,000, 512pxStep 2,000, 512pxStep 2,000, 512pxStep 2,000, 512pxStep 2,000, 512px
### 1024px output
Checkpoint / methodBeachRed scarfBicycleFoxPortrait
BaseBase, 1024pxBase, 1024pxBase, 1024pxBase, 1024pxBase, 1024px
Step 1,000Step 1,000, 1024pxStep 1,000, 1024pxStep 1,000, 1024pxStep 1,000, 1024pxStep 1,000, 1024px
Step 2,000Step 2,000, 1024pxStep 2,000, 1024pxStep 2,000, 1024pxStep 2,000, 1024pxStep 2,000, 1024px
Multi-scale REPA, fixed shift: ### 512px output
Checkpoint / methodBeachRed scarfBicycleFoxPortrait
BaseBase, 512pxBase, 512pxBase, 512pxBase, 512pxBase, 512px
Step 2,000Step 2,000, 512pxStep 2,000, 512pxStep 2,000, 512pxStep 2,000, 512pxStep 2,000, 512px
Step 4,000Step 4,000, 512pxStep 4,000, 512pxStep 4,000, 512pxStep 4,000, 512pxStep 4,000, 512px
### 1024px output
Checkpoint / methodBeachRed scarfBicycleFoxPortrait
BaseBase, 1024pxBase, 1024pxBase, 1024pxBase, 1024pxBase, 1024px
Step 2,000Step 2,000, 1024pxStep 2,000, 1024pxStep 2,000, 1024pxStep 2,000, 1024pxStep 2,000, 1024px
Step 4,000Step 4,000, 1024pxStep 4,000, 1024pxStep 4,000, 1024pxStep 4,000, 1024pxStep 4,000, 1024px
## Recipes and checkpoints | Variant | Training resolution | REPA | Flow shift | Selected LoRA checkpoints | | --- | --- | --- | --- | --- | | [512px control](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/recipes/assisted-v2-bare-parent-512/config.json) | 512 | No | 3 | [2,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-bare-parent-512/step-2000/pytorch_lora_weights.safetensors) | | [512px + REPA](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/recipes/assisted-v2-repa-512/config.json) | 512 | Yes | 3 | [1,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-repa-512/step-1000/pytorch_lora_weights.safetensors), [2,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-repa-512/step-2000/pytorch_lora_weights.safetensors) | | [Multi-scale, fixed shift](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/recipes/assisted-v2-multiscale/config.json) | 512 + 1024 | No | 3 | [2,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-multiscale/step-2000/pytorch_lora_weights.safetensors), [4,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-multiscale/step-4000/pytorch_lora_weights.safetensors) | | [Multi-scale, auto shift](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/recipes/assisted-v2-multiscale-autoshift/config.json) | 512 + 1024 | No | Auto | [2,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-multiscale-autoshift/step-2000/pytorch_lora_weights.safetensors), [4,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-multiscale-autoshift/step-4000/pytorch_lora_weights.safetensors) | | [Multi-scale + REPA, fixed shift](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/recipes/assisted-v2-multiscale-repa/config.json) | 512 + 1024 | Yes | 3 | [2,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-multiscale-repa/step-2000/pytorch_lora_weights.safetensors), [4,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-multiscale-repa/step-4000/pytorch_lora_weights.safetensors) | | [Multi-scale + REPA + auto shift](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/recipes/assisted-v2-multiscale-repa-autoshift/config.json) | 512 + 1024 | Yes | Auto | [4,000](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-multiscale-repa-autoshift/step-4000/pytorch_lora_weights.safetensors), [10,000 continuation](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/resolve/main/checkpoints/assisted-v2-multiscale-repa-autoshift/step-10000/pytorch_lora_weights.safetensors) | The [Domokun run report](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/runs/domokun.md) contains the complete REPA + auto-shift trajectory through 10,000 updates. [Shared training and evaluation settings](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/reference/methods.md). ## Limitations Each variant uses one training seed and these grids use one validation seed. The separate [assistant-plus-regularisation experiment](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/experiments/assistant-regularisation.md) uses an assisted target. Keep that distinction when comparing methods. [Contents](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/README.md) · [Previous: Combining an assistant with regularisation](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/experiments/assistant-regularisation.md) · [Next: Learning-rate experiments](https://huggingface.co/SimpleTuner/Qwen-Image-2.1-LoRA-experiments/blob/main/experiments/learning-rate.md)