Magic 1-For-1高质量视频生成量化模型,支持在消费级GPU上快速生成

Written by 30115776@qq.com

Magic 1-For-1北大联合英伟达推出的高质量视频生成量化模型,支持在消费级GPU上快速生成。今天跟大家分享一下 Magic 1-For-1 这个由北京大学、Hedra Inc. 和 Nvidia 联合推出的高效视频生成模型。

🚀 快速阅读

Magic 1-For-1 是一个高效视频生成模型,能够在短时间内生成高质量的视频片段。

  1. 核心功能:在短时间内生成高质量视频,支持文本到图像和图像到视频的生成任务。
  2. 技术原理:通过任务分解、扩散模型蒸馏和多模态输入提升生成效率和质量。

Magic 1-For-1 是什么

Magic 1-For-1 是由北京大学、Hedra Inc. 和 Nvidia 联合推出的一个高效视频生成模型。该模型旨在优化内存消耗和推理延迟,能够快速生成高质量的视频片段。模型将复杂的文本到视频生成任务分解为两个更简单的子任务:文本到图像生成(T2I)和图像到视频生成(I2V),从而简化了生成过程并提高了生成效率。

通过这种方式,Magic 1-For-1 使用扩散步骤蒸馏技术显著加速了模型的收敛速度,并基于多模态输入(结合文本和视觉信息)进一步提升了生成视频的质量和语义一致性。此外,模型还采用了量化技术,将模型大小从32GB压缩到16GB,使其能够在消费级GPU上高效运行。

Magic 1-For-1 的主要功能

  • 高效生成:在短时间内生成高质量的视频片段。例如,生成5秒的视频仅需3秒,生成1分钟的视频可在1分钟内完成。
  • 高质量视频生成:基于优化扩散步骤和多模态输入,生成的视频在视觉质量、运动连贯性和语义一致性方面表现出色。
  • 低资源消耗:基于模型量化技术,将模型的内存占用从32GB降低到16GB,使其能在消费级GPU上高效运行。
  • 灵活性强:支持多种输入方式,包括文本到图像生成和图像到视频生成,根据用户需求生成多样化的视频内容。

Magic 1-For-1 的技术原理

  • 任务分解:将复杂的文本到视频生成任务分解为两个更简单的子任务:文本到图像生成(T2I)和图像到视频生成(I2V)。简化生成过程,让模型更容易训练和优化。
  • 扩散模型与扩散步骤蒸馏:基于扩散模型进行视频生成,用扩散步骤蒸馏(如DMD2算法)减少生成所需的步骤数。
  • 多模态输入:结合文本和视觉输入(如参考图像)作为条件信号,增强模型的语义理解和生成能力。让生成的视频能更好地捕捉文本描述和参考图像的语义信息。
  • 模型优化与量化:基于模型量化技术(如int8量化)减少模型的内存占用,用优化训练策略(如CFG蒸馏)提高模型的推理效率。
  • 滑动窗口技术:在生成长视频时,用滑动窗口技术逐步生成视频片段,在保持高效的同时提升整体视频的质量和连贯性。

如何运行 Magic 1-For-1

1. 环境设置

首先,确保安装了 git-lfs安装指南)。

推荐使用 conda 来管理项目的依赖项。首先创建一个名为 video-generation 的 conda 环境,并指定 Python 版本:

conda create -n video_infer python=3.9
conda activate video_infer

安装项目依赖项:

pip install -r requirements.txt

2. 下载模型权重

  1. 创建一个用于存储预训练权重的目录:
mkdir pretrained_weights
  1. 下载 Magic 1-For-1 模型权重,将 <model_weights_url> 替换为实际的下载链接:
wget -O pretrained_weights/magic_1_for_1_weights.pth <model_weights_url>
  1. 使用 Hugging Face CLI 下载其他组件:
huggingface-cli download tencent/HunyuanVideo --local_dir pretrained_weights --local_dir_use_symlinks False
huggingface-cli download xtuner/llava-llama-3-8b-v1_1-transformers --local_dir pretrained_weights/text_encoder --local_dir_use_symlinks False
huggingface-cli download openai/clip-vit-large-patch14 --local_dir pretrained_weights/text_encoder_2 --local_dir_use_symlinks False

确保已安装 huggingface-clipip install huggingface_hub)。

3. 推理

文本 + 图像到视频(单GPU)

运行以下命令进行文本和图像到视频的生成:

python test_ti2v.py --config configs/test/text_to_video/4_step_ti2v.yaml --quantization False

或者使用提供的脚本:

bash scripts/run_flashatt3.sh
量化
  1. 安装 optimum-quanto
pip install optimum-quanto
  1. 启用量化:

在运行脚本时设置 --quantization True 以启用量化:

python test_ti2v.py --config configs/test/text_to_video/4_step_ti2v.yaml --quantization True
多GPU推理

在多GPU环境下运行推理时,指定GPU数量和ID,并调整配置文件中的 ring_degreeulysses_degree 值以匹配使用的GPU数量。

bash scripts/run_flashatt3.sh test_ti2v.py configs/test/ti2v.yaml 1 0

资源

30115776@qq.com

Pretium lorem primis lectus donec tortor fusce morbi risus curae. Dignissim lacus massa mauris enim mattis magnis senectus montes mollis taciti accumsan semper nullam dapibus netus blandit nibh aliquam metus morbi cras magna vivamus per risus.

Data Formulator数据可视化 AI 工具,通过自然语言交互快速创建复杂的数据图表

InspireMusic支持文本或音频生成多种风格的音乐

发表评论