fix(ci): register flux2/wan2.2/qwen-image-edit diffusion recipes in CI (#3485)
* fix(ci): register flux2/wan2.2/qwen-image-edit recipes in diffusion CI
Recipe registration (diffusion_finetune_recipe_config.sh):
- flux2_t2i_flow* -> FLUX.2-dev, flux2 processor, image
- qwen_image_edit_2511_flow* -> Qwen-Image-Edit-2511, image-edit media type
with the MagicBrush dataset documented for this recipe
- wan2_2_t2v_flow* -> Wan2.2-T2V-A14B, wan2.2 processor, video, with
two-stage checkpoint flags for inference
Launcher (diffusion_finetune_launcher.sh):
- Add --lr_scheduler.lr_warmup_steps ${LR_WARMUP_STEPS:-10} override:
OptimizerParamScheduler asserts lr_warmup_steps < lr_decay_steps and the
CI max_steps=100 cap makes production warmup values (100-500) fail.
- Add image_edit media type: dataset resolved by the image-edit preprocess
subcommand, and inference passes --inference.input_images with a source
image materialized during preprocessing.
- Support CKPT_FLAG_OVERRIDE / GENERATE_EXTRA_ARGS so Wan2.2 inference uses
--model.checkpoint_high_noise and keeps the low-noise stage at hub weights
(--model.checkpoint is rejected by two-transformer pipelines).
Validated end-to-end on 8xGPU nodes with the nightly container
(data -> preprocess -> 100-step finetune -> inference smoke test):
flux_t2i_flow_lora PASS, qwen_image_edit_2511_flow PASS, wan2_2_t2v_flow
PASS. flux2 recipes validated through recipe routing only; full runs are
blocked on gated FLUX.2-dev HF access (infra: model must be added to the
CI HF cache).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Pranav Prashant Thombre <pthombre@nvidia.com>
* fix(diffusion): correct flux2 recipe checkpoint and batch settings
- flux2_t2i_flow.yaml: diffusers_compatible false -> true. With false, the
consolidated checkpoint keeps the transformers index name
(model.safetensors.index.json), which generate.py's diffusers
from_pretrained cannot load (it expects
diffusion_pytorch_model.safetensors[.index.json]). The paired
generate_flux2.yaml flow was broken for any user following the recipe.
- flux2_t2i_flow_lora.yaml: global_batch_size 4 -> 8. The recipe declares
fsdp.dp_size: 8 with local_batch_size 1, and 4 is not divisible by
1 * 8, so training fails at StepScheduler validation on its own
declared topology.
Both recipes validated end-to-end on 8xGPU (preprocess -> 100-step
finetune -> inference smoke test) with FLUX.2-dev: PASS.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Signed-off-by: Pranav Prashant Thombre <pthombre@nvidia.com>
---------
Signed-off-by: Pranav Prashant Thombre <pthombre@nvidia.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com> P
Pranav Thombre committed
37cd4464b53d4a91fd4f3bbf5e18b820abd076b1
Parent: 1b00e3d
Committed by GitHub <noreply@github.com>
on 8/11/2026, 12:49:29 PM