Hugging Face AI WebTV: 自動化されたビデオおよび音楽合成ストリームの構築

Hugging Faceは、オープンソースのtext-to-videoおよび音楽合成モデルを統合して、自動放送ストリームを作成する実験的なデモンストレーションであるAI WebTVを発表しました。このプロジェクトは、現在の生成AIが短い合成ビデオシーケンスと付随するオーディオを生成できる能力を示すための、テックデモおよびショーリールとして機能します。

システムアーキテクチャとパイプライン

AI WebTVは、人間の高度なアイデアをビデオとオーディオの連続的なストリームに変換するパイプラインを利用しています。プロセスは、人間が提供するベースとなるテーマとアイデアから始まり、それが大規模言語モデル(LLM)、具体的にはChatGPTによって処理され、特定のビデオショットのためのさまざまな個別のプロンプトが生成されます。

ビデオ生成チェーン

コアとなるビデオ合成は、ModelScopeに基づいたモデルであるZeroscope V2によって行われます。生成プロセスは通常、2段階のチェーンに従います:

  1. 初期生成: zeroscope_v2_576 モデルが576x320の解像度でビデオクリップを作成します。
  2. アップスケーリング: zeroscope_v2_XL を使用したオプションの2回目のパスにより、ビデオを1024x576にアップスケールします。この段階では、初期生成で使用されたものと同じプロンプトを適用する必要があります。

ポストプロセッシングとオーディオ

視覚的な出力を洗練させ、聴覚的な要素を追加するために、パイプラインは2つの追加ツールを採用しています:

  • フレーム補間: FILM (Frame Interpolation for Large Motion) アルゴリズムを使用して、トランジションを滑らかにし、特にカメラのパンや回転中の小さなレンダリングエラーを修正します。
  • オーディオ合成: 音楽はMusicGenファミリーの musicgen-melody モデルを使用して生成されます。

放送インフラ

システムはNodeJSとTypeScriptを使用して実装されています。Hugging Face Spacesを活用してモデルをホストし、@gradio/client NPMパッケージを介してそれらを呼び出します。最終的な放送には、FFmpegを使用して.mp4ビデオと.m4aオーディオファイルのプレイリストを読み込み、それらをFLVストリームとしてRTMPサーバー(具体的には node-media-server)に送信します。

機能と観察事項

AI WebTVのデモは、text-to-videoモデルが現実世界の物理現象や多様な芸術的スタイルを模倣できる能力を強調しています。

動的なシーンシミュレーション

text-to-videoモデルは、流体、動物、車両の動きを合成できます。プロジェクトからの例には以下が含まれます:

  • 柔らかなボケ味の背景の中で、花の周りを飛び回るミツバチ。
  • 激しい川の中で、水しぶきを上げながらサケを捕まえるグリズリーのクマ。
  • 日の出時の岩の海岸に打ち寄せる波。

スタイリングと構図

このシステムは、フォトリアルなシネマティックショット(例:夜明けの宇宙飛行士とラマ)から、PixarやStudio Ghibliスタイルの3Dレンダリングアニメーションに至るまで、視覚的なスタイルの汎用性を示しています。

技術的な制限と失敗事例

成功の一方で、このプロジェクトは現在のtext-to-video合成におけるいくつかの繰り返される失敗モードを特定しました:

  • 方向の誤り: モデルは動きの方向に苦労することがあり、逆再生されているように見えるクリップが生成されることがあります。
  • レンダリングアーティファクト: 現実的なシーンに、垂直線や波のようなアーティファクトが時折現れます。
  • プロンプトのリーク: モデルがプロンプト内の単語を文字通り画像内に挿入してしまうことがあります。例えば、「IMAX」や「Canon EOS」と言及すると、それらの単語やオブジェクトがシーン内に物理的に現れる原因となることがあります。
  • 属性の無視: 特定の修飾語(例:「緑色」という色)が、モデルによって時折無視されます。

Text-to-Videoプロンプティングのベストプラクティス

AI WebTVの実験に基づき、Hugging Faceは出力品質を向上させるための以下の戦略を推奨しています:

  • ビデオ特有のキーワードを使用する: ランダムなアニメーションや逆再生を避けるために、カメラの動き、キャラクターの向き、速度、方向を明示的に指定してください。
  • シーン間の一貫性を確保する: ビデオのシーケンスを作成する場合、異なるテイク間で色などの要素の一貫性を維持するために、すべてのプロンプトに詳細な情報を含めてください。
  • フレーム補間を活用する: FILMのようなツールを使用してアニメーションを滑らかにし、スローモーション効果を作成します。これにより、レンダリングの欠陥を許容できるスタイリッシュな特徴に変えることができます。

Sources