如果你是一名对AI视频生成感兴趣的开发者,或者正在寻找一款能兼顾视频生成、模型训练的工具,那么VideoX-Fun或许能满足你的需求。它是一个功能完整的视频生成pipeline,不仅能直接使用预训练模型生成不同规格的视频,还支持用户训练自己的模型,实现风格定制。接下来,我们就详细了解一下这款工具的方方面面。
一、VideoX-Fun是什么?
简单来说,VideoX-Fun是一个专注于AI视频生成的工具集。它的核心功能包括:
-
直接使用预训练模型生成视频(支持文本生视频、图片生视频、视频生视频等多种模式); -
训练自定义的Diffusion Transformer基线模型和Lora模型,实现特定风格或场景的视频生成; -
支持多种控制条件(如姿态、边缘检测、深度信息等),让视频生成更可控。
从发布至今,VideoX-Fun一直在持续更新,不断提升功能:
-
2025年4月,更新Wan2.1-Fun-V1.1版本,支持14B与1.3B模型的Control+参考图功能,新增镜头控制,优化Inpaint模型性能; -
2024年12月,推出CogVideoX-Fun-V1.5版本,上传图生视频模型及相关训练代码; -
2024年11月,加入奖励Lora支持,通过奖励反向传播技术优化视频生成效果,更符合人类偏好; -
2024年10月,CogVideoX-Fun Control模型获得diffusers支持,集成到Hugging Face生态; -
2024年9月,发布CogVideoX-Fun-V1.1版本,提升视频运动幅度,开放控制模型训练代码。
二、VideoX-Fun能做什么?
VideoX-Fun的功能覆盖了视频生成的全流程,无论是直接生成视频,还是训练自己的模型,都能找到对应的工具支持。
1. 视频生成
支持多种生成模式,包括:
-
文本生视频(T2V):输入文字描述,生成符合描述的视频; -
图片生视频(I2V):以一张图片为基础,生成动态视频; -
视频生视频(V2V):参考已有视频的内容或风格,生成新视频; -
控制生视频:通过姿态(Pose)、边缘检测(Canny)、深度信息(Depth)等条件,精确控制视频中物体的运动和形态。
生成的视频支持多种分辨率(如512×512、768×768、1024×1024等)、帧数(49帧、81帧、121帧等)和帧率(8FPS、16FPS、24FPS等),满足不同场景的需求。
2. 模型训练
如果你想生成特定风格的视频(比如动漫、写实、手绘等),可以通过VideoX-Fun训练自己的模型:
-
支持训练基线模型(如Diffusion Transformer); -
支持训练Lora模型(轻量级微调,快速适配新风格); -
提供完整的数据预处理工具,帮助你准备训练数据。
3. 实用工具
-
显存优化方案:针对大模型参数带来的显存压力,提供多种显存节省模式,让消费级显卡也能运行; -
多平台支持:兼容Windows和Linux系统,方便不同环境的开发者使用; -
UI界面:提供直观的操作界面,降低使用门槛(如图1)。

