赞
踩
打开
GitHub - hpcaitech/Open-Sora: Open-Sora: Democratizing Efficient Video Production for All
你可以发现3月18日Open-Sora 1.0 发布的消息:
快速跳到安装部分:
打开
InternStudiostudio.intern-ai.org.cn/
新建一个InternStudio的机器:sora-test
进入开发机:
nvcc -V
注意:cuda版本是11.7
conda create -n opensora python=3.10 -y conda activate opensora
打开 https://pytorch.org/get-started/locally/
这里面只有CUDA11.8的。有两种方式:
1是用conda安装cuda 12.1或者cuda 11.8的版本,命令为:
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
2是选择历史版本,
安装方法为:
conda install pytorch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2 pytorch-cuda=11.7 -c pytorch -c nvidia
或
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2
为了省事点,使用最后一种方式吧!
pip install torch==2.0.1 torchvision==0.15.2 torchaudio==2.0.2
python
import torch
torch.cuda.is_available()
torch.__version__ quit()
pip install packaging ninja
已经装了。
pip install flash-attn --no-build-isolation
好像卡住了。先断掉。这是可选的。要不然先忽略掉。
pip install -v --disable-pip-version-check --no-cache-dir --no-build-isolation --config-settings "--build-option=--cpp_ext" --config-settings "--build-option=--cuda_ext" git+https://github.com/NVIDIA/apex.git
好像安装失败了!不过这也是可选的。要不然先忽略掉。
pip3 install -U xformers --index-url https://download.pytorch.org/whl/cu117
这里有点怪,即便强行指定了CUDA 11.7版本,它还是用了12的包吗?
张小白有点不放心。前面那么多错,干脆推翻掉前面的。全部搭建CUDA 12.1的环境吧!
conda create -n opensora12 python=3.10 -y conda activate opensora12
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia
python
import torch
torch.cuda.is_available()
torch.__version__ quit()
pip install packaging ninja
pip install flash-attn --no-build-isolation
耐心等待一下。。。
装好了。
pip install -v --disable-pip-version-check --no-cache-dir --no-build-isolation --config-settings "--build-option=--cpp_ext" --config-settings "--build-option=--cuda_ext" git+https://github.com/NVIDIA/apex.git
问题来了,显示的是CUDA11.7跟所需要的CUDA12.1不一致。
看看能否安装CUDA 12.1的toolkit
打开
查看本机ubuntu版本号
lsb_release -a
按照以上方式选择,复制命令:
wget https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda_12.1.1_530.30.02_linux.run
sh cuda_12.1.1_530.30.02_linux.run
accept
不选driver,只选CUDA 12.1
Install
Yes
此时CUDA路径已指向12.1
nvcc -V
切换到 opensora12的conda环境
pip install -v --disable-pip-version-check --no-cache-dir --no-build-isolation --config-settings "--build-option=--cpp_ext" --config-settings "--build-option=--cuda_ext" git+https://github.com/NVIDIA/apex.git
感觉好像可以编译下去了。
好像只有一些warning。
成功了。
pip3 install -U xformers --index-url https://download.pytorch.org/whl/cu121
git clone https://github.com/hpcaitech/Open-Sora cd Open-Sora pip install -v .
把前面的opensora环境删除吧
conda deactivate
conda env remove -n opensora
安装完毕。
打开T5权重文件目录:
https://huggingface.co/DeepFloyd/t5-v1_1-xxl/tree/main
编写脚本下载 T5权重到
/root/Open-Sora/pretrained_models/t5_ckpts/t5-v1_1-xxl 目录.
vi download_t5.py
import os
# 设置环境变量
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'
# 下载模型
os.system('huggingface-cli download --resume-download DeepFloyd/t5-v1_1-xxl --local-dir /root/Open-Sora/pretrained_models/t5_ckpts/t5-v1_1-xxl --local-dir-use-symlinks False')
在opensora12的conda环境执行:
python download_t5.py
下载后的文件如下:
试一下推理的第一个命令:
# Sample 16x256x256 (5s/sample, 100 time steps, 22 GB memory)
# Auto Download
torchrun --standalone --nproc_per_node 1 scripts/inference.py configs/opensora/inference/16x256x256.py --ckpt-path OpenSora-v1-HQ-16x256x256.pth --prompt-path ./assets/texts/t2v_samples.txt
奇怪,这个模型:https://huggingface.co/stabilityai/sd-vae-ft-ema/tree/main
只有600M,怎么感觉推理还在下载模型:(可能跟前面手工下载的重复了)
find . -name pytorch_model.bin.index.json
果然如此。
先中断推理脚本执行。
打开 configs/opensora/inference/16x256x256.py
将t5路径改为绝对路径:
打开
https://huggingface.co/hpcai-tech/Open-Sora/blob/main/OpenSora-v1-16x256x256.pth
下载模型权重文件脚本
vi download_opensora.py
import os # 设置环境变量 os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com' # 下载模型 os.system('huggingface-cli download --resume-download hpcai-tech/Open-Sora --local-dir /root/Open-Sora/models --local-dir-use-symlinks False')
python download_opensora.py
重新执行:
torchrun --standalone --nproc_per_node 1 scripts/inference.py configs/opensora/inference/16x256x256.py --ckpt-path models/OpenSora-v1-HQ-16x256x256.pth --prompt-path ./assets/texts/t2v_samples.txt
看日志好像是T5的模型有问题。要不暂时不使用绝对路径。
将 configs/opensora/inference/16x256x256.py 中 t5的路径还原成相对路径。
from_pretrained="DeepFloyd/t5-v1_1-xxl",
重试:
torchrun --standalone --nproc_per_node 1 scripts/inference.py configs/opensora/inference/16x256x256.py --ckpt-path models/OpenSora-v1-HQ-16x256x256.pth --prompt-path ./assets/texts/t2v_samples.txt
这回按照它的意思去下载模型了,耐心等待。
这回成功完成了推理,生成了10个MP4视频文件。
将视频下载到本地:
结合t2v_samples.txt文件:
翻译一下:
(1)
(2)
(3)
(4)
(5)
(6)
这个蓝鱼有点怪。。。
(7)
(8)
(9)
(10)
刚才忘记看显卡的消耗情况了。
重新跑一次,看一下:
加载模型后 18G左右。
开始转换时,将近22G。
看来4090显卡坞还是能勉强跑起来的。
至于为啥绝对路径无法加载,可能是openSora的一个小BUG吧。
至于自己创作视频。。。且让俺先想想prompt该怎么写再说吧!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。