モデル概要
モデル特徴
モデル能力
使用事例
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をリリースしました。これは最初で最も先進的なオープンソースの人間中心のビデオ基盤モデルです。
🎥 デモ
📑 TODOリスト
- [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のピーク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 ${image_path}
パラメータを使用して入力画像を提供する必要があります。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+であることに注意してください。プロンプトエンハンサーを個別に実行してテストしたい場合は、以下の手順に従ってください:
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を使用して推論を加速します。例えば、2つのGPUでビデオを生成するには、以下のコマンドを使用できます:
- 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は、ベースラインモデルの中で最高の平均精度を達成し、ショット関連フィールドで劇的な結果を示しています。