FastVideo is a unified post-training and inference framework for accelerated video generation.
FastVideo features an end-to-end unified pipeline for accelerating diffusion models, starting from data preprocessing to model training, finetuning, distillation, and inference. FastVideo is designed to be modular and extensible, allowing users to easily add new optimizations and techniques. Whether it is training-free optimizations or post-training optimizations, FastVideo has you covered.
| Documentation | Quick Start | π€ FastWan2.1 | π€ FastWan2.2 | π£π¬ Slack | π£π¬ WeChat |
2025/08/04
: Release FastWan models and Sparse-Distillation.2025/06/14
: Release finetuning and inference code for VSA2025/04/24
: FastVideo V1 is released!2025/02/18
: Release the inference code for Sliding Tile Attention.
FastVideo has the following features:
- End-to-end post-training support:
- Sparse distillation for Wan2.1 and Wan2.2 to achineve >50x denoising speedup
- Data preprocessing pipeline for video data
- Support full finetuning and LoRA finetuning for state-of-the-art open video DiTs
- Scalable training with FSDP2, sequence parallelism, and selective activation checkpointing, with near linear scaling to 64 GPUs
- State-of-the-art performance optimizations for inference
- Diverse hardware and OS support
- Support H100, A100, 4090
- Support Linux, Windows, MacOS
We recommend using an environment manager such as Conda
to create a clean environment:
# Create and activate a new conda environment
conda create -n fastvideo python=3.12
conda activate fastvideo
# Install FastVideo
pip install fastvideo
Please see our docs for more detailed installation instructions.
For our sparse distillation techniques, please see our distillation docs and check out our blog.
See below for recipes and datasets:
Model | Sparse Distillation | Dataset |
---|---|---|
FastWan2.1-T2V-1.3B | Recipe | FastVideo Synthetic Wan2.1 480P |
FastWan2.1-T2V-14B-Preview | Coming soon! | FastVideo Synthetic Wan2.1 720P |
FastWan2.2-TI2V-5B | Recipe | FastVideo Synthetic Wan2.2 720P |
Here's a minimal example to generate a video using the default settings. Create a file called example.py
with the following code:
from fastvideo import VideoGenerator
def main():
# Create a video generator with a pre-trained model
generator = VideoGenerator.from_pretrained(
"FastVideo/FastWan2.1-T2V-1.3B-Diffusers",
num_gpus=1, # Adjust based on your hardware
)
# Define a prompt for your video
prompt = "A curious raccoon peers through a vibrant field of yellow sunflowers, its eyes wide with interest."
# Generate the video
video = generator.generate_video(
prompt,
return_frames=True, # Also return frames from this call (defaults to False)
output_path="my_videos/", # Controls where videos are saved
save_video=True
)
if __name__ == '__main__':
main()
Run the script with:
python example.py
For a more detailed guide, please see our inference quick start.
More FastWan Models Coming Soon!
- Add FastWan2.1-T2V-14B
- Add FastWan2.2-T2V-14B
- Add FastWan2.2-I2V-14B
See details in development roadmap.
We welcome all contributions. Please check out our guide here
We learned and reused code from the following projects:
We thank MBZUAI, Anyscale, and GMI Cloud for their support throughout this project.
If you find FastVideo useful, please considering citing our work:
@software{fastvideo2024,
title = {FastVideo: A Unified Framework for Accelerated Video Generation},
author = {The FastVideo Team},
url = {https://github.com/hao-ai-lab/FastVideo},
month = apr,
year = {2024},
}
@article{zhang2025vsa,
title={VSA: Faster Video Diffusion with Trainable Sparse Attention},
author={Zhang, Peiyuan and Huang, Haofeng and Chen, Yongqi and Lin, Will and Liu, Zhengzhong and Stoica, Ion and Xing, Eric and Zhang, Hao},
journal={arXiv preprint arXiv:2505.13389},
year={2025}
}
@article{zhang2025fast,
title={Fast video generation with sliding tile attention},
author={Zhang, Peiyuan and Chen, Yongqi and Su, Runlong and Ding, Hangliang and Stoica, Ion and Liu, Zhengzhong and Zhang, Hao},
journal={arXiv preprint arXiv:2502.04507},
year={2025}
}