图1:VideoX-Fun的UI界面,操作直观易懂
三、核心模型介绍
VideoX-Fun包含多个系列的预训练模型,覆盖不同的生成需求和参数规模。以下是主要模型的详细信息:
1. Wan2.2系列
Wan2.2是万象系列的新版本,包含多个子模型,支持文本生视频、图生视频及多种控制功能。
模型名称 | 存储空间 | Hugging Face地址 | Model Scope地址 | 描述 |
---|---|---|---|---|
Wan2.2-TI2V-5B | – | 🤗Link | 😄Link | 5B参数的文生视频权重 |
Wan2.2-T2V-A14B | – | 🤗Link | 😄Link | 14B参数的文生视频权重 |
Wan2.2-I2V-A14B | – | 🤗Link | 😄Link | 14B参数的图生视频权重 |
Wan2.2-Fun子系列
Wan2.2-Fun在基础模型上增强了功能,支持更多控制条件和首尾图预测。
模型名称 | 存储空间 | Hugging Face地址 | Model Scope地址 | 描述 |
---|---|---|---|---|
Wan2.2-Fun-A14B-InP | 64.0 GB | 🤗Link | 😄Link | 14B参数文图生视频权重,多分辨率训练,支持首尾图预测 |
Wan2.2-Fun-A14B-Control | 64.0 GB | 🤗Link | 😄Link | 14B参数视频控制权重,支持Canny、Depth、Pose等控制条件,81帧、16FPS,多语言支持 |
Wan2.2-Fun-A14B-Control-Camera | 64.0 GB | 🤗Link | 😄Link | 14B参数相机镜头控制权重,81帧、16FPS,多语言支持 |
Wan2.2-Fun-5B-InP | 23.0 GB | 🤗Link | 😄Link | 5B参数文图生视频权重,121帧、24FPS,支持首尾图预测 |
Wan2.2-Fun-5B-Control | 23.0 GB | 🤗Link | 😄Link | 5B参数视频控制权重,支持多种控制条件,121帧、24FPS,多语言支持 |
Wan2.2-Fun-5B-Control-Camera | 23.0 GB | 🤗Link | 😄Link | 5B参数相机镜头控制权重,121帧、24FPS,多语言支持 |
Wan2.2-VACE-Fun-A14B | 64.0 GB | 🤗Link | 😄Link | 基于VACE方案训练的14B控制权重,支持多种控制条件和主体指定,81帧、16FPS |
2. Wan2.1系列
Wan2.1是万象系列的上一代模型,同样包含多个子模型,适合对参数规模和功能有不同需求的场景。
模型名称 | Hugging Face地址 | Model Scope地址 | 描述 |
---|---|---|---|
Wan2.1-T2V-1.3B | 🤗Link | 😄Link | 1.3B参数文生视频权重 |
Wan2.1-T2V-14B | 🤗Link | 😄Link | 14B参数文生视频权重 |
Wan2.1-I2V-14B-480P | 🤗Link | 😄Link | 14B参数480P图生视频权重 |
Wan2.1-I2V-14B-720P | 🤗Link | 😄Link | 14B参数720P图生视频权重 |
Wan2.1-Fun子系列
Wan2.1-Fun增强了控制功能,支持参考图+控制条件的组合模式。
模型名称 | 存储空间 | Hugging Face地址 | Model Scope地址 | 描述 |
---|---|---|---|---|
Wan2.1-Fun-V1.1-1.3B-InP | 19.0 GB | 🤗Link | 😄Link | 1.3B参数文图生视频权重,多分辨率训练,支持首尾图预测 |
Wan2.1-Fun-V1.1-14B-InP | 47.0 GB | 🤗Link | 😄Link | 14B参数文图生视频权重,多分辨率训练,支持首尾图预测 |
Wan2.1-Fun-V1.1-1.3B-Control | 19.0 GB | 🤗Link | 😄Link | 1.3B参数视频控制权重,支持多种控制条件和轨迹控制,81帧、16FPS |
Wan2.1-Fun-V1.1-14B-Control | 47.0 GB | 🤗Link | 😄Link | 14B参数视频控制权重,支持多种控制条件和轨迹控制,81帧、16FPS |
Wan2.1-Fun-V1.1-1.3B-Control-Camera | 19.0 GB | 🤗Link | 😄Link | 1.3B参数相机镜头控制权重,81帧、16FPS |
Wan2.1-Fun-V1.1-14B-Control-Camera | 47.0 GB | 🤗Link | 😄Link | 14B参数相机镜头控制权重,81帧、16FPS |
3. CogVideoX-Fun系列
CogVideoX-Fun专注于图生视频和控制生成,支持更高的分辨率(最高1280×1280)。
V1.5版本
模型名称 | 存储空间 | Hugging Face地址 | Model Scope地址 | 描述 |
---|---|---|---|---|
CogVideoX-Fun-V1.5-5b-InP | 20.0 GB | 🤗Link | 😄Link | 5B参数图生视频权重,支持512/768/1024分辨率,85帧、8FPS |
CogVideoX-Fun-V1.5-Reward-LoRAs | – | 🤗Link | 😄Link | 奖励反向传播模型,优化视频生成效果,更符合人类偏好 |
V1.1版本
模型名称 | 存储空间 | Hugging Face地址 | Model Scope地址 | 描述 |
---|---|---|---|---|
CogVideoX-Fun-V1.1-2b-InP | 13.0 GB | 🤗Link | 😄Link | 2B参数图生视频权重,支持512/768/1024/1280分辨率,49帧、8FPS |
CogVideoX-Fun-V1.1-5b-InP | 20.0 GB | 🤗Link | 😄Link | 5B参数图生视频权重,添加Noise增强运动幅度,支持多分辨率,49帧、8FPS |
CogVideoX-Fun-V1.1-2b-Pose | 13.0 GB | 🤗Link | 😄Link | 2B参数姿态控制生视频权重,支持多分辨率,49帧、8FPS |
CogVideoX-Fun-V1.1-2b-Control | 13.0 GB | 🤗Link | 😄Link | 2B参数控制生视频权重,支持Canny/Depth/Pose等条件,多分辨率,49帧、8FPS |
CogVideoX-Fun-V1.1-5b-Pose | 20.0 GB | 🤗Link | 😄Link | 5B参数姿态控制生视频权重,支持多分辨率,49帧、8FPS |
CogVideoX-Fun-V1.1-5b-Control | 20.0 GB | 🤗Link | 😄Link | 5B参数控制生视频权重,支持多种控制条件,多分辨率,49帧、8FPS |
CogVideoX-Fun-V1.1-Reward-LoRAs | – | 🤗Link | 😄Link | 奖励反向传播模型,优化V1.1版本生成效果 |
旧版本(V1.0,已过时)
模型名称 | 存储空间 | Hugging Face地址 | Model Scope地址 | 描述 |
---|---|---|---|---|
CogVideoX-Fun-2b-InP | 13.0 GB | 🤗Link | 😄Link | 2B参数图生视频权重,支持多分辨率,49帧、8FPS |
CogVideoX-Fun-5b-InP | 20.0 GB | 🤗Link | 😄Link | 5B参数图生视频权重,支持多分辨率,49帧、8FPS |
四、如何使用VideoX-Fun生成视频?
使用VideoX-Fun生成视频的流程并不复杂,只需按照以下步骤操作,即使是新手也能快速上手。
1. 准备工作
首先,需要获取模型文件。你可以通过上面表格中的Hugging Face或Model Scope链接下载对应的模型权重。同时,确保你的环境满足运行要求(如安装Python、PyTorch、diffusers等依赖)。
2. 选择显存节省方案
由于部分模型参数较大(如14B模型),对显卡显存要求较高。VideoX-Fun提供了3种显存节省方案,可根据你的显卡配置选择:
-
model_cpu_offload:模型使用后会转移到CPU,节省部分显存,适合显存中等的显卡; -
model_cpu_offload_and_qfloat8:在model_cpu_offload基础上,对transformer模型进行float8量化,节省更多显存,但可能轻微降低生成效果; -
sequential_cpu_offload:模型每一层使用后转移到CPU,显存占用最低,但生成速度较慢,适合显存较小的消费级显卡。
如果你的显卡显存充足(如16GB以上),推荐使用model_cpu_offload,兼顾效果和速度。
3. 运行生成脚本
根据生成需求,选择对应的Python脚本:
(1)视频生视频(V2V)
-
准备参考视频:可以使用官方提供的演示视频(play_guitar.mp4); -
运行脚本: examples/cogvideox_fun/predict_v2v.py
; -
生成结果会保存在 samples/cogvideox-fun-videos_v2v
文件夹中。
(2)控制生视频(如Canny、Pose、Depth)
-
准备控制视频:控制视频是经过Canny、Pose等算子处理后的视频,可使用官方演示视频(pose.mp4); -
修改参数:在 examples/cogvideox_fun/predict_v2v_control.py
中,设置control_video
(控制视频路径)、validation_image_end
(目标图片)、prompt
(文本描述)、neg_prompt
(不希望出现的内容)、guidance_scale
(引导强度)和seed
(随机种子); -
运行脚本: examples/cogvideox_fun/predict_v2v_control.py
; -
生成结果保存在 samples/cogvideox-fun-videos_v2v_control
文件夹中。
(3)结合自定义Lora模型
如果需要使用自己训练的Lora模型,修改examples/{model_name}/predict_t2v.py
或examples/{model_name}/predict_i2v.py
中的lora_path
(Lora模型路径)即可。
五、如何训练自己的模型?
如果你想让模型生成特定风格的视频,可以通过VideoX-Fun训练自己的模型。训练流程包括数据预处理和模型训练两部分。
1. 数据预处理
训练模型需要准备高质量的数据集,包括视频、图片及对应的文本描述。
(1)数据集结构
推荐的数据集结构如下:
📦 project/
├── 📂 datasets/
│ ├── 📂 internal_datasets/
│ ├── 📂 train/
│ │ ├── 📄 00000001.mp4 # 视频文件
│ │ ├── 📄 00000002.jpg # 图片文件
│ │ └── 📄 .....
│ └── 📄 json_of_internal_datasets.json # 数据元信息
(2)元信息文件格式
json_of_internal_datasets.json
是描述数据的关键文件,格式如下:
-
相对路径格式:
[
{
"file_path": "train/00000001.mp4",
"text": "一群穿西装戴墨镜的年轻人走在城市街道上。",
"type": "video"
},
{
"file_path": "train/00000002.jpg",
"text": "一群穿西装戴墨镜的年轻人走在城市街道上。",
"type": "image"
}
]
-
绝对路径格式:
[
{
"file_path": "/mnt/data/videos/00000001.mp4",
"text": "一群穿西装戴墨镜的年轻人走在城市街道上。",
"type": "video"
},
{
"file_path": "/mnt/data/train/00000001.jpg",
"text": "一群穿西装戴墨镜的年轻人走在城市街道上。",
"type": "image"
}
]
其中,type
字段指定文件类型(video或image),text
字段是对应的描述文本。
(3)长视频处理
如果你的数据是长视频,可以参考cogvideox/video_caption/README.md
中的工具,进行切分、清洗和自动生成描述。
2. 模型训练(以Video DiT为例)
(1)配置数据集路径
根据数据集中的路径类型(相对路径/绝对路径),修改训练脚本中的参数:
-
相对路径:编辑 scripts/{model_name}/train.sh
,设置:
export DATASET_NAME="datasets/internal_datasets/"
export DATASET_META_NAME="datasets/internal_datasets/json_of_internal_datasets.json"
-
绝对路径:编辑 scripts/train.sh
,设置:
export DATASET_NAME=""
export DATASET_META_NAME="/mnt/data/json_of_internal_datasets.json"
(2)运行训练脚本
执行以下命令开始训练:
sh scripts/train.sh
(3)参数设置细节
不同模型的训练参数设置略有差异,具体可参考:
-
Wan2.1-Fun: scripts/wan2.1_fun/README_TRAIN.md
和scripts/wan2.1_fun/README_TRAIN_LORA.md
; -
Wan2.1: scripts/wan2.1/README_TRAIN.md
和scripts/wan2.1/README_TRAIN_LORA.md
; -
CogVideoX-Fun: scripts/cogvideox_fun/README_TRAIN.md
和scripts/cogvideox_fun/README_TRAIN_LORA.md
。
六、常见问题解答(FAQ)
1. 不同系列的模型有什么区别?该如何选择?
-
Wan2.2系列:最新版本,参数规模覆盖5B和14B,支持更高的帧率(24FPS)和更多控制条件,适合对视频流畅度和可控性要求高的场景; -
Wan2.1系列:上一代模型,参数规模1.3B到14B,帧率16FPS,功能稳定,适合入门使用; -
CogVideoX-Fun系列:专注图生视频,支持更高分辨率(1280×1280),适合生成高清视频,帧率8FPS,运动幅度可通过版本选择(V1.1比V1.0更大)。
选择建议:优先考虑最新版本(如Wan2.2-Fun或CogVideoX-Fun-V1.5),如果显卡显存有限(如8GB以下),可选择参数较小的模型(如2B、1.3B)。
2. 显存不足怎么办?
VideoX-Fun提供了3种显存节省方案,按显存占用从低到高排序:sequential_cpu_offload
< model_cpu_offload_and_qfloat8
< model_cpu_offload
。如果显存仍然不足,可尝试:
-
降低生成视频的分辨率(如从1024×1024改为512×512); -
减少生成的帧数(如从81帧改为49帧); -
选择参数更小的模型(如2B模型)。
3. 如何评估生成视频的质量?
可以从以下几个维度评估:
-
内容相关性:是否符合输入的文本描述或参考图; -
运动流畅度:帧之间的过渡是否自然,无卡顿; -
清晰度:画面是否清晰,无模糊或 artifacts; -
控制精度(针对控制生成):是否准确遵循Canny、Pose等控制条件。
此外,CogVideoX-Fun的Reward-LoRAs模型可自动优化视频,使其更符合人类偏好,可作为辅助评估工具。
4. 训练模型需要多少数据?
训练基线模型通常需要大量数据(数千到数万样本),而Lora模型微调可使用较少数据(数百样本)。数据质量比数量更重要,建议选择清晰、主题一致的视频/图片,并提供准确的文本描述。
5. 支持Windows系统吗?
是的,VideoX-Fun同时支持Windows和Linux系统,使用方法一致。
七、参考文献
VideoX-Fun的开发参考了多个开源项目和技术,相关资源如下:
-
CogVideo:https://github.com/THUDM/CogVideo/ -
EasyAnimate:https://github.com/aigc-apps/EasyAnimate -
Wan2.1:https://github.com/Wan-Video/Wan2.1/ -
Wan2.2:https://github.com/Wan-Video/Wan2.2/ -
ComfyUI-KJNodes:https://github.com/kijai/ComfyUI-KJNodes -
ComfyUI-EasyAnimateWrapper:https://github.com/kijai/ComfyUI-EasyAnimateWrapper -
ComfyUI-CameraCtrl-Wrapper:https://github.com/chaojie/ComfyUI-CameraCtrl-Wrapper -
CameraCtrl:https://github.com/hehao13/CameraCtrl -
VACE:https://github.com/ali-vilab/VACE
通过以上内容,相信你对VideoX-Fun已有了全面的了解。无论是直接生成视频,还是训练自定义模型,它都能提供灵活且强大的支持。如果你是AI视频创作领域的开发者或爱好者,不妨尝试使用,探索更多视频生成的可能性。