見出し画像

MiniMax H3はどこまで高速化できる?Colab環境 A100で、18条件を徹底検証してみた

AI動画生成の常識が、また一つ変わろうとしている。

Seedanceをはじめ、今や文章や画像から驚くほど高品質な動画を作れる時代になった。

しかし、高性能なクラウドAIほど悩ましいのが「生成するたびに料金がかかる」ことだ。何度も作り直せば、当然その分だけお金もかかる。

そこで今、動画生成AI界隈で注目されているのが「MiniMax H3」である。

映像だけでなく、音声・効果音・BGMまで同時に生成できる。さらにモデルが公開されているため、自分のPCやGoogle Colabでも動かせる。

これだけ聞けば夢のようだが、大きな弱点がある。

とにかく重い。

快適に動画を生成するには、大容量のVRAMを備えた高性能GPUが必要になる。しかし、そのようなGPUを搭載したPCは非常に高額で、動画生成を試すためだけに購入するのはハードルが高い。私も実際に家電量販店へ足を運んでみたが、値札を見た瞬間、早々に「用無し侍」となって店を後にした。

そこで目を向けたのが、クラウド上の高性能GPUを利用できる「Google Colab」だ。自前で高額なPCを用意する必要がなく、環境を切り替えながら複数の条件を検証しやすいからだ。

使用したのは、Google Colabで選択できるGPUの中でも、80GBの大容量VRAMを備えた「NVIDIA A100-SXM4-80GB」である。

では、画質や音声をなるべく落とさず、MiniMax H3をどこまで高速化できるのか。

今回はGoogle ColabのA100環境を使い、量子化方式や複数の高速化手法、Turbo LoRAなど、全部で18条件を比較した。

ただ、動画生成をしない方にはほぼ興味のない話だと思うので、ここでページを閉じていただいて構わない。

その前に、よければ次の動画だけ見てほしい。

MiniMax H3では、こんな動画が作れる。
(画質が粗い場合は、タイトルをクリックしてyoutubeでご覧ください)

元ネタは、前回【クリエイター図鑑】で作ったこのカードである。
必殺技の【響文裂空】を表現してみた。
伝わらない一文を見抜いた瞬間、笛音と共に構成ごと裂いて通す一撃らしい(笑)

さらに、こんな動画も作ってみた。

LTX2.3では難しかったアクティブな動きに加え、声まで表現できるようになった。

ここまで動きと音を一体で作れるようになったのは、個人的にかなり嬉しかった。


では、本題に入る。

ここからは、MiniMax H3を使ってみたいが、高スペックなゲーミングPCを用意するのは難しい、Google ColabでのcomfyUI経験はあるけど高速化の設定がよく分からないという中級者向けの内容である。

Google ColabのA100環境を使い、MiniMax H3を実際に動かしながら、どこまで高速化できるのかを検証していく。


今回の検証環境

使用したのは、Google Colabで利用できるGPUの中でもVRAM容量が大きいNVIDIA A100-SXM4-80GBである。

その他の検証条件は下表の通りである。興味がある人だけ見てもらえればよい。
なお、CUDAは13.0が推奨されているようだが、Google Colabの標準環境は12.8である。13.0へ更新すると、そのたびに環境構築の処理が増えてComfyUIの起動まで時間がかかるため、今回はCUDA 12.8のまま検証することにした。

まず18条件の結果を見てみる

今回の結果をまとめたものが下表である。

なお、初回生成時にはモデル読み込みなどの時間が余分にかかるため、比較には2回目以降の動画生成時間を使用した。

最終的には、
最有力が「FP8 + Sol + Spectrum」
次点が「FP8 + Sol + EasyCache」
となった。

ここから、この結論にたどり着くまでをざっくり見ていく。


最初にINT8とFP8を比較

まず決める必要があったのが、ベースモデルとしてINT8とFP8のどちらを使うかである。

実際にA100で動かしてみると、

INT8:348.25秒
FP8:211.36秒

となった。

FP8の方が約137秒速い。
一方、画質や音声には大きな差を感じなかった。
そのため、以降の検証ではFP8を基準とした。

ここからは、FP8の211.36秒をどこまで削れるかを試していく。


① まず「1回の計算」を軽くする:Sol / Sage

最初に試したのがSolとSageである。
どちらも、MiniMax H3内部で行われる重いAttention計算を効率化する高速化手法である。

細かな仕組みは異なるが、ざっくり言えば「1回の計算を軽くする」方法と考えればよい。

Sol
Sage

結果、
FP8:211.36秒
FP8 + Sol:153.73秒
FP8 + Sage:150.10秒
となった。

Sol、Sageどちらを使っても約1分短縮できている。
単独で導入するだけでも、十分大きな効果である。


② 次に「重い計算を省く」:Spectrum / EasyCache

SpectrumとEasyCacheは、SolやSageとは少し考え方が違う。

SolやSageが1回の計算を効率化するのに対し、SpectrumとEasyCacheは重い計算そのものを一部省くことで高速化する。

