FastVideo:トレーニングから推論まで動画生成を高速化
スパースアテンション、蒸留、スケーラブルなトレーニング、リアルタイム動画生成をGPUおよびApple Silicon上で組み合わせたオープンフレームワーク、FastVideoを紹介します。
FastVideo:トレーニングから推論まで動画生成を高速化
動画拡散モデルは強力ですが、ワークフローのほぼすべての段階で高いコストがかかります。トレーニングには分散システムと大規模なデータセットが必要であり、推論では高次元の時空間表現に対して数十回のデノイズステップを実行することがあります。短い生成動画であっても、大量のGPUメモリと計算リソースが必要になる場合があります。
FastVideoは、動画モデルのポストトレーニングと高速化された推論の両方に対応する統合フレームワークです。最適化をデプロイ時だけの個別の課題として扱うのではなく、ファインチューニング、蒸留、スパースアテンション、分散トレーニング、ユーザー向けの生成APIを1つのコードベースにまとめています。
その結果、オープンな動画拡散モデルを扱う研究者やエンジニアにとって実用的な基盤となっています。特に、レイテンシ、メモリ使用量、ハードウェアの柔軟性が重要な場合に有用です。
FastVideoが提供するもの
FastVideoは、双方向動画モデルと自己回帰動画モデルの両方に対して、エンドツーエンドのポストトレーニングワークフローをサポートします。開発者は、最先端のオープン動画DiTに対してフルファインチューニングまたはLoRAファインチューニングを実行し、動画・画像・テキストのデータセットを準備し、複数の蒸留手法を使って推論コストを削減できます。
主なトレーニング機能は次のとおりです。
- Distribution Matching Distillation(DMD2): 動画生成に必要なデノイズステップ数を削減します。
- Video Sparse Attention(VSA): 動画データの構造を活用してアテンションの処理量を削減します。
- スパース蒸留: モデルのトレーニングとスパース計算を組み合わせ、対応するワークフローで50倍を超えるデノイズ高速化を実現します。
- FSDP2とシーケンス並列処理: 大規模なトレーニングジョブを複数のデバイスに分散します。
- 選択的アクティベーションチェックポイント: 再計算と引き換えにメモリ消費量を削減します。
- Self-Forcing因果蒸留: 自己回帰またはストリーミングのシナリオ向けに、因果生成ワークフローをサポートします。
この組み合わせが重要なのは、高速なアテンションカーネルだけでは問題全体を解決できないためです。デノイズステップが多すぎるためにモデルが依然として遅い場合や、トレーニング時にメモリへ収まらない場合があります。FastVideoでは、これらの最適化レイヤーをまとめて利用できます。
推論の最適化
推論において、FastVideoは分散生成向けのシーケンス並列処理と、複数のアテンションバックエンドを提供します。フレームワークは、コマンドラインインターフェースとPython APIの両方を通じてこれらの機能を公開しており、研究環境としてもアプリケーションコンポーネントとしても利用できます。
高速化を重視するプロジェクトとしては、対応するハードウェアとオペレーティングシステムの範囲も広いと言えます。FastVideoは、NVIDIA H100、A100、RTX 4090 GPUに加え、Linux、Windows、macOSの構成をサポートします。Apple SiliconはMLXランタイムとFastMetal-QADモデルファミリーを通じてサポートされます。
このプロジェクトには、リアルタイムアプリケーション向けの統合機能とデプロイパスも含まれています。apps/dreamverse/にあるDreamverseは、FastVideoのリアルタイム動画生成・編集プラットフォームです。ストリーミング生成と、プロジェクトが「vibe directing」と呼ぶ、動画の生成中にインタラクティブに方向性を指定する機能をサポートします。Dreamverseは、ローカルGPU、SSH経由のセルフホストB200サーバー、Docker、またはサーバーレスのModal上で実行できます。
uvを使ったインストール
プロジェクトでは、uvを使って分離されたPython環境を作成することを推奨しています。これにより、既存のConda環境を使う場合よりも、一般的に高速で安定したインストールが可能になります。
CUDA 12を使用するNVIDIAシステムでの基本的なセットアップは次のとおりです。
uv venv --python 3.12 --seed
source .venv/bin/activate
UV_TORCH_BACKEND=cu126 uv pip install fastvideo
CUDA 13では、代わりにUV_TORCH_BACKEND=cu130を使用します。FastVideoはコンパイル済みカーネルに依存し、アテンションバックエンドによって互換性要件が異なる場合があるため、プラットフォーム別のインストールガイドが重要です。
Apple Siliconでは、MLXエクストラをインストールし、FastMetal-QADチェックポイントを使用します。
uv pip install -e '.[mlx]'
利用可能なFastMetal-QADモデルには、Macハードウェア向けに最適化された1.3B、5B、14Bのバリエーションがあります。インストール後、FastVideo/FastMetal-1.3B-QADまたは別の対応チェックポイントをダウンロードし、Apple Siliconガイドに従ってください。
NVIDIA DGX Sparkシステムでは、別の方法が必要です。FastVideo CUDAカーネル用のビルド済みARMホイールが存在しないため、パッケージをソースからインストールする必要があります。
UV_TORCH_BACKEND=cu130 uv pip install -e .
これにより、ARM64環境向けにカーネルがローカルでコンパイルされます。互換性のあるビルド済みARM64 FlashAttentionホイールは別途提供されています。
最初の生成を実行する
環境とVSAカーネルをインストールしたら、最小限のPython例でVideoGenerator APIを使って動画を生成できます。
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, "
"its eyes wide with interest."
)
generator.generate_video(
prompt,
output_path="my_videos/",
save_video=True,
)
if __name__ == "__main__":
main()
次のコマンドで実行します。
python example.py
FASTVIDEO_ATTENTION_BACKEND設定では、動画スパースアテンションのバックエンドを選択します。num_gpusパラメーターは利用可能なハードウェアに合わせて調整でき、output_pathは生成ファイルの書き込み先を指定します。本番環境での利用については、推論クイックスタートとモデルファミリー別クックブックに、より詳細な設定オプションが記載されています。
蒸留とパフォーマンスの例
FastVideoの最適化は、モデルが低レイテンシで短い動画クリップを生成する必要がある場合に特に有用です。プロジェクトの報告によると、FastWan-QADはエンドツーエンドで1.8秒以内に5秒間の動画を生成できます。別の紹介されているワークフローでは、単一GPU上で5秒間の1080p動画を4.5秒で生成します。
リポジトリには、複数のモデルファミリー向けのスパース蒸留レシピが含まれています。たとえば、FastWan2.1-T2V-1.3BのレシピではFastVideo Synthetic Wan2.1 480Pデータセットを使用し、FastWan2.2-TI2V-5BのレシピではFastVideo Synthetic Wan2.2 720Pデータセットを使用します。
これらの例は、フレームワークの中心的な設計原則を示しています。レイテンシの改善は、モデルレベルとシステムレベルの技術を組み合わせることで実現します。段階的な蒸留によってデノイズ反復回数を減らし、スパースアテンションによって各反復のコストを削減し、分散実行によってより大規模なワークロードを実用的にします。
より広範なエコシステムにおけるFastVideo
このフレームワークは、関連する研究および本番プロジェクトの基盤にもなっています。SGLangの拡散推論機能は、2025年9月24日時点のFastVideoフォークをベースにしています。その他、FastVideoを基盤とする、または関連するプロジェクトには、DanceGRPO、SRPO、DCM、HY-WorldPlay、Hunyuan Video 1.5、Kandinsky-5.0、LongCat Videoがあります。
このエコシステムは、開発者が推論スタックを選択するうえで重要です。FastVideoは単一のチェックポイントや単一のアプリケーションに限定されません。その抽象化は、トレーニング、評価、推論、ハードウェア固有のカーネル、アプリケーションのデプロイをカバーしており、新しい最適化手法の実験にも動画生成製品の構築にも適しています。
利用に適した場面
オープンな動画モデルをファインチューニングしたい場合、拡散モデルのステップ数を削減したい場合、スパースアテンションを導入したい場合、または低レイテンシの生成サービスを構築したい場合、FastVideoは有力な候補です。研究コードとデプロイコードを近い関係に保ちたいチームにとって、特に有用です。
主な前提条件は、互換性のあるハードウェアへのアクセス、PyTorchと拡散モデルに関する知識、そしてプラットフォーム固有のインストール手順に従うことです。コンパイル済みCUDAカーネルやモデル固有の前提があるため、すべてのマシンで汎用的なパッケージインストールだけで済むとは限りません。
リアルタイム動画生成に取り組む開発者にとって、DMD2、VSA、シーケンス並列処理、ハードウェア固有のランタイムの組み合わせにより、FastVideoは単なるモデルデモ以上のものになります。これは、動画生成をオフライン実験からインタラクティブなシステムへ移行するためのエンジニアリングツールキットです。