From e332dbb857875f1cce01ee9cdf608719aa129cd3 Mon Sep 17 00:00:00 2001 From: RandNMR73 Date: Thu, 22 Jan 2026 11:51:12 +0000 Subject: [PATCH] more scripts --- .../distill_dmd_t2v_1.3B_vidprom.sh | 122 ++++++++++++++++++ .../crush_smol/finetune_t2v_nvfp4.sh | 94 -------------- 2 files changed, 122 insertions(+), 94 deletions(-) create mode 100644 examples/distill/Wan2.1-T2V/Wan-Syn-Data-480P/distill_dmd_t2v_1.3B_vidprom.sh delete mode 100644 examples/training/finetune/wan_t2v_1.3B/crush_smol/finetune_t2v_nvfp4.sh diff --git a/examples/distill/Wan2.1-T2V/Wan-Syn-Data-480P/distill_dmd_t2v_1.3B_vidprom.sh b/examples/distill/Wan2.1-T2V/Wan-Syn-Data-480P/distill_dmd_t2v_1.3B_vidprom.sh new file mode 100644 index 000000000..bc258a031 --- /dev/null +++ b/examples/distill/Wan2.1-T2V/Wan-Syn-Data-480P/distill_dmd_t2v_1.3B_vidprom.sh @@ -0,0 +1,122 @@ +#!/usr/bin/env bash +set -euo pipefail + +############################################ +# Single node, 6 GPUs +############################################ +NUM_GPUS=1 +export WANDB_API_KEY=2f25ad37933894dbf0966c838c0b8494987f9f2f +export WANDB_MODE="online" +export WANDB_BASE_URL="https://api.wandb.ai" +export TOKENIZERS_PARALLELISM=false +export FASTVIDEO_ATTENTION_BACKEND=FLASH_ATTN # or TORCH_SDPA +export NCCL_P2P_DISABLE=1 +export TORCH_NCCL_ENABLE_MONITORING=0 +export TRITON_CACHE_DIR=/tmp/triton_cache + +echo "NUM_GPUS: $NUM_GPUS" +echo "CUDA_VISIBLE_DEVICES: $CUDA_VISIBLE_DEVICES" + +############################################ +# Configs +############################################ +MODEL_PATH="Wan-AI/Wan2.1-T2V-1.3B-Diffusers" +DATA_DIR=data/vidprom_16k_umt5_text_embed +VALIDATION_DATASET_FILE="examples/training/finetune/wan_t2v_1.3B/crush_smol/validation.json" +OUTPUT_DIR="checkpoints/wan_1.3B_t2v_distill_dmd_vidprom" +REAL_SCORE_MODEL_PATH="Wan-AI/Wan2.1-T2V-1.3B-Diffusers" +FAKE_SCORE_MODEL_PATH="Wan-AI/Wan2.1-T2V-1.3B-Diffusers" + +# Training arguments +training_args=( + --tracker_project_name wan_t2v_distill_dmd_qat + --output_dir $OUTPUT_DIR + --max_train_steps 4000 + --train_batch_size 1 + --train_sp_batch_size 1 + --gradient_accumulation_steps 1 + --num_latent_t 21 + --num_height 480 + --num_width 832 + --num_frames 81 + --enable_gradient_checkpointing_type "full" +) + +# Parallel arguments (adjusted to 6 GPUs) +parallel_args=( + --num_gpus $NUM_GPUS + --sp_size 1 + --tp_size 1 + --hsdp_replicate_dim 1 + --hsdp_shard_dim $NUM_GPUS +) + +# Model arguments +model_args=( + --model_path $MODEL_PATH + --pretrained_model_name_or_path $MODEL_PATH + --real_score_model_path $REAL_SCORE_MODEL_PATH + --fake_score_model_path $FAKE_SCORE_MODEL_PATH +) + +# Dataset arguments +dataset_args=( + --data_path "$DATA_DIR" + --dataloader_num_workers 4 +) + +# Validation arguments +validation_args=( + --log_validation + --validation_dataset_file "$VALIDATION_DATASET_FILE" + --validation_steps 200 + --validation_sampling_steps "3" + --validation_guidance_scale "6.0" # not used for dmd inference +) + +# Optimizer arguments +optimizer_args=( + --learning_rate 2e-6 + --mixed_precision "bf16" + --training_state_checkpointing_steps 500 + --weight_only_checkpointing_steps 500 + --weight_decay 0.01 + --max_grad_norm 1.0 +) + +# Miscellaneous arguments +miscellaneous_args=( + --inference_mode False + --checkpoints_total_limit 3 + --training_cfg_rate 0.0 + --dit_precision "fp32" + --ema_start_step 0 + --flow_shift 8 + --seed 1000 +) + +# DMD arguments +dmd_args=( + --dmd_denoising_steps '1000,757,522' + --min_timestep_ratio 0.02 + --max_timestep_ratio 0.98 + --generator_update_interval 5 + --real_score_guidance_scale 3.5 + --simulate_generator_forward +) + +############################################ +# Launch (no rendezvous flags needed) +############################################ +set -x +torchrun \ + --nproc_per_node="$NUM_GPUS" \ + fastvideo/training/wan_distillation_pipeline.py \ + "${parallel_args[@]}" \ + "${model_args[@]}" \ + "${dataset_args[@]}" \ + "${training_args[@]}" \ + "${optimizer_args[@]}" \ + "${validation_args[@]}" \ + "${miscellaneous_args[@]}" \ + "${dmd_args[@]}" \ No newline at end of file diff --git a/examples/training/finetune/wan_t2v_1.3B/crush_smol/finetune_t2v_nvfp4.sh b/examples/training/finetune/wan_t2v_1.3B/crush_smol/finetune_t2v_nvfp4.sh deleted file mode 100644 index 56c7da9fd..000000000 --- a/examples/training/finetune/wan_t2v_1.3B/crush_smol/finetune_t2v_nvfp4.sh +++ /dev/null @@ -1,94 +0,0 @@ -#!/bin/bash - -export WANDB_BASE_URL="https://api.wandb.ai" -export WANDB_MODE=online -export TOKENIZERS_PARALLELISM=false -# export FASTVIDEO_ATTENTION_BACKEND=TORCH_SDPA - -MODEL_PATH="Wan-AI/Wan2.1-T2V-1.3B-Diffusers" -DATA_DIR="data/Wan-Syn_77x448x832_600k/train/" -VALIDATION_DATASET_FILE="data/Wan-Syn_77x448x832_600k/validation_6.json" -NUM_GPUS=6 -# export CUDA_VISIBLE_DEVICES=4,5 - - -# Training arguments -training_args=( - --tracker_project_name "wan_t2v_finetune" - --output_dir "checkpoints/wan_t2v_finetune" - --max_train_steps 5000 - --train_batch_size 1 - --train_sp_batch_size 1 - --gradient_accumulation_steps 1 - --num_latent_t 6 - --num_height 480 - --num_width 832 - --num_frames 21 - --enable_gradient_checkpointing_type "full" - --generator_4bit_linear True -) - -# Parallel arguments -parallel_args=( - --num_gpus $NUM_GPUS - --sp_size 1 - --tp_size 1 - --hsdp_replicate_dim 1 - --hsdp_shard_dim $NUM_GPUS -) - -# Model arguments -model_args=( - --model_path $MODEL_PATH - --pretrained_model_name_or_path $MODEL_PATH -) - -# Dataset arguments -dataset_args=( - --data_path $DATA_DIR - --dataloader_num_workers 1 -) - -# Validation arguments -validation_args=( - --log_validation - --validation_dataset_file $VALIDATION_DATASET_FILE - --validation_steps 50 - --validation_sampling_steps "50" - --validation_guidance_scale "6.0" -) - -# Optimizer arguments -optimizer_args=( - --learning_rate 1e-6 - --mixed_precision "bf16" - --checkpointing_steps 2000 - --weight_decay 1e-4 - --max_grad_norm 1.0 -) - -# Miscellaneous arguments -miscellaneous_args=( - --inference_mode False - --checkpoints_total_limit 3 - --training_cfg_rate 0.1 - --multi_phased_distill_schedule "4000-1" - --not_apply_cfg_solver - --dit_precision "fp32" - --num_euler_timesteps 50 - --ema_start_step 0 - --enable_gradient_checkpointing_type "full" - # --resume_from_checkpoint "checkpoints/wan_t2v_finetune/checkpoint-2500" -) - -torchrun \ - --nnodes 1 \ - --nproc_per_node $NUM_GPUS \ - fastvideo/training/wan_training_pipeline.py \ - "${parallel_args[@]}" \ - "${model_args[@]}" \ - "${dataset_args[@]}" \ - "${training_args[@]}" \ - "${optimizer_args[@]}" \ - "${validation_args[@]}" \ - "${miscellaneous_args[@]}"