FastVideo:高速ビデオ生成を実現する統合ポストトレーニング&推論フレームワーク

タグ 動画生成AIFastVideoLoRAVSAポストトレーニングオープンソース分散トレーニングHunyuanVideocolumnコラムlinuxLinuxwindowsWindowsgpuGitHubhao-ai-lab

FastVideo:高速ビデオ生成を実現する統合ポストトレーニング&推論フレームワーク

ひとことでいうと

FastVideoは、AIを使った動画生成を「速く・使いやすく」するためのオープンソースフレームワークです。テキストを入力するだけで動画を作れるだけでなく、自分のデータでモデルをカスタマイズしたり、生成速度を大幅に上げたりする機能もひとつにまとまっています。Wan2.1・Wan2.2・HunyuanVideoなど主要な動画生成AIに対応しており、NVIDIA・AMD・IntelのGPUでも動かせます。研究用途から商用プロダクト開発まで幅広く活用できるのが特徴です。

こんな人におすすめ

1. 動画生成AIの研究者・エンジニア

自社データでモデルを追加学習(ファインチューニング)したい方に向いています。LoRA(少ないパラメータで効率よくモデルを調整する手法)や蒸留のレシピが用意されており、大規模なGPUクラスターを使った分散トレーニングにも対応しています。

2. リアルタイム動画生成を目指すプロダクト開発者

1枚のGPUで1080p・5秒の動画を数秒で生成できるパイプラインを構築できます。最新のアテンション最適化技術(後述)を組み合わせることで、商用レベルの速度を実現できます。

3. 動画AIで素早くプロトタイプを作りたい方

PythonのコードとCLI(コマンドラインインターフェース=文字で命令を送る方法)の両方が用意されています。テキストから動画を生成して試してみたい、という段階でも使い始めやすい構成です。

インストール・使い方

FastVideoは uv(ユーブイ)というツールを使った環境構築を推奨しています。uvはPythonのパッケージ管理ツールで、従来よく使われるcondaより高速・安定したインストールが期待できます。

動作に必要なスペックの目安:NVIDIA H100・A100・RTX 4090クラスのGPU、Python 3.10〜3.12、モデルのダウンロードのために数十GB以上のディスク空き容量が必要です。

Step 1: Python仮想環境の作成と有効化

uv venv --python 3.12 --seed
source .venv/bin/activate

「仮想環境」とは、他のプロジェクトと依存関係がぶつからないよう用意する、プロジェクト専用のPythonの作業スペースです。source .venv/bin/activate を実行すると、以降のコマンドがこの環境内で動くようになります。

Step 2: FastVideoのインストール

uv pip install fastvideo

FastVideoの本体を仮想環境にインストールします。必要なライブラリも自動的に一緒にインストールされます。

Step 3: VSAカーネルのインストール(推奨)

公式ドキュメントの VSA Installation に従って、Video Sparse Attention(VSA)カーネルをインストールしてください。VSAとは動画生成を高速化する専用の計算モジュールで、これを追加することで推論速度が大幅に向上します。

Step 4: 最初の動画を生成する

以下のスクリプトをコピー&ペーストしてファイルに保存し、python ファイル名.py で実行してください。テキストプロンプトから動画が生成されます。

import os
from fastvideo import VideoGenerator

def main():
    os.environ["FASTVIDEO_ATTENTION_BACKEND"] = "VIDEO_SPARSE_ATTN"

    generator = VideoGenerator.from_pretrained(
        "FastVideo/FastWan2.1-T2V-1.3B-Diffusers",
        num_gpus=1,
    )

    prompt = "A curious raccoon peers through a vibrant field of yellow sunflowers."

    video = generator.generate_video(
        prompt,
        output_path="my_videos/",
        save_video=True
    )

if __name__ == '__main__':
    main()

