私的AI研究会 > FramePack
動画生成 AI「FramePack」概要†
「FramePack」について、各サイトの論文要約などをまとめてみる
▼ 目 次
▲ 目 次
※ 最終更新:2025/10/12
「FramePack」とは†
- Illyasviel氏が発表した動画生成AI「FramePack」は、最大60秒(30 fps)もの長時間の動画を破綻なく、ローカルGPUで高速に生成できる技術。
130億パラメータのモデルを利用するが、必要なGPUメモリは僅か6GB、GeForce RTX 4090のような高速なGPUなら1フレームあたり2.5秒で生成可能。
- FramePackは、最終フレームの画像を生成し初期フレームへ向けて時間を逆方向に動画を生成する。
これにより長時間でも破綻の少ない高品質な動画生成を実現している。
また、生成時刻から遠いフレームの情報を順次圧縮することで、必要なメモリーを削減している。
- 派生プロジェクト「FramePack-eichi(叡智)」は、lllyasviel 氏による lllyasviel/FramePack をベースに、nirvash 氏が改良した nirvash/FramePack をさらに拡張したもの。
最初と最後の画像を与え途中を補完する動画を生成することで従来の動画生成AIより、更に安定した期待通りの動画の作成が可能。
※ 2025/09/25 GitHub の本家リポジトリは消失。フォーク版のみ数種存在している。
「FramePack」の原理(論文要約)†
動画生成 AI の問題点として、「Forgetting(忘却)」と「Drifting(ドリフト)」という2つのの問題点が存在する。 忘却とは、過去の情報が失われてしまい動画の一貫性が失われてしまうこと、ドリフトは生成を繰り返すうちに誤差が蓄積し品質が悪化することを表す。 忘却を回避するために記憶を強化し多くの情報を保持すると誤差の蓄積が増えるためドリフトが悪化し、ドリフトを回避するために誤差伝播を減らすと、忘却が悪化するというトレードオフの関係にある。 |
「Anti-forgetting memory structure」と「anti-drifting sampling」†
- 「Forgetting(忘却)」「Drifting(ドリフト)」問題を解決するために FramePack では、「Anti-forgetting memory structure」と「anti-drifting sampling」という技術を用いてる。以下は、動画生成をするNext-frame-section Prediction Modelの概要。過去のフレーム(
)を入力し、その後のフレームの画像(
)を生成していく。
Next-frame-section Prediction Modelの概要 → 引用: https://lllyasviel.github.io/frame_pack_gitpage/
- 動画の場合、直近のものほど重要度が増し、過去の情報ほど重要性が薄れていく。FramePack では、1フレーム前のものは 1/2、2フレーム前は 1/4 のように、過去の時刻の情報を順次圧縮して利用してる。1フレームに必要な context length Lf (480p frameの場合では約 1560)で、入力フレーム数 T に対して予測したいフレーム数 S 、1フレームごとの圧縮率 λ とすると、必要な context length は以下のようになる。
- 過去の情報ほど順々に圧縮されるため、入力のフレーム数 T がいくら増えたとしても最終的に必要な context length は一定の入力長に保つことができる。
このように圧縮された過去のフレームの情報をどのように保持するか以下のようなパターンがある。
(a) 単純に古い順に圧縮率を上げていく
(b) 段階的に圧縮率を上げていく
(c) 段階的に圧縮率を上げていくその2
(d) 単純に古い順に圧縮率を上げていくが、最初のフレームは圧縮しない
(e) 時間的に対称
FramePack の情報圧縮のパターンの例 → 引用: https://lllyasviel.github.io/frame_pack_gitpage/
- 「anti-drifting sampling」
通常の動画生成では、過去から未来に向けて画像を順々に生成していく。この場合、エラーが蓄積するためドリフトを誘発する。FramePack が採用している Anti-drifting sampling では、時間方向を逆に生成することで、ドリフトを回避する。
最初にターゲットとなる未来の時刻の画像を生成し、スタート時刻へと逆方向に生成していく。初期条件とゴールが決まっていて、その間の動画を補完することになる。
(a) Vanilla 通常の動画生成方法で右の未来方向へ向かって順次フレームを生成する
(b) Anti-drifting 最初にゴールの未来のフレームも生成し、そこへ向かって未来方向へフレームを生成していく方法
(c) Inverted anti-drifting 未来方向から過去へ遡って生成していく方法
Anti-drifting Sampling の概要 → 引用: https://lllyasviel.github.io/frame_pack_gitpage/
それぞれ時間方向は左から右の向きで、グレーの部分はそのイテレーションで生成されるフレームを示している。
FramePack の論文では、これらの生成方法を比較したところ、(c) inverted anti-drifting sampling が最も良い結果を得られたとしている。
HunyuanVideo†
- FramePack は、動画生成のアルゴリズムであって、そのコアとなる動画生成のモデルは「HunyuanVideo」をファインチューニングしたものを利用している。
HunyuanVideo は、Tenscent が開発し 2024年12月に公開したオープンソースの動画生成AIのモデル。
パラメータ数は130億に上り、量子化していない場合では、最低でも 45GB のGPUメモリが必要。
HunyuanVideoのアーキテクチャは下図のように入力の Embedding を Diffusion Transformer で処理し、decoder で動画へと変換する。
HunyuanVideoの概要 → 引用: https://github.com/Tencent-Hunyuan/HunyuanVideo
更新履歴†
参考資料†