❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- 功能:支持多分辨率、多时长视频生成,具备首帧、首尾帧控制、运动幅度控制和镜头控制。
- 技术:基于DiT架构,由Casual VAE模块和Diffusion Transformer组成,支持视频数据压缩和生成。
- 应用:适用于动画预制、游戏CG生成、电影特效预览、虚拟主播和社交媒体内容生成。
正文(附运行示例)
Ruyi 是什么
Ruyi是图森未来推出的图生视频大模型,专为在消费级显卡上运行设计,支持多分辨率、多时长视频生成,具备首帧、首尾帧控制、运动幅度控制和镜头控制等特性。Ruyi基于DiT架构,由Casual VAE模块和Diffusion Transformer组成,用在视频数据压缩和生成。
Ruyi能降低动漫和游戏内容的开发周期和成本,是ACG爱好者和创作者的理想工具。目前图森未来将Ruyi-Mini-7B版本正式开源。
Ruyi 的主要功能
- 多分辨率、多时长生成:支持从最小384×384到最大1024×1024分辨率的视频生成,能处理任意长宽比,最长生成120帧/5秒的视频。
- 首帧、首尾帧控制生成:基于最多5个起始帧和最多5个结束帧生成视频,用循环叠加生成任意长度的视频。
- 运动幅度控制:提供4档运动幅度控制,方便用户对整体画面的变化程度进行控制。
- 镜头控制:提供了上、下、左、右、静止共5种镜头控制,增加视频生成的灵活性。
Ruyi 的技术原理
- 模型架构:Ruyi基于DiT(Diffusion Model with Transformers)架构,由两部分组成:
- Casual VAE模块:负责视频数据的压缩和解压。
- Diffusion Transformer:负责压缩后的视频生成。
- 压缩与编码:Casual VAE模块将空间分辨率压缩至1/8,时间分辨率压缩至1/4,压缩后每个像素由16位的BF16进行表示。
- 位置编码:DiT部分用3D full attention,在空间上使用2D RoPE(Rotary Positional Encoding)进行位置编码,时间上用sin_cos进行位置编码。
- 训练损失函数:最终的loss选用DDPM(Denoising Diffusion Probabilistic Models)进行训练。
- 参数量与训练数据:模型的总参数量约为7.1B,用约200M视频片段进行训练。
- 训练阶段:整个训练分为四个阶段,从低分辨率预训练到高分辨率微调,逐步提升模型性能。
如何运行 Ruyi
安装步骤
克隆仓库并安装依赖:
git clone https://github.com/IamCreateAI/Ruyi-Models cd Ruyi-Models pip install -r requirements.txt
对于ComfyUI用户,可以通过ComfyUI Manager安装:
cd ComfyUI/custom_nodes/ git clone https://github.com/ltdrdata/ComfyUI-Manager.git pip install -r ComfyUI-Manager/requirements.txt
下载模型并保存到指定路径:
python3 predict_i2v.py
运行示例
以下是一个简单的运行示例,使用Python代码生成视频:
python3 predict_i2v.py
该脚本会自动下载模型并使用_assets_
文件夹中的图片作为起始和结束帧进行视频推理。你可以修改脚本中的变量来替换输入图片,并设置视频长度和分辨率等参数。
资源
- 项目官网:https://github.com/IamCreateAI/Ruyi-Models
- GitHub 仓库:https://github.com/IamCreateAI/Ruyi-Models
- HuggingFace 模型库:https://huggingface.co/IamCreateAI/Ruyi-Mini-7B
❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