VideoGenerator.from_pretrained() にモデルのIDを渡すと、Hugging Face Hub(AIモデルの公開ライブラリ)からウェイト(学習済みデータ)が自動的にダウンロードされます。num_gpus=1 は使用するGPU数の指定で、複数GPU構成にも対応しています。生成した動画は output_path で指定したフォルダに保存されます。

動かしてみた

実際にセットアップを試みたところ、ディスク容量の制約から完全なインストールには至りませんでした。ここでは公式情報をもとに、試す前に知っておくとよいことをまとめます。

推奨動作環境まとめ

  • GPU: NVIDIA H100・A100・RTX 4090(Linux・Windows・macOS に対応)
  • Python バージョン: 3.10〜3.12
  • 推奨インストールツール: uv(condaより高速・安定)
  • モデルのサイズ感: 最小構成の FastWan2.1-T2V-1.3B でも数GB、大規模モデル(CausalWan2.2-I2V-A14B は14Bパラメータ)では数十GB以上の空き容量が必要です
  • Docker対応: docker/Dockerfile.python3.12.cuda12.9.1 など複数のDockerfile(コンテナ=隔離された実行環境の設計図)が用意されており、コンテナ環境での利用も想定されています

モデルのダウンロードは初回起動時に自動で行われますが、ネットワーク環境と空きストレージを事前に確認しておくと安心です。

ブラウザで試す(公式デモ)

手元にH100/A100/RTX 4090クラスのGPUがなくても、公式が提供しているウェブデモで動作を確認できます。

まず雰囲気をつかみたい場合は、これらのデモを先に試してみるのがおすすめです。ローカルのGPU環境がある場合は、上記インストール手順に従ってセルフホストでの動作も確認してみてください。

はじめの一歩:すぐ試せる手順のコツ

インストール後にスムーズに動かすためのポイントをまとめます。

  • まずインストール確認から: ターミナル(文字で命令を送る画面)で python -c "import fastvideo; print(fastvideo.__version__)" を実行し、バージョン番号が表示されれば正常にインストールできています。
  • CLIでも動かせる: スクリプトを書かなくても、コマンドを一行入力するだけで動画生成を試せます。詳細は 公式 Quickstart を参照してください。
  • 小さいモデルから始める: FastWan2.1-T2V-1.3B(1.3B=13億パラメータ)は比較的コンパクトなモデルで、まず試すのに向いています。
  • ディスクは余裕を持って確保: モデルのダウンロードは数GB〜数十GBになります。実行前にストレージの空きを確認しておきましょう。
  • GPUメモリが足りないときは: num_gpus の値を増やしてGPUを複数枚使う Sequence Parallelism(後述)を検討してみてください。
  • プロンプトは英語で入力: テキストプロンプトは英語での入力が基本です。作りたい映像のイメージを英語に翻訳してから入力しましょう。

用語とポイント解説

Video DiT(ビデオ・ディット)

動画生成に特化した Diffusion Transformer(拡散トランスフォーマー)モデルのことです。かんたんに言うと、「テキストや画像を手がかりに、ノイズから動画を少しずつ作り上げるAIモデル」です。FastVideoはこの Video DiT を効率よく動かすためのフレームワークとして設計されています。

ポストトレーニング(後処理学習)

すでに大量のデータで学習済みのモデルを、追加で学習させる工程のことです。かんたんに言うと、「完成した料理に自分好みの味付けを加えるような作業」です。LoRAや蒸留といった手法がこのカテゴリに含まれており、FastVideoはこれらをひとつのフレームワークで扱えます。

LoRA(ローラ)

Low-Rank Adaptation(低ランク適応)の略です。かんたんに言うと、「モデル全体を書き換えずに、少数のパラメータだけ調整して特定のスタイルや内容に最適化する手法」です。学習コストを大幅に抑えながらカスタマイズできるため、スタイル転移や特定ドメインへの適応に広く使われています。

VSA(Video Sparse Attention)

