モデル概要
モデル特徴
モデル能力
使用事例
license: other license_name: skywork-license license_link: LICENSE pipeline_tag: image-to-video
SkyReels V2: 無限長動画生成モデル
📑 技術レポート · 👋 プレイグラウンド · 💬 Discord · 🤗 Hugging Face · 🤖 ModelScope · 🌐 GitHub
SkyReels V2リポジトリへようこそ!ここでは、無限長動画生成モデルの重みを公開しています。私たちの知る限り、これはAutoRegressive Diffusion-Forcingアーキテクチャを採用し、公開モデルの中でSOTA性能を達成する初めてのオープンソース動画生成モデルです。
🔥🔥🔥 最新情報!!
- 2025年4月24日: 🔥 720PモデルSkyReels-V2-DF-14B-720PとSkyReels-V2-I2V-14B-720Pをリリース。前者は無限長の自己回帰的動画生成を、後者はImage2Video合成を可能にします。
- 2025年4月21日: 👋 SkyReels-V2シリーズモデルの推論コードと重み、および動画キャプションモデルSkyCaptioner-V1を公開。
- 2025年4月3日: 🔥 SkyReels-A2もリリース。任意の視覚要素を組み合わせ可能な制御可能な動画生成フレームワークです。
- 2025年2月18日: 🔥 SkyReels-A1を公開。ポートレート画像アニメーションのための効果的なオープンソースフレームワークです。
- 2025年2月18日: 🔥 SkyReels-V1をリリース。人間中心の動画基盤モデルとして最初で最も先進的なオープンソースモデルです。
🎥 デモ
📑 今後の予定
- [x] 技術レポート
- [x] 14Bと1.3Bモデルシリーズのチェックポイント
- [x] シングルGPU&マルチGPU推論コード
- [x] SkyCaptioner-V1: 動画キャプションモデル
- [x] プロンプトエンハンサー
- [ ] Diffusers統合
- [ ] 5Bモデルシリーズのチェックポイント
- [ ] カメラディレクターモデルのチェックポイント
- [ ] ステップ&ガイダンス蒸留モデルのチェックポイント
🚀 クイックスタート
インストール
# リポジトリをクローン
git clone https://github.com/SkyworkAI/SkyReels-V2
cd SkyReels-V2
# 依存関係をインストール。テスト環境はPython 3.10.12を使用。
pip install -r requirements.txt
モデルダウンロード
Hugging Faceからモデルをダウンロード可能:
タイプ | モデルバリアント | 推奨解像度/フレーム | リンク |
---|---|---|---|
Diffusion Forcing | 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 | 🤗 Huggingface 🤖 ModelScope | |
テキスト→動画 | 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 | 🤗 Huggingface 🤖 ModelScope | |
カメラディレクター | 5B-540P | 544 * 960 * 97f | 近日公開 |
5B-720P | 720 * 1280 * 121f | 近日公開 | |
14B-720P | 720 * 1280 * 121f | 近日公開 |
ダウンロード後、生成コマンドでモデルパスを設定:
シングルGPU推論
- 長尺動画生成のためのDiffusion Forcing
Diffusion Forcingバージョンモデルは無限長動画生成を可能にします。このモデルは**テキスト→動画(T2V)と画像→動画(I2V)**の両タスクをサポートし、同期・非同期両モードで推論可能です。ここでは長尺動画生成のための2つの実行スクリプトを例示します。動画の長さや推論モードなどのパラメータを調整したい場合は、以下の注意事項を先にお読みください。
10秒動画の同期生成
model_id=Skywork/SkyReels-V2-DF-14B-540P
# 同期推論
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 "夜明けの静かな湖を優雅に泳ぐ白鳥。首を優雅に曲げ、繊細な羽根を広げながら、霧が立ち込める水面に完璧な反射を見せています。時折、餌を求めて頭を水に浸します。" \
--addnoise_condition 20 \
--offload \
--teacache \
--use_ret_steps \
--teacache_thresh 0.3
30秒動画の非同期生成
model_id=Skywork/SkyReels-V2-DF-14B-540P
# 非同期推論
python3 generate_video_df.py \
--model_id ${model_id} \
--resolution 540P \
--ar_step 5 \
--causal_block_size 5 \
--base_num_frames 97 \
--num_frames 737 \
--overlap_history 17 \
--prompt "夜明けの静かな湖を優雅に泳ぐ白鳥。首を優雅に曲げ、繊細な羽根を広げながら、霧が立ち込める水面に完璧な反射を見せています。時折、餌を求めて頭を水に浸します。" \
--addnoise_condition 20 \
--offload
注意:
- **画像→動画(I2V)タスクを実行する場合は、コマンドに
--image ${画像パス}
を追加してください。最初のフレーム画像の説明を含むテキスト→動画(T2V)**のようなプロンプトを使用するのが良いでしょう。- 長尺動画生成では、
--num_frames
を切り替えるだけでOKです。例えば、--num_frames 257
は10秒動画、--num_frames 377
は15秒動画、--num_frames 737
は30秒動画、--num_frames 1457
は60秒動画に対応します。この数値は厳密な論理フレーム数と一致しませんが、いくつかのトレーニングパラメータと整合しており、より良い結果が得られます。因果ブロックサイズ>1で非同期推論を使用する場合、--num_frames
は慎重に設定する必要があります。--ar_step 5
で非同期推論を有効にできます。非同期推論時は--causal_block_size 5
が推奨されますが、同期生成では設定しないでください。覚えておいてください:モデルに入力されるフレーム潜在変数の数(例:base_num_frames=97の場合(97-1)//4+1=25、base_num_frames=97、num_frames=237、overlap_history=17の場合(237-97-(97-17)x1+17-1)//4+1=20)は、因果ブロックサイズで割り切れる必要があります。計算が難しすぎる場合は、上記の推奨設定を使用してください:) 非同期推論はシーケンス全体を拡散するのに多くのステップを要するため、同期モードよりも遅くなります。私たちの実験では、非同期推論は指示追従と視覚的一貫性の性能を向上させる可能性があります。- ピークVRAMを減らすには、生成長
--num_frames
を維持したまま--base_num_frames
を(例えば77や57に)下げてください。これにより動画品質がわずかに低下する可能性がありますが、小さすぎないように設定してください。--addnoise_condition
は、クリーンな条件にノイズを加えることで長尺動画生成をスムーズにするのに役立ちます。ノイズが大きすぎると一貫性が損なわれる可能性があります。20が推奨値で、より大きな値を試すこともできますが、50を超えないようにしてください。- 1.3Bモデルで540P動画を生成するには約14.7GBのピークVRAMが必要で、14Bモデルでは約51.2GBのピークVRAMが必要です。
- テキスト→動画 & 画像→動画
# テキスト→動画生成を実行
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 "そびえ立つ山々に囲まれた静かな湖。白鳥が優雅に水面を滑り、陽光が水面で踊っています。" \
--offload \
--teacache \
--use_ret_steps \
--teacache_thresh 0.3
注意:
- **画像→動画(I2V)**モデルを使用する場合は、
--image ${画像パス}
パラメータで入力画像を指定する必要があります。I2Vモデルには--guidance_scale 5.0
と--shift 3.0
が推奨されます。- 1.3Bモデルで540P動画を生成するには約14.7GBのピークVRAMが必要で、14Bモデルでは約43.4GBのピークVRAMが必要です。
- プロンプトエンハンサー
プロンプトエンハンサーはQwen2.5-32B-Instructをベースに実装され、--prompt_enhancer
パラメータで利用されます。短いプロンプトに理想的に機能しますが、長いプロンプトの場合、生成動画が過飽和状態になる可能性のある過度に長いプロンプトを生成する可能性があります。--prompt_enhancer
を使用する場合、GPUのピークメモリは64G+になることに注意してください。強化されたプロンプトを個別に取得したい場合は、テストのためにprompt_enhancerスクリプトを個別に実行することもできます。手順は以下の通りです:
cd skyreels_v2_infer/pipelines
python3 prompt_enhancer.py --prompt "そびえ立つ山々に囲まれた静かな湖。白鳥が優雅に水面を滑り、陽光が水面で踊っています。"
注意:
--use_usp
を使用する場合、--prompt_enhancer
は許可されません。--use_usp
パラメータを有効にする前に、skyreels_v2_infer/pipelines/prompt_enhancer.pyスクリプトを実行して強化されたプロンプトを生成することをお勧めします。
高度な設定オプション
以下は動画生成のための主要なカスタマイズ可能なパラメータです:
パラメータ | 推奨値 | 説明 |
---|---|---|
--prompt | 動画生成のためのテキスト説明 | |
--image | 画像→動画生成のための入力画像パス | |
--resolution | 540P または 720P | 出力動画解像度(モデルタイプに基づき選択) |
--num_frames | 97 または 121 | 生成する総フレーム数(540Pモデルは97、720Pモデルは121) |
--inference_steps | 50 | ノイズ除去ステップ数 |
--fps | 24 | 出力動画のフレームレート |
--shift | 8.0 または 5.0 | フローマッチングスケジューラパラメータ(T2Vは8.0、I2Vは5.0) |
--guidance_scale | 6.0 または 5.0 | テキスト遵守強度の制御(T2Vは6.0、I2Vは5.0) |
--seed | 再現性のための固定シード(ランダム生成の場合は省略) | |
--offload | True | VRAM使用量削減のためモデルコンポーネントをCPUにオフロード(推奨) |
--use_usp | True | xDiT USPによるマルチGPU加速を有効化 |
--outdir | ./video_out | 生成動画の保存ディレクトリ |
--prompt_enhancer | True | プロンプトをより詳細な説明に拡張 |
--teacache | False | 高速推論のためteacacheを有効化 |
--teacache_thresh | 0.2 | 高速化が進むほど品質が低下 |
--use_ret_steps | False | teacacheのための保持ステップ |
Diffusion Forcing追加パラメータ
パラメータ | 推奨値 | 説明 |
---|---|---|
--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を使用したマルチGPU推論
xDiT USPを使用して推論を加速します。例えば、2GPUで動画を生成するには以下のコマンドを使用:
- Diffusion Forcing
model_id=Skywork/SkyReels-V2-DF-14B-540P
# diffusion forcing同期推論
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 "夜明けの静かな湖を優雅に泳ぐ白鳥。首を優雅に曲げ、繊細な羽根を広げながら、霧が立ち込める水面に完璧な反射を見せています。時折、餌を求めて頭を水に浸します。" \
--addnoise_condition 20 \
--use_usp \
--offload \
--seed 42
- テキスト→動画 & 画像→動画
# テキスト→動画生成を実行
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 "そびえ立つ山々に囲まれた静かな湖。白鳥が優雅に水面を滑り、陽光が水面で踊っています。" \
--use_usp \
--seed 42
注意:
- **画像→動画(I2V)**モデルを使用する場合は、
--image ${画像パス}
パラメータで入力画像を指定する必要があります。I2Vモデルには--guidance_scale 5.0
と--shift 3.0
が推奨されます。
目次
概要
最近の動画生成の進歩は拡散モデルと自己回帰フレームワークによって推進されていますが、プロンプト遵守、視覚的品質、動的モーション、および長さの調和において重要な課題が残っています: 時間的視覚的品質を向上させるための動的モーションの妥協、解像度を優先するための動画長の制約(5-10秒)、および一般的なMLLMがショット構成、俳優の表情、カメラモーションなどの映画文法を解釈できないことから生じるショット対応生成の不十分さ。これらの相互に関連する制限は、現実的な長尺合成とプロフェッショナルな映画スタイルの生成を妨げています。
これらの制限に対処するため、私たちはDiffusion Forcingフレームワークを使用した世界初の無限長映画生成モデルであるSkyReels-V2を紹介します。私たちのアプローチは、マルチモーダル大規模言語モデル(MLLM)、マルチステージ事前トレーニング、強化学習、およびDiffusion Forcing技術を統合して包括的な最適化を実現します。技術的革新を超えて、SkyReels-V2は、ストーリー生成、画像→動画合成、カメラディレクター機能、およびSkyreels-A2システムを通じたマルチサブジェクト一貫性動画生成など、複数の実用的なアプリケーションを可能にします。
SkyReels-V2の方法論
SkyReels-V2の方法論は、いくつかの相互接続されたコンポーネントで構成されています。さまざまな品質のトレーニングデータを準備する包括的なデータ処理パイプラインから始まります。その中核には、動画コンテンツに詳細な注釈を提供する動画キャプショナーアーキテクチャがあります。システムは、基本的な動画生成能力を構築するためのマルチタスク事前トレーニング戦略を採用しています。トレーニング後の最適化には、モーション品質を向上させるための強化学習、拡張動画生成のためのDiffusion Forcingトレーニング、および視覚的洗練のための高品質教師ありファインチューニング(SFT)段階が含まれます。モデルは、効率的なトレーニングと推論のために最適化された計算インフラストラクチャで実行されます。SkyReels-V2は、ストーリー生成、画像→動画合成、カメラディレクター機能、および要素→動画生成を含む複数のアプリケーションをサポートします。
SkyReels-V2の主要な貢献
動画キャプショナー
SkyCaptioner-V1は、データ注釈のための私たちの動画キャプションモデルとして機能します。このモデルは、ベースモデルQwen2.5-VL-72B-Instructとバランスの取れた動画データ上のサブエキスパートキャプショナーのキャプショニング結果でトレーニングされています。バランスの取れた動画データは、概念のバランスと注釈品質を確保するために約200万の動画を慎重にキュレーションしたデータセットです。Qwen2.5-VL-7B-Instruct基盤モデルを基に構築されたSkyCaptioner-V1は、ドメイン固有の動画キャプショニングタスクでのパフォーマンスを向上させるためにファインチューニングされています。SOTAモデルとの性能を比較するために、1,000サンプルのテストセットを使用して異なるキャプショニング分野の精度を手動で評価しました。提案されたSkyCaptioner-V1は、ベースラインモデルの中で最高の平均精度を達成し、ショット関連分野で劇的な結果を示しています。