Open-Sora 致力于高效地生成高质量视频
Open-Sora 部署教程:开源视频生成模型的本地化运行
Open-Sora 是一个由 HPC-AI Tech 发起的开源项目,致力于高效地生成高质量视频。本教程将指导你在配有 Nvidia GPU 的 Linux 服务器上,完成 Open-Sora 2.0 (11B) 模型的部署,并执行基础的文生视频任务。
项目背景与版本说明
Open-Sora 项目发展迅速,目前已发布多个版本。本教程以最新的 Open-Sora 2.0 版本为例,该版本拥有 11B 参数,在性能上可与 HunyuanVideo 等模型相媲美,且训练成本较低。请注意:不同版本的模型权重、配置文件和推理命令可能存在差异,请确保你操作的版本与教程一致。
准备工作:硬件与软件要求
部署 Open-Sora 2.0 对硬件有较高要求,请务必提前确认你的环境。
- 硬件要求:
- GPU:强烈推荐使用 Nvidia H100 或 H800 GPU。根据官方测试,使用 8x H800 GPU 进行 768x768 分辨率生成也需要一定时间。至少需要 RTX 3090 或同等及以上性能的显卡,且显存需大于 24GB。
- 存储:模型文件、依赖库及生成的视频需要大量空间,建议至少预留 90GB 以上的可用硬盘空间。
- 内存:建议 64GB 以上系统内存。
- 软件要求:
- 操作系统:Linux (Ubuntu 20.04+ 或 CentOS 7+)。
- GPU 驱动:已正确安装 Nvidia 驱动和 CUDA 工具包 (CUDA 11.8 或更高版本)。
- Python 环境:推荐使用 Conda 管理环境,需要 Python 3.10 版本。
第一步:环境安装与项目克隆
克隆项目仓库
1
2git clone https://github.com/hpcaitech/Open-Sora.git
cd Open-Sora创建并激活 Conda 环境
1
2conda create -n opensora python=3.10 -y
conda activate opensora安装 PyTorch 和核心依赖
确保安装的 PyTorch 版本 >= 2.4.0,并与你的 CUDA 版本匹配。以下是 CUDA 11.8 的示例,请根据实际情况调整。1
2
3
4
5
6
7
8
9# 安装 PyTorch (参考 https://pytorch.org/get-started/locally/)
# 例如:pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118
# 安装项目基础依赖 (进入项目根目录执行)
pip install -v .
# 安装 xformers 和 flash-attn 以加速训练和推理 (需根据CUDA版本选择)
pip install xformers==0.0.27.post2 --index-url https://download.pytorch.org/whl/cu118
pip install flash-attn --no-build-isolation如果安装
flash-attn失败,可以尝试从源码编译。
第二步:下载模型权重
Open-Sora 2.0 的模型权重文件较大,需要通过 Hugging Face 或 ModelScope 下载。
从 Hugging Face 下载 (推荐)
1
2
3pip install "huggingface_hub[cli]"
# 创建一个目录存放模型 (例如 ./ckpts)
huggingface-cli download hpcai-tech/Open-Sora-v2 --local-dir ./ckpts从 ModelScope 下载
1
2pip install modelscope
modelscope download hpcai-tech/Open-Sora-v2 --local_dir ./ckpts
第三步:运行文生视频推理
完成上述步骤后,即可运行推理命令生成视频。Open-Sora 2.0 支持 文本生成视频 (T2V) 和 图像生成视频 (I2V)。这里我们演示最基础的 T2V 功能。
单GPU推理 (256x256分辨率)
1
2
3
4# --nproc_per_node 1 表示使用1块GPU
torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py \
configs/diffusion/inference/t2i2v_256px.py \
--save-dir samples --prompt "raining, sea"此命令将根据提示词 “raining, sea” 生成视频,并保存在
samples目录下。多GPU推理 (768x768分辨率)
1
2
3
4# 使用8块GPU进行768分辨率生成,可大幅提升速度
torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py \
configs/diffusion/inference/t2i2v_768px.py \
--save-dir samples --prompt "raining, sea"高级推理选项
- 生成时长和宽高比:可通过
--num-frames(帧数,需为4k+1且小于129) 和--aspect-ratio(16:9,9:16,1:1等) 参数控制输出视频的规格。 - 启用提示词优化:设置
OPENAI_API_KEY环境变量后,添加--refine-prompt True可使用大模型优化你的提示词,提升生成质量。
- 生成时长和宽高比:可通过
故障排查与常见问题
- 显存不足 (CUDA Out of Memory): 这是最常见的问题。解决办法包括:
- 降低生成分辨率 (如使用
t2i2v_256px.py配置文件)。 - 在命令中添加
--offload True参数,将部分模型权重临时卸载到 CPU 以节省显存。 - 减少
vae.micro_batch_size(在配置文件中调整),这可能会略微降低生成速度。
- 降低生成分辨率 (如使用
- 依赖库安装错误: 确保
pip和conda环境没有问题,CUDA 版本与 PyTorch 及xformers、flash-attn版本匹配。可以尝试先单独安装torch,再安装其他依赖。 - 模型下载失败: 如果从 Hugging Face 下载中断,可以重新执行
huggingface-cli download命令,它会自动续传。网络不稳定时,可尝试使用 ModelScope 源。
Open-Sora 是一个功能强大但资源消耗较高的项目。如果你在本地部署中遇到困难,或希望进行微调训练,可以考虑使用其官方合作伙伴提供的云服务,以获得预配置环境和 H200 GPU 等高性能计算资源。希望本教程能帮助你成功开启视频生成之旅。