FastVideoが独自開発したスパースアテンション機構です。かんたんに言うと、「動画の全フレームを均等に処理するのではなく、重要な部分だけに計算資源を集中させることで処理を速くする仕組み」です。これにより、従来より少ない計算量で高品質な動画を生成できます。

STA(Sliding Tile Attention)

タイル(小ブロック)状の局所ウィンドウをスライドさせながらアテンション計算を行う手法です。かんたんに言うと、「動画を小さなブロックに分割して順番に処理することで、高解像度動画でも無理なく計算できるようにする技術」です。1080pなどの高解像度動画生成の効率化に貢献しています。

DMD2(ディーエムディー2)

Distribution Matching Distillation 2の略で、蒸留(Distillation)手法の一種です。かんたんに言うと、「大きくて遅いモデル(教師)の出力パターンを小さなモデル(生徒)に学ばせることで、ステップ数を大幅に減らして高速化する技術」です。公式によると50倍以上の高速化を達成した事例もあります。

FSDP2(エフエスディーピー2)

PyTorchの Fully Sharded Data Parallel v2 の略です。かんたんに言うと、「巨大なモデルのパラメータを複数のGPUに分散して持たせることで、1枚のGPUには収まらない大規模モデルもトレーニングできるようにする仕組み」です。FastVideoの大規模分散トレーニングを支えるコンポーネントのひとつです。

Sequence Parallelism(シーケンス並列化)

動画の時間方向(フレームの系列)を複数のGPUに分割して並列処理する手法です。かんたんに言うと、「長い動画を複数のGPUで手分けして処理することで、1枚のGPUでは難しい長尺・高解像度動画もスムーズに生成できるようにする仕組み」です。コード中の num_gpus パラメータで設定できます。

Self-Forcing(セルフフォーシング)

因果的(Causal)な動画生成を可能にする蒸留手法です。かんたんに言うと、「前のフレームを参照しながら次のフレームを順番に生成することで、低遅延なリアルタイム動画生成を実現する技術」です。Image-to-Video(静止画から動画への変換)パイプラインでも活用されています。

活用例

  • 広告・SNS向けショート動画の量産: テキストプロンプトを切り替えるだけで、異なる内容のショート動画を連続して生成できます。FastWan2.1(1.3B)モデルなら比較的小さいGPUでも動かせるため、制作コストの削減につながります。
  • ブランド動画のスタイル統一(LoRAファインチューニング): 自社の動画素材を使ってLoRAを追加学習させることで、ブランドのビジュアルトーンを再現したカスタムモデルを作れます。一貫したスタイルの動画を量産したい場面で有効です。
  • 研究用の高速推論パイプライン構築: DMD2蒸留によってデノイジングのステップ数を大幅に削減し、同じGPUリソースでより多くの動画を生成・実験できます。研究の反復サイクルを速めたい場合に適しています。
  • 静止画から動画への変換(Image-to-Video): CausalWan2.2 I2V A14BモデルとSelf-Forcingを組み合わせることで、1枚の静止画を動画に変換するパイプラインを構築できます。商品写真や人物写真のアニメーション化などに応用できます。
  • 動画生成AIの勉強会・ハンズオン教材: Python APIとCLIを使えば、プログラミング初心者でも数行のコードから動画生成を体験できます。生成AIの仕組みを学ぶ社内勉強会やハンズオンイベントの教材としても活用できます。
  • 大規模分散トレーニングの検証基盤: FSDP2とSequence Parallelismを組み合わせた大規模学習環境の検証プラットフォームとして利用できます。複数のGPUノードを持つHPCクラスターでの実験基盤として適しています。

FastVideoは、動画生成AIをとりまく多様なニーズ——スピード重視の推論からカスタムモデル開発まで——をひとつのフレームワークで解決しようとしている点がユニークです。ぜひ広告・SNS向けのショート動画量産や、LoRAを使ったブランド動画のスタイル統一などに活用してみてはいかがでしょうか。