AIパーソナル・ラーニング
と実践的なガイダンス
サイバーナイフ用ドローイングミラー

Open Sora:顔の一貫性を最適化するオープンソースのビデオ生成ツール

はじめに

Open-Soraは、誰でも効率的に高品質のビデオを生成できるように設計されたオープンソースプロジェクトです。hpcaitechチームによって開発され、テキストや画像からビデオを生成するツールを提供し、複数の解像度と持続時間をサポートしています。このプロジェクトは完全にオープンソースであり、モデルの重み、コード、トレーニングプロセスは、コミュニティへの貢献を奨励するために公開されている。最新バージョンであるOpen-Sora 2.0は、性能面で業界のトップモデルに近く、学習コストはわずか20万ドルで、高速かつ高品質なビデオを生成する。ユーザーはコードを無料でダウンロードし、ローカルで実行したり、Hugging FaceのGradioインターフェースを通じて体験することができる。 Open-Soraは、クリエイター、開発者、研究者のためのものであり、商用製品を提供しながら、ビデオ作成における人気と革新を促進している:ビデオ・オーシャン .

Open Sora: 顔の一貫性を最適化するオープンソース動画生成ツール-1


 

機能一覧

  • テキストから動画生成:テキストの説明を入力すると、内容に合った動画が生成されます。
  • 画像から動画生成:1枚の画像からダイナミックな動画を生成します。
  • ビデオの延長:ビデオの長さを延長したり、コンテンツを追加します。
  • マルチレゾリューション対応:144pから768pまでのビデオ出力に対応。
  • 柔軟な再生時間:2秒から16秒までの動画を作成できます。
  • 多彩なアスペクト比:16:9、9:16、1:1などをサポート。
  • オープンソースのモデルとトレーニング:モデルの重みとトレーニングコードを提供し、カスタム開発をサポートする。
  • 効率的な推論:最適化されたアルゴリズムにより、ハードウェア要件が削減され、1つのGPUでビデオを生成できます。
  • キューワードの最適化:GPT-4oをサポートし、キューワードを強化し、生成の質を向上させる。
  • モーション・スコアリング:モーション・スコアリングでビデオのダイナミクスを調整します。

 

ヘルプの使用

設置プロセス

Open-Soraを使うには、Pythonの環境設定と依存関係のインストールが必要です。詳しい手順は以下の通りです:

  1. 仮想環境の構築
    依存関係の衝突を避けるために、Python 3.10で仮想環境を作成する:

    conda create -n opensora python=3.10
    conda activate opensora
  1. コードベースのクローン
    GitHubからOpen-Soraプロジェクトをダウンロードする:

    git clone https://github.com/hpcaitech/Open-Sora
    cd Open-Sora
    
  2. 依存関係のインストール
    以下のコマンドを実行して、PyTorchのバージョンが2.4.0以上であることを確認してください:

    pip install -v .
    

    開発モードが必要な場合は、それを使用する:

    pip install -v -e .
    
  3. アクセラレーション・ライブラリのインストール
    オープン・ソラの使い方 xformers 歌で応える flash-attn パフォーマンスを高める。CUDAのバージョンに応じてインストールされます:

    pip install xformers==0.0.27.post2 --index-url https://download.pytorch.org/whl/cu121
    pip install flash-attn --no-build-isolation
    

    より高速な推論のために、手動でコンパイルされた flash-attention::

    git clone https://github.com/Dao-AILab/flash-attention
    cd flash-attention/hopper
    python setup.py install
    
  4. モデルウェイトのダウンロード
    Open-Sora 2.0は256pと768pのビデオ生成をサポートし、モデルはHugging FaceまたはModelScopeからダウンロードできる:

    pip install "huggingface_hub[cli]"
    huggingface-cli download hpcai-tech/Open-Sora-v2 --local-dir ./ckpts
    

    または ModelScope を使用します:

    pip install modelscope
    modelscope download hpcai-tech/Open-Sora-v2 --local_dir ./ckpts
    
  5. インストールの確認
    環境が正常であることを確認する:

    python -c "import opensora; print(opensora.__version__)"
    

使用方法

Open-Soraは、テキストからビデオ、画像からビデオ、その他多くの機能を簡単な操作でサポートしています。以下はその詳細です:

テキストからビデオへ

Open-Soraは画像から動画へのプロセスを最適化しますが、テキストから動画への直接生成もサポートしています。品質を向上させるには、テキストから画像、動画へのパイプラインを推奨します。

  1. キューの準備
    例えば、「嵐の海、岩に打ち寄せる大きな波、暗い雲」など。手がかりとなる言葉が具体的であればあるほど、良い結果が得られます。
  2. generateコマンドを実行する
    256x256のビデオを生成する:

    torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "Stormy ocean with crashing waves"
    

    768x768のビデオを生成する(複数のGPUが必要):

    torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_768px.py --save-dir samples --prompt "Stormy ocean with crashing waves"
    
  3. 調整パラメーター
    • --aspect_ratioアスペクト比を設定する。 16:9 もしかしたら 1:1.
    • --num_frames4k+1(最大129フレーム)の範囲でフレーム数を設定。
    • --offload Trueローエンドデバイス向けのメモリ最適化を有効にする。
  4. 結果を見る
    生成されたビデオは samples フォルダにMP4形式で保存する。

