Training:
- finetune.py: optional track/base param groups (WANTRACK_TRACK_GROUP) so the
track pathway can take a different LR (WANTRACK_TRACK_LR_MULT); patch_embedding
gradient masked to the track slot [:, 36:]. Raises if nothing matches.
- track_warmup.py callback: hold the pretrained DiT at lr 0 while the track
pathway warms up, then ramp it back in.
14B configs + held-alloc launchers:
- finetune_wantrack_{synth_sparse_fixed,synth_sparse_random,openvid_sparse_merged_bias,
synth_stage2}_14b + openvid_14b_{warmup,lwlr} + 1.3B stage2 configs.
- run_wan14b_held.sh (held alloc + auto-restart + rank cleanup, per-stage WANTRACK
env), acquire_nodes.sh, chain_stepAB.sh, run_stepB_seed.sh, run_stepC_merge.sh,
watch_gate.sh, run_synth_stage2_slurm.sh.
Init / diagnostics:
- convert_trackwan_init_v2.py: --pe-src to lift patch_embedding[:, 36:] and
--track-src to lift track_encoder together (co-adapted merge); sharded-source support.
- check_gate_growth.py, gradient_flow_analysis.py, gradient_flow_summarize.py.
Data pipeline: segment_tracks.py sharding; decode/segment/tracks slurm scripts;
precompute_null_text, two_track_val, cfg_ablation, lwlr_experiment.
Inference: app_multi_trace.py updates.
Fastvideo New Modular Training Framework
This is the new training infrastructure for FastVideo, replacing the
monolithic per-model pipeline scripts in fastvideo/training/.
Key differences from fastvideo/training/
fastvideo/training/ (legacy) |
fastvideo/train/ (new) |
|
|---|---|---|
| Architecture | One pipeline class per model+method combo | Composable: model plugins + method classes |
| Adding a model | Write a full training pipeline from scratch | Add a model plugin under models/ |
| Adding a method | Fork an existing pipeline | Add a method class under methods/ |
| Config | Flat argparse flags | Hierarchical YAML with dotted-key overrides |
| Distributed | Manual FSDP setup per pipeline | Shared trainer handles FSDP/HSDP |
Structure
fastvideo/train/
├── models/ # Per-model plugins (wan/, hunyuan/, ...)
├── methods/ # Training methods (fine_tuning/, distribution_matching/, ...)
├── callbacks/ # Validation, grad clipping, etc.
├── entrypoint/ # CLI entry points (train.py, dcp_to_diffusers.py)
├── trainer.py # Core training loop
└── utils/ # Config parsing, dataloader, etc.
Usage
See examples/train/ for configs and launch scripts.