MAGI-1 开源项目使用教程
1. 项目介绍
MAGI-1 是一个基于变分自编码器(VAE)和 Transformer 架构的开源视频生成模型。它通过自回归方式预测一系列视频块(固定长度的连续帧段)来生成视频。MAGI-1 经过训练,能够逐步去除每个块中的噪声,从而实现因果时间建模,并支持流式生成。它在图像到视频(I2V)任务中表现优异,可以根据文本指令生成高质量、时间一致性强、可扩展的视频。此外,它还支持通过块级提示进行可控生成,实现平滑的场景转换、长距离合成和细粒度的文本驱动控制。
2. 项目快速启动
环境准备
- 安装 Docker 环境(推荐)
docker pull sandai/magi:latest
docker run -it --gpus all --privileged --shm-size=32g --name magi --net=host --ipc=host --ulimit memlock=-1 --ulimit stack=6710886 sandai/magi:latest /bin/bash
- 从源代码运行
# 创建新环境
conda create -n magi python==3.10.12
# 安装 PyTorch
conda install pytorch==2.4.0 torchvision==0.19.0 torchaudio==2.4.0 pytorch-cuda=12.4 -c pytorch -c nvidia
# 安装其他依赖
pip install -r requirements.txt
# 安装 ffmpeg
conda install -c conda-forge ffmpeg=4.4
# 安装 MagiAttention
git clone git@github.com:SandAI-org/MagiAttention.git
cd MagiAttention
git submodule update --init --recursive
pip install --no-build-isolation .
运行示例
运行 MagiPipeline
,可以通过修改 example/24B/run.sh
或 example/4.5B/run.sh
脚本中的参数来控制输入和输出。
- 运行 24B MAGI-1 模型
bash example/24B/run.sh
- 运行 4.5B MAGI-1 模型
bash example/4.5B/run.sh
参数配置
可以修改 run.sh
脚本中的参数来定制化运行过程。例如:
- 使用图像到视频模式 (
i2v
),设置--mode
为i2v
并提供--image_path
:
--mode i2v \
--image_path example/assets/image.jpeg \
- 使用视频到视频模式 (
v2v
),设置--mode
为v2v
并提供--prefix_video_path
:
--mode v2v \
--prefix_video_path example/assets/prefix_video.mp4 \
3. 应用案例和最佳实践
(此处添加具体的应用案例和最佳实践,例如如何使用 MAGI-1 生成特定类型的视频,如何优化模型性能等。)
4. 典型生态项目
(此处列举一些与 MAGI-1 相关的生态项目,例如其他基于 Transformer 的视频生成项目、相关的数据集、工具等。)