CoolFace
Modelpublic

Perflow-Shuai/Wan2.1-T2V-14B-SFP-DMD-4Step-LoRA-r32-iter1200

sourceHugging Faceapache-2.0updated 2mo agoView on Hugging Face
0likes
Model Card

Wan2.1 T2V 14B SFP DMD 4-Step LoRA - Rank 32, Iter 1200

This repository contains the iteration-1200 checkpoint from an experimental Wan2.1-T2V-14B Self-Forcing-Plus DMD run. It includes a portable generator LoRA for inference and the complete generator/critic/optimizer checkpoint for resuming the original 64-rank training job.

This is an intermediate checkpoint from a run configured for 3,000 iterations. The run was stopped after this checkpoint was selected for publication, so this should not be treated as a final converged model.

Checkpoint identity

ItemValue
Base modelWan-AI/Wan2.1-T2V-14B
Training iteration1,200 of 3,000
Inference denoising steps4
RolloutSelf-Forcing blockwise autoregressive
LoRA rank / alpha / dropout32 / 32 / 0.0
Generator LoRA800 tensors, 400 A/B pairs, 153,354,240 parameters
Critic LoRA800 tensors, 400 A/B pairs, 153,354,240 parameters
TeacherFrozen base model, no LoRA
Training latent frames21
Decoded inference frames81 at 16 fps
External inference CFGDisabled; guidance is distilled

Each model copy trains LoRA weights for every Linear module inside the 40 Wan attention blocks. The generator and critic use separate adapters. The published inference adapter contains only the generator weights.

Training configuration

ParameterValue
Hardware64 H100 GPUs, 8 nodes
Per-rank batch size1
Total batch size64
Generator learning rate1e-5
Critic learning rate2e-6
Generator Adam beta1 / beta20.0 / 0.999
Critic Adam beta1 / beta20.0 / 0.999
Critic : generator update ratio5 : 1
Denoising timesteps1000, 750, 500, 250
Timestep shift5.0
Training guidance scale4.0
Latent frames per AR block3
EMADisabled for LoRA training

The training path keeps the original Self-Forcing-Plus rollout, DMD loss, sampler, update order, and prompt-only data flow. At step 1,200, the validated Adam counters are 240 generator updates and 1,200 critic updates.

Files

  • —generator_lora_lightx2v.safetensors: generator-only BF16 LoRA used for the validated four-step LightX2V samples.
  • —inference_config.json: the 4-step, 81-frame, 832x480 LightX2V settings.
  • —training_config.yaml: source SFP DMD training configuration.
  • —training_checkpoint/model.pt: FP32 generator and critic LoRAs plus adapter metadata at step 1,200.
  • —training_checkpoint/optimizer_rank_00000.pt through optimizer_rank_00063.pt: rank-local AdamW and RNG states.
  • —training_checkpoint/_SUCCESS: complete-checkpoint marker.
  • —export_generator_lora.py: exporter used to create the inference adapter.
  • —provenance.json: revisions, checksums, and validation facts.

The files under training_checkpoint/ are PyTorch pickle checkpoints. Load them only in a trusted environment. The inference adapter uses Safetensors.

LightX2V inference

Download this repository and change lora_configs[0].path in inference_config.json to the absolute path of generator_lora_lightx2v.safetensors. Then run from a LightX2V checkout:

bash
python -m torch.distributed.run --nproc_per_node=8 -m lightx2v.infer \
  --model_cls wan2.1_distill \
  --task t2v \
  --model_path /path/to/Wan2.1-T2V-14B \
  --config_json /path/to/inference_config.json \
  --prompt "your prompt" \
  --negative_prompt "your negative prompt" \
  --save_result_path output.mp4 \
  --seed 42

The validated setup uses LoRA strength 1.0, four denoising steps, 81 output frames, 832x480 resolution, and no external CFG pass.

Resume training

Resume with the original modified Self-Forcing-Plus code and point resume_ckpt at the downloaded training_checkpoint directory. Restoring the supplied optimizer shards requires a world size of 64. The checkpoint was validated for all 64 shards before publication.

Integrity

FileBytesSHA-256
generator_lora_lightx2v.safetensors306,795,416b8bd0275f125918e7ee37e9e9feb2157d4e7f1354db5829827ed30bfcb616e44
training_checkpoint/model.pt1,227,407,797a384c5a31923ce1edb28576886fe54d6a54add7564a14625295e33eae2d806e9