🧪 FastVideo & DMD Distillation: Development, Debugging, and Reproduction
This guide provides streamlined instructions for working with the FastVideo distillation and DMD (CausVid) repositories, including development/debug branches, environment setup, dataset/model preparation, and execution scripts.
🔧 FastVideo Distill
🔗 Branches
-
Development branch:
yq/distill-dmd -
Debug branch (fixed seed):
yq/distill-dmd-fixseed
🛠️ Environment Setup
Follow the official FastVideo installation instructions:
📄 Create and activate a conda environment
📁 Dataset Preparation
Ensure the dataset is available by running:
python scripts/huggingface/download_hf.py \
--repo_id=FastVideo/mini_i2v_dataset \
--local_dir=mini_i2v_dataset \
--repo_type=dataset
This downloads a minimal example dataset sufficient for running the distillation script.
🚀 Distillation Script
Use the same script for both distill-dmd and distill-dmd-fixseed:
🐛 Debugging Tip
To set a breakpoint in fastvideo codebase:
torch.distributed.breakpoint()
🧩 DMD Official Repo (Forked)
🔗 Branches
-
Reproduce branch:
yq/debug -
Debug branch (with fixed seed):
yq/debug-fixseed
🛠️ Environment Setup
-
For
yq/debug(reproduce branch):
Follow the official DMD README instructions. -
For
yq/debug-fixseed:
Use the same environment as FastVideo and then:
# Inside the FastVideo directory
python setup.py develop
# Then install any missing packages
pip install <missing-packages>
📦 Model & Dataset
- Download the official Wan base model and dataset from Hugging Face:
📦 mixkit_latents_lmdb
➡️ Place the dataset undercheckpoints/.
🚀 Running Scripts
-
Reproduce branch script (8-node run):
📄dmd_8n_simple.sh -
Debug branch script (fixed seed and input):
📄debug.sh