違いをかなり簡単に言えば、

Spectrum:先の状態を予測して、一部の計算を省く
EasyCache:過去の計算結果を再利用して、一部の計算を省く

というイメージである。

今回は、先ほどのSolとそれぞれ組み合わせて比較した。

Sol + Spectrum:97.12秒
Sol + EasyCache:103.96秒

速度ではSpectrumの方が約7秒速かった。
一方、今回生成した動画では、EasyCacheの方が音声品質は若干良く感じた。

そのため、

総合バランス重視 → Sol + Spectrum
音声品質も重視 → Sol + EasyCache

という評価にした。

ちなみにEasyCacheは、設定を強くしすぎると映像が指紋のように崩れ、音声まで破綻した。


最後はTurbo LoRAである。

今回試したTurbo LoRAは、Larry系とKijai系の2種類である。

Larry系は私の環境では画質、映像共に破綻したため正式比較から外し、最終的にはKijai系で検証した。

Turbo LoRAは、通常20stepで生成しているところを4stepや8stepまで減らす。

つまり、

Sol / Sage:1回の計算を軽くする
Spectrum / EasyCache:重い計算を一部省く
Turbo LoRA:そもそもの計算回数を減らす

という違いである。

なお、Turbo LoRAは他の高速化手法とも併用できる。

4stepで試した結果は、

Turbo LoRA:44.52秒
Turbo LoRA + Sol:38.31秒
Turbo LoRA + Spectrum:42.55秒

となった。

最速は38.31秒。

圧倒的である。

しかし、実際の動画を見ると、画質や音声の劣化が目立った。

さらに今回は、

  • カメラの動きが速くなる

  • 人物の動きも速くなる

  • 指定していないピアノのような音楽が入る

など、Promptへの忠実度も下がった印象があった。

4stepから8stepへ増やすことも試したが、音声が多少改善する程度で、画質や生成傾向は大きく変わらなかった。さらに増やして12stepにすると、破綻が起きた。

そのためTurbo LoRAは、通常版をそのまま高速化する方法というより、

「多少品質を犠牲にして、とにかく速く作る別モード」

と考えることにした。

38秒は魅力的だが、今回の目的である品質やPromptへの忠実度を維持した高速化とは少し違うため、不採用とした。


0.8MPまで上げるとどうなる?

ここまでの0.5MP検証では、

Sol + Spectrum:97.12秒

が、速度と品質のバランスでもっとも良かった。

そこで最後に、画質をさらに優先する場合を考え、0.8MPでも試した。

結果は、

Sol + Spectrum:179.33秒
Sol + EasyCache:210.97秒

となった。

当然ながら解像度を上げれば時間はかかる。

しかし、その分画質も明確に向上した。

そして0.8MPでも、

最有力:Sol + Spectrum
次点:Sol + EasyCache

という順位は変わらなかった。


まとめ

18条件を比較した結果、私が使うならFP8 + Sol + Spectrumである。

最初に試したINT8では348.25秒。

FP8へ変更すると211.36秒。

さらにSol + Spectrumを組み合わせることで、

211.36秒 → 97.12秒

まで短縮できた。

FP8を基準に考えても、生成時間は半分以下である。

音声品質をより重視するなら、少し遅くなるもののSol + EasyCacheも十分候補になる。

一方、Turbo LoRAは38.31秒と圧倒的に速かった。

ただし、画質・音声・Promptへの忠実度まで含めると、今回の用途では使いにくいと感じた。

高速化を検証して分かったのは、

一番速い構成が、一番使いやすい構成とは限らない

ということである。

私が欲しいのは、少し違う動画を最速で出すことではない。

欲しかった動画を、できるだけ短い待ち時間で作ること。

その意味で、今回の答えはFP8 + Sol + Spectrumとなった。

おまけ:さらに画質を上げるならFlashVSR

高速化できるようになると、同じ待ち時間でも解像度を上げやすくなり、最終的な動画品質の向上につながる。

ただし、H3本体の解像度を上げ続けると処理時間やVRAM消費も大きくなる。

そこで選択肢になるのが、生成後の動画を高解像度化するFlashVSRである。

H3本体の高速化とは別の処理になるため、今回は正式比較から外したが、参考になるかもしれないので、最後に私が使用した接続方法と設定を載せておく。

MiniMax H3はまだ重い。

しかし、設定を詰めていけば、最初に触ったときよりもかなり現実的な速度まで持っていける。

ローカルやColabで、料金を気にせず何度も試行錯誤できる環境が整えば、AI動画生成の遊び方もまた少し変わってくるはずである。

この記事が、MiniMax H3を触ってみたい人や、「重すぎて諦めかけた」という人の参考になれば嬉しい。

私自身も、まだ試したいことは残っている。

せっかく自由に動かせるモデルなのだから、もう少し限界まで遊んでみようと思う。


いいなと思ったら応援しよう!

howrass|失敗から学び、お金・時間・心の余白を増やす 作者のやる気に直接課金されます。効果は抜群です^^