画像からビデオへの変換

  1. 参考画像の準備
    画像をアップロードして input.png.
  2. generateコマンドを実行する
    256pのビデオを生成する:

    torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --cond_type i2v_head --prompt "A serene forest with flowing river" --ref input.png
    

    768pのビデオを生成する:

    torchrun --nproc_per_node 8 --standalone scripts/diffusion/inference.py configs/diffusion/inference/768px.py --cond_type i2v_head --prompt "A serene forest with flowing river" --ref input.png
    
  3. ダイナミック・エフェクトの最適化
    利用する --motion-score 画面ダイナミクスの度合いを調整する。デフォルト値は4:

    torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/256px.py --cond_type i2v_head --prompt "A running horse" --ref horse.png --motion-score 7
    

キュー・ワードの最適化

Open-SoraはGPT-4oの使用をサポートし、キュー・ワードを最適化し、ジェネレーションの質を向上させる:

  1. OpenAI API キーを設定します:
    export OPENAI_API_KEY=sk-xxxx
    
  2. optimiseコマンドを実行する:
    torchrun --nproc_per_node 1 --standalone scripts/diffusion/inference.py configs/diffusion/inference/t2i2v_256px.py --save-dir samples --prompt "raining, sea" --refine-prompt True
    

グラディオ・インターフェースの操作

Open-Soraはインタラクティブなグラディオのインターフェースを提供する:

  1. 起動インターフェース:
    python scripts/demo.py --model-type v2-768px
    
  2. ブラウザからアクセス http://localhost:7860.
  3. プロンプトの単語を入力するか、写真をアップロードして、解像度とフレームレートを調整し、"Generate "をクリックしてビデオを生成する。
  4. プロンプトを絞り込む」最適化プロンプトを有効にできます(OpenAIのAPIキーが必要です)。

カスタムモデルのトレーニング

ユーザーは自分のデータセットに基づいてモデルを訓練することができる:

  1. データセットを用意する:動画のパスと説明を含むCSVファイル。
  2. 設定ファイルを修正する:configs/opensora-v2/train/stage1.pyデータパスを設定する。
  3. ランのトレーニング:
    torchrun --nproc_per_node 8 scripts/train.py configs/opensora-v2/train/stage1.py --data-path your_data.csv
    

計算効率

Open-Soraは推論効率を最適化しており、テスト結果は以下の通りです(H100 GPU、50ステップのサンプリング):

  • 256x256:シングルGPU 60秒、メモリ52.5GB、4GPU 34秒、メモリ44.3GB。
  • 768x768:8GPU、276秒、44.3GBビデオメモリ。

ほら

  • ハードウェア要件少なくとも24GBのビデオメモリを搭載したNVIDIA H100またはA100を推奨します。
  • キューの質詳細な説明文は、ビデオの結果を劇的に改善します。
  • ライセンスOpen-SoraはMITライセンスを使用しており、条件付きで商用利用が可能です。

 

アプリケーションシナリオ

  1. ショートビデオ制作
    ブロガーはOpen-Soraを使って、ソーシャルメディア上で共有するための「夜にきらめく街の光」などのプロモーションビデオを作成することができる。
  2. 教育用アニメーション
    教師は「太陽の周りを回る惑星」などのアニメーションを作成し、授業の魅力を高めることができる。
  3. ゲームシーンのデザイン
    開発者は、ゲームの背景やトランジションに使用するために、コンセプトマップに基づいてダイナミックなシーンを生成します。
  4. AIリサーチ
    研究者はモデルコードを修正して、新しいアルゴリズムやデータセットをテストし、ビデオ生成技術を進歩させることができる。

 

品質保証

  1. オープン-そら2.0のパフォーマンスは?
    VBenchのレビューでは、Open-Sora 2.0はOpenAI Soraとの差を0.69%まで縮め、HunyuanVideo 11BとStep-Video 30Bに近づいた。
  2. どのような解像度とデュレーションに対応していますか?
    144p~768p、2秒~16秒のビデオ時間、16:9、9:16などのアスペクト比をサポート。
  3. 発電の質を最適化するには?
    細かい合図で調整する motion-score(1-7)、またはGPT-4o Optimise Prompt Wordsを有効にする。
  4. 無料で使えますか?
    Open-Soraは完全にオープンソースであり、MITライセンスに従ってモデルとコードが自由に利用できる。
無断転載を禁じます:チーフAIシェアリングサークル " Open Sora:顔の一貫性を最適化するオープンソースのビデオ生成ツール
ja日本語