📑 技术报告 · 👋 在线体验 · 💬 Discord · 🤗 Hugging Face · 🤖 ModelScope · 🌐 GitHub
欢迎来到 SkyReels V2 代码库!这里提供我们无限长度影片生成模型的权重文件。
# clone the repository.
git clone https://github.com/SkyworkAI/SkyReels-V2
cd SkyReels-V2
# Install dependencies. Test environment uses Python 3.10.12.
pip install -r requirements.txt您可以从 Hugging Face 下载我们的模型:
| 类型 | 模型变体 | 推荐高度/宽度/帧数 | 链接 |
|---|---|---|---|
| 扩散驱动 | 1.3B-540P | 544 * 960 * 97f | 🤗 Huggingface 🤖 ModelScope |
| 5B-540P | 544 * 960 * 97f | 即将推出 | |
| 5B-720P | 720 * 1280 * 121f | 即将推出 | |
| 14B-540P | 544 * 960 * 97f | 🤗 Huggingface 🤖 ModelScope | |
| 14B-720P | 720 * 1280 * 121f | 即将推出 | |
| 文本生成视频 | 1.3B-540P | 544 * 960 * 97f | 即将推出 |
| 5B-540P | 544 * 960 * 97f | 即将推出 | |
| 5B-720P | 720 * 1280 * 121f | 即将推出 | |
| 14B-540P | 544 * 960 * 97f | 🤗 Huggingface 🤖 ModelScope | |
| 14B-720P | 720 * 1280 * 121f | 🤗 Huggingface 🤖 ModelScope | |
| 图像生成视频 | 1.3B-540P | 544 * 960 * 97f | 🤗 Huggingface 🤖 ModelScope |
| 5B-540P | 544 * 960 * 97f | 即将推出 | |
| 5B-720P | 720 * 1280 * 121f | 即将推出 | |
| 14B-540P | 544 * 960 * 97f | 🤗 Huggingface 🤖 ModelScope | |
| 14B-720P | 720 * 1280 * 121f | 即将推出 | |
| 镜头导演 | 5B-540P | 544 * 960 * 97f | 即将推出 |
| 5B-720P | 720 * 1280 * 121f | 即将推出 | |
| 14B-720P | 720 * 1280 * 121f | 即将推出 |
下载完成后,请在生成命令中设置模型路径:
扩散驱动版本模型支持生成无限时长视频。该模型同时支持文本生成视频(T2V) 和图像生成视频(I2V) 任务,可在同步和异步两种模式下进行推理。
model_id=Skywork/SkyReels-V2-DF-14B-540P
# synchronous inference
python3 generate_video_df.py \
--model_id ${model_id} \
--resolution 540P \
--ar_step 0 \
--base_num_frames 97 \
--num_frames 257 \
--overlap_history 17 \
--prompt "A graceful white swan with a curved neck and delicate feathers swimming in a serene lake at dawn, its reflection perfectly mirrored in the still water as mist rises from the surface, with the swan occasionally dipping its head into the water to feed." \
--addnoise_condition 20 \
--offload注意:
- 如需执行**图像生成视频(I2V)任务,请在命令中添加
--image ${图像路径},并建议在文本生成视频(T2V)**提示词中包含首帧图像的描述。- 可使用
--ar_step 5启用异步推理模式。异步推理时推荐设置--causal_block_size 5。- 为降低显存峰值占用,可在保持生成帧数
--num_frames不变的情况下减小--base_num_frames值,这可能会轻微影响视频质量。
# run Text-to-Video Generation
model_id=Skywork/SkyReels-V2-T2V-14B-540P
python3 generate_video.py \
--model_id ${model_id} \
--resolution 540P \
--num_frames 97 \
--guidance_scale 6.0 \
--shift 8.0 \
--fps 24 \
--prompt "A serene lake surrounded by towering mountains, with a few swans gracefully gliding across the water and sunlight dancing on the surface." \
--offload注意:
- 使用图像生成视频(I2V) 模型时,必须通过
--image ${image_path}参数提供输入图像。建议为 I2V 模型设置--guidance_scale 5.0和--shift 3.0参数。
提示词增强功能基于 Qwen2.5-32B-Instruct 实现,可通过 --prompt_enhancer 参数调用。该功能特别适合短提示词优化,但处理长提示词时可能生成过度冗长的内容,导致生成视频出现信息过载。注意:使用 --prompt_enhancer 时 GPU 峰值内存需达到 64G 以上。若需单独获取增强后的提示词,也可通过运行 prompt_enhancer 脚本进行测试,具体步骤如下:
cd skyreels_v2_infer/pipelines
python3 prompt_enhancer.py --prompt "A serene lake surrounded by towering mountains, with a few swans gracefully gliding across the water and sunlight dancing on the surface."高级配置选项
以下是视频生成过程中可自定义的关键参数:
| 参数名称 | 推荐值 | 功能说明 |
|---|---|---|
| --prompt | 用于生成视频的文本描述 | |
| --image | 图像生成视频任务的输入图像路径 | |
| --resolution | 540P 或 720P | 输出视频分辨率(根据模型类型选择) |
| --num_frames | 97 或 121 | 生成总帧数(540P模型用97帧,720P模型用121帧) |
| --inference_steps | 50 | 去噪步数 |
| --fps | 24 | 输出视频的每秒帧率 |
| --shift | 8.0 或 5.0 | 流匹配调度器参数(文生视频用8.0,图生视频用5.0) |
| --guidance_scale | 6.0 或 5.0 | 文本遵循强度控制(文生视频用6.0,图生视频用5.0) |
| --seed | 固定随机种子确保结果可复现(留空则随机生成) | |
| --offload | True | 将模型组件卸载至CPU以降低显存占用(推荐开启) |
| --use_usp | True | 启用xDiT USP多GPU加速功能 |
| --outdir | ./video_out | 生成视频的保存目录 |
| --prompt_enhancer | True | 将提示词扩展为更详细的描述 |
扩散强制附加参数
| 参数名称 | 推荐值 | 功能说明 |
|---|---|---|
| --ar_step | 0 | 控制异步推理(0表示同步模式) |
| --base_num_frames | 97 或 121 | 基准帧数(540P用97帧,720P用121帧) |
| --overlap_history | 17 | 长视频生成中用于平滑过渡的重叠帧数 |
| --addnoise_condition | 20 | 提升长视频生成的一致性 |
| --causal_block_size | 5 | 使用异步推理时推荐启用(--ar_step > 0时) |
我们采用xDiT USP技术加速推理。例如使用2张GPU生成视频时,可采用以下命令:
model_id=Skywork/SkyReels-V2-DF-14B-540P
# diffusion forcing synchronous inference
torchrun --nproc_per_node=2 generate_video_df.py \
--model_id ${model_id} \
--resolution 540P \
--ar_step 0 \
--base_num_frames 97 \
--num_frames 257 \
--overlap_history 17 \
--prompt "A serene lake surrounded by towering mountains, with a few swans gracefully gliding across the water and sunlight dancing on the surface." \
--use_usp \
--offload \
--seed 42# run Text-to-Video Generation
model_id=Skywork/SkyReels-V2-T2V-14B-540P
torchrun --nproc_per_node=2 generate_video.py \
--model_id ${model_id} \
--resolution 540P \
--num_frames 97 \
--guidance_scale 6.0 \
--shift 8.0 \
--fps 24 \
--offload \
--prompt "A serene lake surrounded by towering mountains, with a few swans gracefully gliding across the water and sunlight dancing on the surface." \
--use_usp \
--seed 42注意:
- 使用图像生成视频(I2V) 模型时,必须通过
--image ${image_path}参数提供输入图像。建议为 I2V 模型设置--guidance_scale 5.0和--shift 3.0参数。
当前视频生成领域虽因扩散模型与自回归框架的进步而蓬勃发展,但仍存在四大核心挑战:为提升时序画质而牺牲运动动态、为保障分辨率而限制视频时长(5-10秒)、通用多模态大语言模型(MLLM)因无法解析镜头构图/演员表情/运镜等影视语法导致的镜头感知生成缺失。这些相互关联的局限阻碍了长视频合成与专业影视级内容的生成。
为此,我们推出全球首个采用扩散驱动框架(Diffusion Forcing)的无限时长电影生成模型 SkyReels-V2。该方法融合多模态大语言模型(MLLM)、多阶段预训练、强化学习与扩散驱动技术,实现全链路优化。除技术突破外,SkyReels-V2 更支持故事生成、图像生成视频、导演运镜控制,并通过 Skyreels-A2 系统实现多主体一致性视频生成。
SkyReels-V2 的方法论由多个相互关联的组件构成。它始于一个全面的数据处理流程,用于准备各种高质量的训练数据。其核心是视频描述生成架构(Video Captioner),该架构为视频内容提供详细的标注。系统采用多任务预训练策略来构建基础视频生成能力。训练后优化包括强化学习以提升运动质量、扩散强制训练(Diffusion Forcing Training)用于生成长视频,以及高质量监督微调(SFT)阶段以进行视觉优化。模型运行在优化的计算基础设施上,以实现高效的训练和推理。SkyReels-V2 支持多种应用,包括故事生成、图像到视频合成、摄像导演功能以及元素到视频生成。
SkyCaptioner-V1 作为我们的视频描述生成模型,用于数据标注。该模型基于基础模型 Qwen2.5-VL-72B-Instruct 的描述结果,以及在平衡视频数据上训练的子专家描述生成器进行训练。平衡视频数据是一个精心策划的数据集,包含约 200 万条视频,以确保概念平衡和标注质量。基于 Qwen2.5-VL-7B-Instruct 基础模型,SkyCaptioner-V1 经过微调,以提升在特定领域视频描述任务中的性能。为了与当前最先进(SOTA)模型进行性能比较,我们使用包含 1,000 个样本的测试集,对不同描述领域进行了人工准确性评估。提出的 SkyCaptioner-V1 在基线模型中取得了最高的平均准确性,并在镜头相关领域展现了显著的结果。
| 模型 | Qwen2.5-VL-7B-Ins. | Qwen2.5-VL-72B-Ins. | Tarsier2-Recap-7b | SkyCaptioner-V1 |
|---|---|---|---|---|
| 平均准确率 | 51.4% | 58.7% | 49.4% | 76.3% |
| 镜头类型 | 76.8% | 82.5% | 60.2% | 93.7% |
| 镜头角度 | 60.0% | 73.7% | 52.4% | 89.8% |
| 镜头位置 | 28.4% | 32.7% | 23.6% | 83.1% |
| 摄像机运动 | 62.0% | 61.2% | 45.3% | 85.3% |
| 表情 | 43.6% | 51.5% | 54.3% | 68.8% |
| 类型_主类型 | 43.5% | 49.7% | 47.6% | 82.5% |
| 类型_子类型 | 38.9% | 44.9% | 45.9% | 75.4% |
| 外观 | 40.9% | 52.0% | 45.6% | 59.3% |
| 动作 | 32.4% | 52.0% | 69.8% | 68.8% |
| 位置 | 35.4% | 48.6% | 45.5% | 57.5% |
| 是否为主体 | 58.5% | 68.7% | 69.7% | 80.9% |
| 环境 | 70.4% | 72.7% | 61.4% | 70.5% |
| 光照 | 77.1% | 80.0% | 21.2% | 76.5% |
受先前在大语言模型(LLM)中成功的启发,我们提出通过强化学习来提升生成模型的性能。具体而言,我们专注于运动质量,因为我们发现生成模型的主要缺点在于:
为了避免其他指标(如文本对齐和视频质量)的下降,我们确保偏好数据对在文本对齐和视频质量上具有可比性,而仅在运动质量上存在差异。由于人工标注成本较高,这一要求为获取偏好标注带来了更大的挑战。为了解决这一挑战,我们提出了一个半自动流程,策略性地结合了自动生成的运动对和人工标注结果。这种混合方法不仅扩大了数据规模,还通过精心策划的质量控制提高了与人类偏好的一致性。利用这一增强的数据集,我们首先训练了一个专门的奖励模型,以捕捉配对样本之间通用的运动质量差异。随后,学习到的奖励函数指导直接偏好优化(DPO)的样本选择过程,从而提升生成模型的运动质量。
我们引入了扩散强制变换器(Diffusion Forcing Transformer),以释放模型生成长视频的能力。扩散强制是一种训练和采样策略,其中每个标记(token)被分配一个独立的噪声水平。这使得标记可以根据任意的、针对每个标记的调度进行去噪。从概念上讲,这种方法起到了一种部分掩码(partial masking)的作用:噪声为零的标记完全未被掩码,而完全噪声则将其完全掩码。扩散强制训练模型去“解除掩码”任何可变噪声标记的组合,使用更干净的标记作为条件信息来指导噪声标记的恢复。在此基础上,我们的扩散强制变换器可以根据前一段的最后帧无限扩展视频生成。请注意,同步全序列扩散是扩散强制的一个特例,其中所有标记共享相同的噪声水平。这一关系使我们能够从全序列扩散模型微调扩散强制变换器。
我们分别在 540p 和 720p 分辨率下实施了两个连续的高质量监督微调(SFT)阶段,初始 SFT 阶段在预训练后立即进行,但在强化学习(RL)阶段之前。第一阶段的 SFT 作为概念平衡训练器,建立在仅使用 fps24 视频数据的基础模型预训练结果之上,同时策略性地移除了 FPS 嵌入组件以简化架构。通过使用高质量概念平衡样本进行训练,该阶段为后续训练过程建立了优化的初始化参数。此后,在完成扩散强制阶段后,我们在 720p 分辨率下执行了第二次高分辨率 SFT,采用了相同的损失公式和通过人工筛选的更高质量概念平衡数据集。这一最终优化阶段专注于提高分辨率,从而进一步提升整体视频质量。
为全面评估我们提出的方法,我们构建了 SkyReels-Bench 用于人工评估,并利用开源评测框架 V-Bench 进行自动化评测。这使我们能够将模型与当前最先进的(SOTA)基线方法进行比较,包括开源模型和闭源模型。
在人工评估方面,我们设计了包含 1,020 个文本提示词的 SkyReels-Bench 评测集,系统性地评估三个维度:指令遵循度、运动质量、一致性与视觉质量。该基准测试旨在同时评估文生视频(T2V)和图生视频(I2V)生成模型,为不同生成范式提供全面评估。为确保公平性,所有模型均在默认设置下以统一分辨率进行评估,且未对生成结果进行后过滤处理。
| 模型名称 | 综合得分 | 指令遵循度 | 一致性 | 视觉质量 | 运动质量 |
|---|---|---|---|---|---|
| Runway-Gen3 Alpha | 2.53 | 2.19 | 2.57 | 3.23 | 2.11 |
| HunyuanVideo-13B | 2.82 | 2.64 | 2.81 | 3.20 | 2.61 |
| Kling-1.6 STD 模式 | 2.99 | 2.77 | 3.05 | 3.39 | 2.76 |
| 海螺-01 | 3.0 | 2.8 | 3.08 | 3.29 | 2.74 |
| Wan2.1-14B | 3.12 | 2.91 | 3.31 | 3.54 | 2.71 |
| SkyReels-V2 | 3.14 | 3.15 | 3.35 | 3.34 | 2.74 |
评估结果表明,我们的模型在指令遵循度(3.15) 方面相比基线方法取得显著提升,同时在运动质量(2.74) 方面保持竞争力,且未牺牲一致性(3.35) 表现。
| 模型 | 综合得分 | 指令遵循度 | 一致性 | 视觉质量 | 运动质量 |
|---|---|---|---|---|---|
| HunyuanVideo-13B | 2.84 | 2.97 | 2.95 | 2.87 | 2.56 |
| Wan2.1-14B | 2.85 | 3.10 | 2.81 | 3.00 | 2.48 |
| 海螺-01 | 3.05 | 3.31 | 2.58 | 3.55 | 2.74 |
| Kling-1.6 Pro 模式 | 3.4 | 3.56 | 3.03 | 3.58 | 3.41 |
| Runway-Gen4 | 3.39 | 3.75 | 3.2 | 3.4 | 3.37 |
| SkyReels-V2-DF | 3.24 | 3.64 | 3.21 | 3.18 | 2.93 |
| SkyReels-V2-I2V | 3.29 | 3.42 | 3.18 | 3.56 | 3.01 |
我们的结果表明,SkyReels-V2-I2V(3.29) 和 SkyReels-V2-DF(3.24) 均在开源模型中达到最先进性能,在所有质量维度上显著超越 HunyuanVideo-13B(2.84)和 Wan2.1-14B(2.85)。SkyReels-V2-I2V 以 3.29 的平均得分,展现出与闭源模型 Kling-1.6(3.4)和 Runway-Gen4(3.39)相当的性能。
为客观比较 SkyReels-V2 模型与其他领先开源文生视频模型,我们使用公共基准测试 V-Bench 进行全面评估。我们的评估特别采用了该基准测试的长文本提示词版本。为与基线模型进行公平比较,我们严格遵循其推荐的推理设置。
| 模型 | 总分 | 质量得分 | 语义得分 |
|---|---|---|---|
| OpenSora 2.0 | 81.5 % | 82.1 % | 78.2 % |
| CogVideoX1.5-5B | 80.3 % | 80.9 % | 77.9 % |
| HunyuanVideo-13B | 82.7 % | 84.4 % | 76.2 % |
| Wan2.1-14B | 83.7 % | 84.2 % | 81.4 % |
| SkyReels-V2 | 83.9 % | 84.7 % | 80.8 % |
VBench 结果表明,SkyReels-V2 在包括 HunyuanVideo-13B 和 Wan2.1-14B 在内的所有对比模型中表现最优,获得最高的总分(83.9%) 和质量得分(84.7%)。在此评估中,语义得分略低于 Wan2.1-14B,而我们在人工评估中优于 Wan2.1-14B,主要差异源于 V-Bench 对镜头场景语义遵循度的评估不足。
我们衷心感谢Wan 2.1、XDit以及Qwen 2.5代码库的贡献者们,感谢他们的开放研究与卓越贡献。
@misc{chen2025skyreelsv2infinitelengthfilmgenerative,
title={SkyReels-V2: Infinite-length Film Generative Model},
author={Guibin Chen and Dixuan Lin and Jiangping Yang and Chunze Lin and Juncheng Zhu and Mingyuan Fan and Hao Zhang and Sheng Chen and Zheng Chen and Chengchen Ma and Weiming Xiong and Wei Wang and Nuo Pang and Kang Kang and Zhiheng Xu and Yuzhe Jin and Yupeng Liang and Yubing Song and Peng Zhao and Boyuan Xu and Di Qiu and Debang Li and Zhengcong Fei and Yang Li and Yahui Zhou},
year={2025},
eprint={2504.13074},
archivePrefix={arXiv},
primaryClass={cs.CV},
url={https://arxiv.org/abs/2504.13074},
}