Views
No views yet
1# create a virtual env and activate (conda as an example)
2conda create -n opensora python=3.10
3conda activate opensora
4
5# download the repo
6git clone https://github.com/hpcaitech/Open-Sora
7cd Open-Sora
8
9# Ensure torch >= 2.4.0
10pip install -v . # for development mode, `pip install -v -e .`
11pip install xformers==0.0.27.post2 --index-url https://download.pytorch.org/whl/cu121 # install xformers according to your cuda version
12pip install flash-attn --no-build-isolation1git clone https://github.com/Dao-AILab/flash-attention # 4f0640d5
2cd flash-attention/hopper
3python setup.py install1pip install "huggingface_hub[cli]"
2huggingface-cli download hpcai-tech/Open-Sora-v2 --local-dir ./ckpts1pip install modelscope
2modelscope download hpcai-tech/Open-Sora-v2 --local_dir ./ckpts1# Generate one given prompt
2torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "raining, sea"
3
4# Generation with csv
5torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --dataset.data-path assets/texts/example.csv1# One GPU
2torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_768px.py --save-dir samples --prompt "raining, sea"
3
4# Multi-GPU with colossalai sp
5torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_768px.py --save-dir samples --prompt "raining, sea"--aspect_ratio and the generation length by --num_frames. Candidate values for aspect_ratio includes 16:9, 9:16, 1:1, 2.39:1. Candidate values for num_frames should be 4k+1 and less than 129.1# One GPU for 256px
2torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --prompt "raining, sea"
3# Multi-GPU for 768px
4torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/768px.py --prompt "raining, sea"1# 256px
2torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --cond_type i2v_head --prompt "A plump pig wallows in a muddy pond on a rustic farm, its pink snout poking out as it snorts contentedly. The camera captures the pig's playful splashes, sending ripples through the water under the midday sun. Wooden fences and a red barn stand in the background, framed by rolling green hills. The pig's muddy coat glistens in the sunlight, showcasing the simple pleasures of its carefree life." --ref assets/texts/i2v.png
3
4# 256px with csv
5torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --cond_type i2v_head --dataset.data-path assets/texts/i2v.csv
6
7# Multi-GPU 768px
8torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/768px.py --cond_type i2v_head --dataset.data-path assets/texts/i2v.csvtorchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "raining, sea" --motion-score 4torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "raining, sea" --motion-score dynamic| Score | 1 | 4 | 7 |
|---|---|---|---|
![]() | ![]() | ![]() |
1export OPENAI_API_KEY=sk-xxxx
2torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "raining, sea" --refine-prompt Truetorchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "raining, sea" --sampling_option.seed 42 --seed 42--num-sample k to generate k samples for each prompt.| Resolution | 1x GPU | 2x GPUs | 4x GPUs | 8x GPUs |
|---|---|---|---|---|
| 256x256 | $\color{blue}{60}/\color{red}{52.5}$ | $\color{blue}{40}/\color{red}{44.3}$ | $\color{blue}{34}/\color{red}{44.3}$ | |
| 768x768 | $\color{blue}{1656}/\color{red}{60.3}$ | $\color{blue}{863}/\color{red}{48.3}$ | $\color{blue}{466}/\color{red}{44.3}$ | $\color{blue}{276}/\color{red}{44.3}$ |


1@software{opensora,
2 author = {Zangwei Zheng and Xiangyu Peng and Tianji Yang and Chenhui Shen and Shenggui Li and Hongxin Liu and Yukun Zhou and Tianyi Li and Yang You},
3 title = {Open-Sora: Democratizing Efficient Video Production for All},
4 month = {March},
5 year = {2024},
6 url = {https://github.com/hpcaitech/Open-Sora}
7}