【ai-diffusion】Kritaでnunchakuを利用した話【Flux】
はじめに
KritaでAI画像生成が可能になるプラグインKrita-ai-diffusionのバージョンが1.38.0になり、Flux Nunchakuが可能になったので利用してみました。
Nunchakuとは?
なぜ名前がヌンチャクなのかは不明(low-rank branch成分を"繋げる"から?)ですが、SVDQuantという高度な4bit量子化モデルを扱う技術です。ComfyUIでは、ComfyUI-nunchakuカスタムノードとnunchakuパッケージを導入する事で利用可能になります。
ただし、AI量子化技術全般に言える事ですが、量子化したからと言って演算数が変わるわけではないので、正味の演算速度が速くなるわけではありません。
量子化によって高速化するほとんどの理由が、
①サイズを縮小しGPUメモリに全部収まれば、マトリックスを分割しないで扱える
②8bitや4bit専用ハードの演算機能が利用できる
なので、上記に当てはまらない場合は、劇的に変わりません。ただし、サイズ縮小によるキャッシュ効率化やボトルネックの解消、さらにnunchakuはただ量子化しているだけではないので、少し速くなるはずです。
また、FLUX.1をローカルで動作させる場合、FLUX.1用のControlNetはGPUメモリを大量に要求するため事実上動作困難でしたが、大幅にGPUメモリを削減できるnunchakuを利用する事で、一般的な8GB/12GB GPUでもControlNetを利用する事が可能になります。
つまり、筆者のようなRTX30xxシリーズの旧GPUやVRAMの少ないGPUの場合は、高速化の恩恵よりも「動作しなかったものが動作するようになる」事の方が大きいと思います。
Krita-ai-diffusion内蔵のComfyUIでは簡単に利用できる


そしてデフォルトがベースモデルではなく「Krea」になっています
実際に利用してみる
※ 筆者環境では(少し設定に苦労しましたが)Krita専用ではなく、通常のComfyUI上でnunchakuを設定した動作ですが、上記のダウンロードモデルをそのまま使っています。
FLUX.1 Krea生成速度


FLUX.1 Kontext生成速度


FLUX ControlNet利用
※ 筆者GPU環境では、GPUメモリが足りず、nunchakuモデル以外のFluxはControlNetを利用できません





まとめ
筆者環境での高速化は、すべてGPUメモリに乗るようになった事が大きいです。上記画像生成では、瞬間的に最大6GB程度に収まっています。
また、nunchakuの恩恵が得られるモデルは、nunchakuモデルだけなので、他のFLUXモデルが省メモリ・高速になる事はありません。しかし、高性能なKreaモデル+基本ControlNetや拡張・インペイントが可能になる点はとても大きいと思います。
ComfyUIのnunchakuは、Qwen-Image(Edit)も利用できるようになっているので、そのうちKrita-ai-diffusionが対応してくれるのではと思います。
以下、関連する記事等の【PR】です。
