モデル概要
モデル特徴
モデル能力
使用事例
license: other license_name: skywork-license license_link: LICENSE pipeline_tag: text-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 ${image_path}
をコマンドに追加してください。また、最初のフレーム画像の説明を含むテキスト→動画(T2V)**のようなプロンプトを使用するのが良いでしょう。- 長尺動画生成では、
--num_frames
を切り替えるだけです。例えば、10秒動画は--num_frames 257
、15秒は--num_frames 377
、30秒は--num_frames 737
、60秒は--num_frames 1457
です。この数値は指定時間の論理フレーム数と厳密に一致しませんが、トレーニングパラメータと整合しており、より良い結果が得られます。因果ブロックサイズ>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が必要です。
- テキスト→動画 & 画像→動画
# テキスト→動画生成を実行
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 ${image_path}
パラメータで入力画像を指定する必要があります。I2Vモデルには--guidance_scale 5.0
と--shift 3.0
が推奨されます。- 1.3Bモデルで540P動画を生成するには約14.7GBのピークVRAM、14Bモデルでは約43.4GBが必要です。
- プロンプトエンハンサー
プロンプトエンハンサーはQwen2.5-32B-Instructをベースに実装され、--prompt_enhancer
パラメータで使用されます。短いプロンプトに理想的に機能しますが、長いプロンプトでは過度に長いプロンプトを生成し、生成動画の過飽和を引き起こす可能性があります。--prompt_enhancer
使用時はGPUのピークメモリが64GB以上必要です。プロンプトエンハンサーを個別にテストしたい場合は、以下の手順で実行可能:
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 ${image_path}
パラメータで入力画像を指定する必要があります。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はベースラインモデルの中で最高の平均精度を達成し、ショット関連分野で劇的な結果を示しています。