Files
hao-ai-lab-FastVideo/fastvideo/train
Davids048andClaude Opus 5.5 00a8e5bcb6 [refactor]: build resolved configs in the modular trainer
- moduleloader builds the component-loading config and the inference
  config as resolved configs (_build_training_resolved_config and
  build_inference_resolved_config) instead of TrainingArgs objects mutated
  after construction; the transformer override, weights path, and
  teacher/critic flag are config values or load_module arguments.
  keep_checkpoint_component_config keeps the trainer's PipelineConfig view
  of the checkpoint-filled VAE and text-encoder configs.
- The validation callback builds its pipeline with
  from_pretrained(path, resolved_config=...) and forwards with a resolved
  config built per run; it no longer replaces or mutates the trainer's
  pipeline_config, and generator_overrides takes nested GeneratorConfig
  fields instead of flat names.
- Against the 3f6893a0 snapshots of the 67 trainer YAML files, every
  PipelineConfig and value matches except ltx2_vae_tiling (the model's
  vae_tiling) and the unread pretrained_model_name_or_path.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012M91wnVFmPEvJ9h39r5BH7
2026-10-03 06:19:13 +00:00
..
2026-07-19 18:37:47 -07:00

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.

Guides