【Open-Sora Plan】1024×1024の10秒動画を生成できる無料版Sora
WEELメディア事業部LLMライターのゆうやです。
Open-Sora Planは、OpenAIによって開発されたテキストからビデオへの変換モデル「Sora」の再現を目指すプロジェクトです。
このプロジェクトは、北京大学や深センに拠点を置くAI企業Rabbitpreなどの中国の研究者たちによって立ち上げられました。
Open-Sora Planは、現段階ではテキスト入力だけで10秒程度の1024×1024の動画を生成可能となっています。
現在は、さらに長い1分程度の動画も生成できるようにトレーニングが続けられています。
このモデルは、デモ版が公開されているので、気軽に試すことができ、また完全にオープンソースなのでローカルに実装することもできます。
今回は、Open-Sora Planの概要と使ってみた感想をお伝えします。
是非最後までご覧ください!
Open-Sora Planの概要
Open-Sora Planは、OpenAIによって発表されたテキストからビデオへの変換を可能にするモデル「Sora」のオープンソース版の実現を目指すプロジェクトです。
現段階ではテキスト入力だけで10秒程度の1024×1024の動画を生成可能となっています。
こちらは実際にOpen-Sora Planで生成された動画です。
非常にきれいで自然な動画が生成できていますよね!
そんなOpen-Sora Planは、以下のような要素で成り立っています。
- Video VQ-VAE: ビデオデータを時空間次元で圧縮する技術です。これにより、ビデオデータを扱いやすい形に変換し、後続の処理を容易にします。
- Denoising Diffusion Transformer: デノイジング(ノイズ除去)を担う部分で、入力されたデータから不要な情報を取り除き、よりクリアなビデオ生成を可能にします。
- Condition Encoder: 複数の条件付き入力を受け入れることができるエンコーダーです。これにより、生成されるビデオの多様性と精度が向上します。
Open-Sora Planは、Soraの技術を簡単かつスケーラブルなバージョンで再現することを目指しています。
今後、より高い解像度でのビデオ-VQ-VAEのファインチューニングや、より多くのデータとGPUを使用したトレーニングなどが予定されています。
今後の目標タスク等は、公式GitHubリポジトリに掲載されているので、詳しくはそちらをご覧ください。
ここからは、Open-Sora Planを実際に使っていこうと思います。
なお、OpenAIのSoraについて知りたい方はこちらの記事をご覧ください。
→【Sora】世界に激震を与えたOpenAIの動画生成AI!できることや仕組み、問題点まで徹底解説
Open-Sora Plan v1.3.0が登場
2024/10/22、Open-Sora Plan v1.3.0がリリースされました!
Open-Sora Plan v1.3.0は、計算コストの増加に対処しながら高解像度で長時間のビデオ生成を目指すモデルです。
主要な機能として、ウェーブレット変換を用いたWFVAEによる効率的なVAE学習、ユーザープロンプトを洗練させる大規模言語モデルPrompt Refiner、高品質データクリーニング、スパースアテンションによるコスト削減、そしてダイナミックな解像度やビデオ期間の調整が新たに追加されました。
OpenーSora Plan v1.3.0の概要
Open-Sora Plan v1.3.0では、従来モデルに比べ、効率性と性能を向上させるために、いくつか新たな機能が追加されています。
- ウェーブレット変換を用いたWFVAEによる効率的なVAE学習
- 大規模言語モデルPrompt Refiner
- 高品質データクリーニング
- スパースアテンション
- ダイナミックな解像度やビデオ期間の調整
それぞれ解説します。
ウェーブレット変換を用いたWFVAEによる効率的なVAE学習
従来のVAEは、高解像度・長時間ビデオの処理に多大な計算リソースを要していました。
これに対し、WFVAEはウェーブレット変換を用いてビデオを複数のサブバンドに分割し、異なる周波数帯の情報を効率的に捉えることで、より効率的で安定したVAE学習を実現しています。
参考:https://github.com/PKU-YuanGroup/Open-Sora-Plan/blob/main/docs/Report-v1.3.0.md
また、従来のVAEアーキテクチャでは、動画圧縮の際にモデルのパラメータや構造に冗長性も生じていました。そのため、Open-Sora Plan v1.3.0では、より効率性を高めモデルアーキテクチャを大幅に簡素化、推論時間を短縮することで、メモリ消費量を削減しています。
参考:https://github.com/PKU-YuanGroup/Open-Sora-Plan/blob/main/docs/Report-v1.3.0.md
さらに、動画生成モデルのエンコードとデコードに関するメモリ消費量や速度などを比較した表が以下です。表から見てわかるように、WF-VAEはメモリ消費量とスケーラビリティにおいて他のモデルよりも優れています。
この結果は、高解像度・長時間の動画生成において、他のモデルよりも安定的・効率的ということが言えます。
参考:https://github.com/PKU-YuanGroup/Open-Sora-Plan/blob/main/docs/Report-v1.3.0.md
大規模言語モデルPrompt Refiner
Prompt Refinerは、短いテキスト入力をより詳細で動的な動画生成に変えるために設計された大規模言語モデルです。この機能により、ユーザーが入力する簡単なプロンプトからでも、具体的な内容の動画を生成できるようになります。
例えば、短いプロンプトが与えられた場合でも、Prompt Refinerはそのプロンプトを元に詳細なシーン説明や追加のアクションを自動的に考慮し、動画生成に必要な豊かな内容を提供します。これにより、ユーザーが入力した少量の情報から、より説得力のある動画が作成されます。
さらに、このモデルはシーンの雰囲気や光の当たり方、カメラの動きなども補完することで、より自然でフルエンゲージメントな動画生成を実現しています。
高品質データクリーニング
Open-Sora Plan v1.3.0のデータクリーニング戦略では、動画生成モデルの学習データの品質を高めるために、徹底したクリーニングが行われています。具体的には、元のPanda70mデータセットから、静止画や複数の字幕が含まれる動画、モーションブラーが多く含まれる動画などの品質が低い動画を除去し、より高品質なデータセットを構築しています。
このプロセスの結果、データセットの27%のみが最終的に残されました。これにより、ノイズの多いデータが除去され、生成されるビデオの視覚的品質と一貫性が向上します。また、キャプションの質も改善され、動画内容に対するテキストの整合性が強化されています。
このクリーニング戦略により、モデルはより高品質なデータで学習することができ、生成される動画のクオリティが向上することが期待されています
参考:https://github.com/PKU-YuanGroup/Open-Sora-Plan/blob/main/docs/Report-v1.3.0.md
スパースアテンション
計算コストを削減しながらもグローバルなアテンションを提供するための手法。
Open-Sora Plan v1.3.0では、3Dアテンションモデルの学習を高速化するためにSkiparse(スキップスパース)アテンションが導入されています。
参考:https://github.com/PKU-YuanGroup/Open-Sora-Plan/blob/main/docs/Report-v1.3.0.md
この手法は、アテンション操作を効率的に行うために、トークンのサブセットを選択して処理を行い、全体的なフロップス(浮動小数点演算数)を削減しつつも、グローバルな情報を保持することができます。
具体的には、スパース比を固定し、アテンションに参加するトークンを2つの異なるスキップ方式で選択することで、計算負荷を軽減。
この方法により、従来のフル3Dアテンションに比べて、トレーニング時間が大幅に短縮され、93x720p解像度の動画でもステップあたり42秒、93x480pの動画では8秒にまで時間が短縮されました 。
このSkiparseアテンションは、トークン間のアテンションの接続距離を平均的に短く保ちながら、3Dアテンションの強力な時空間モデリング能力を模倣します。結果として、計算コストが抑えられつつも、高品質な動画生成が可能になります。
参考:https://github.com/PKU-YuanGroup/Open-Sora-Plan/blob/main/docs/Report-v1.3.0.md
ダイナミックな解像度やビデオ期間の調整
Open-Sora Plan v1.3.0では、ダイナミックな解像度と動画期間の調整機能が導入されています。この機能により、動画をフレーム単位で扱うことができ、様々な長さや解像度の動画に対して効率的な利用が可能になります。
これにより、動画生成時の柔軟性が向上し、異なる解像度やフレーム数に応じた最適な生成が実現されています。
たとえば、単一のフレームを画像として扱い、解像度や期間が異なる動画に対しても均一な処理を行うことができるため、従来よりも高い効率で動画生成が可能になっています。
Open-Sora Planのライセンス
Open-Sora PlanはMITライセンスのもとで提供されており、無商用利用することも可能です。
利用用途 | 可否 |
---|---|
商用利用 | ⭕️ |
改変 | ⭕️ |
配布 | ⭕️ |
特許使用 | 記載なし |
私的使用 | ⭕️ |
また、Open-Sora Planの学習データはCC0ライセンスに基づいており、完全にオープンソース化されています。
Open-Sora Planの使い方
まず、Open-Sora Planのローカルでの実行方法を説明します。
最初にGitHubのリポジトリをクローンし、そのディレクトリに移動してください。
git clone https://github.com/PKU-YuanGroup/Open-Sora-Plan
cd Open-Sora-Plan
次に、仮想環境を作成して必要なパッケージをインストールします。
conda create -n opensora python=3.8 -y
conda activate opensora
pip install -e .
ここまで完了したら、トレーニング ケース用の追加パッケージをインストールします。
pip install -e ".[train]"
pip install flash-attn --no-build-isolation
最後に、オプションの要件をインストールします。
pip install -e '.[dev]'
これで要件のインストールは完了で、以下のコマンドでGradio Web UIを起動して使用できます。
python -m opensora.serve.gradio_web_server
ローカルで実行する方法のほかに、Hugging Face Spaceでのオンラインデモや、Google Colabのノートブックも公開されているため、気軽に試すことができます。
Hugging Face Space:Open-Sora-Plan-v1.0.0
Google Colab:Open_Sora_Plan_jupyter.ipynb
Open-Sora Planを実行するのに必要なスペック
Open-Sora Planを実行するのに必要な要件・スペックは以下の通りです。
- Pythonバージョン: 3.8以上
- Pytorchバージョン: 1.13.1以上
- CUDAバージョン: 11.7以上
- GPU:A100GPU×1以上
やはり動画生成にはそれなりのGPUスペックが求められるため、なかなか家庭用PCで動かすのは難しいかもしれません。
今回は、Google ColabでA100を使用してOpen-Sora Planを試します。
Open-Sora Planを実際に使ってみた
以下のプロンプトを入力し、ステップ数はデフォルトの50で生成します。
Countless balloons in the sky
空に浮かぶ無数の気球
結果は1分30秒ほどで以下の動画を生成してくれました。
テキストだけでここまで想定通りの動画が生成できるのは驚きです。
ここからは、公開されているSoraの生成例のプロンプトをOpen-Sora Planに入力して、どれほどのクオリティで生成できるのか比較していきます。
Open-Sora Planと本家Soraを比較してみた
それでは早速比較検証していきましょう。
まずは以下のプロンプトを入力します。
An extreme close-up of an gray-haired man with a beard in his 60s, he is deep in thought pondering the history of the universe as he sits at a cafe in Paris, his eyes focus on people offscreen as they walk as he sits mostly motionless, he is dressed in a wool coat suit coat with a button-down shirt , he wears a brown beret and glasses and has a very professorial appearance, and the end he offers a subtle closed-mouth smile as if he found the answer to the mystery of life, the lighting is very cinematic with the golden light and the Parisian streets and city in the background, depth of field, cinematic 35mm film.
60代のひげを生やした白髪の男性の極端なクローズアップ。彼はパリのカフェに座りながら宇宙の歴史について深く考え込んでおり、座りながら歩く画面外の人々に目を向けている。 ほとんど動かず、ウールのコートにボタンダウンのシャツを着た彼は、茶色のベレー帽と眼鏡をかけて非常に教授っぽい風貌をしており、最後に彼は人生の謎に対する答えを見つけたかのように、微妙に口を閉じた笑みを浮かべている。 ライティングは、金色の光と背景のパリの街並み、被写界深度、映画のような35mmフィルムで、とても映画的です。
結果はこのようになりました。
Open-Sora Plan
「60代のひげを生やした白髪の男性の極端なクローズアップ」という部分は正しく生成できていますが、「パリのカフェに座りながら」や、「茶色のベレー帽」などの部分は再現できていません。
また、手もおかしくなってしまっています。
Sora
Soraの生成した動画は、プロンプトを忠実に再現しており、品質も正直Open-Sora Planとは比較にならないほど高品質です。
別のプロンプトでも試してみましょう。
以下のプロンプトを入力します。
Reflections in the window of a train traveling through the Tokyo suburbs.
東京郊外を走る電車の窓に映る風景。
結果はこのようになりました。
Open-Sora Plan
かろうじて電車が走っている様子はわかるほどの品質で、プロンプトは「東京郊外を走る電車の窓に映る風景」ですので、全く違う描写を生成してしまっています。
Sora
Soraが生成した動画は、プロンプトを完全に再現しており、窓に反射して写る車内の人々の様子まで描写しているという超高性能っぷりです。
このプロンプトでも、Open-Sora PlanはまだまだSoraには追いついていないことが分かりました。
Open-Sora Planは、今後取り組むべきタスクが多く明確化されており、トレーニングも継続して行われる予定です。
そのためそう遠くない将来に、オープンソース版のSoraが完成し、誰もが気軽に利用・カスタマイズできるようになることでしょう!
なお、別のオープンソースSoraプロジェクトであるOpen-Soraについて知りたい方はこちらの記事をご覧ください。
→【Open-Sora】裏ワザでOpenAIのSoraを使う禁断の方法
Open-Sora Planのこれからに期待!
Open-Sora Planは、OpenAIによって開発されたテキストからビデオへの変換モデル「Sora」の再現を目指すプロジェクトです。
このプロジェクトは、北京大学や深センに拠点を置くAI企業Rabbitpreなどの中国の研究者たちによって立ち上げられ、コミュニティの支援を受けながら進められています。
現段階ではテキスト入力だけで10秒程度の1024×1024の動画を生成可能となっており、今後さらに高画質でより長い動画の生成を可能にするため、トレーニングが続けられています。
実際に使ってみたところ、プロンプトの内容を含む動画を生成してくれますが、品質はまだまだSoraには及ばず改めてSoraの凄さを実感しました。
Open-Sora Planは完全にオープンソースとして開発されているので、今後のトレーニングやコラボレーションによるさらなる性能向上に期待しましょう!
生成系AIの業務活用なら!
・生成系AIを活用したPoC開発
・生成系AIのコンサルティング
・システム間API連携
最後に
いかがだったでしょうか?
弊社では
・マーケティングやエンジニアリングなどの専門知識を学習させたAI社員の開発
・要件定義・業務フロー作成を80%自動化できる自律型AIエージェントの開発
・生成AIとRPAを組み合わせた業務自動化ツールの開発
・社内人事業務を99%自動化できるAIツールの開発
・ハルシネーション対策AIツールの開発
・自社専用のAIチャットボットの開発
などの開発実績がございます。
まずは、「無料相談」にてご相談を承っておりますので、ご興味がある方はぜひご連絡ください。
➡︎生成AIを使った業務効率化、生成AIツールの開発について相談をしてみる。
「生成AIを社内で活用したい」「生成AIの事業をやっていきたい」という方に向けて、生成AI社内セミナー・勉強会をさせていただいております。
セミナー内容や料金については、ご相談ください。
また、サービス紹介資料もご用意しておりますので、併せてご確認ください。