メインコンテンツへスキップ
見出し画像

Flux.1 を快適に使おう! Stable Diffusion webUI Forge と ComfyUI で GGUF 形式を利用する方法

    はじめに

    こんにちは、きまま / Easygoing です。

    今回は、Flux.1 を快適に動かすことができる GGUF 形式について紹介します。

    Flux.1 のモデルは容量が大きい

    前回紹介したように、新しい画像生成AI の Flux.1 は、モデルの容量が大きいので、FP16 / FP8 形式で使うには VRAM 16GB が必要でした。

    最近になって普及した GGUF 形式 は、量子化圧縮を行うことでメモリの使用量を大きく減らすことができるようになりました。

    今回は、GGUF 形式の使い方をご紹介します。

    実際のイラストを比較

    まずは、実際のイラストを見てみましょう。

    • image to image

    • 1440 x 1440 → Hires 2576 x 2576

    FP16(16bit)

    滝行をするきれいな女性のアニメイラスト、anima_pencil-XL -> blue_pencil-flux1 FP16

    FP8(8bit)

    滝行をするきれいな女性のアニメイラスト、anima_pencil-XL -> blue_pencil-flux1 FP8
    指が崩壊

    Q8.gguf(8bit)

    滝行をするきれいな女性のアニメイラスト、anima_pencil-XL -> blue_pencil-flux1 Q8.gguf
    FP16 に近い

    Q6_K.gguf(6bit)

    滝行をするきれいな女性のアニメイラスト、anima_pencil-XL -> blue_pencil-flux1 Q6_K.gguf
    少しずつ劣化

    Q5_K_M.gguf(5bit)

    滝行をするきれいな女性のアニメイラスト、anima_pencil-XL -> blue_pencil-flux1 Q5_K_M.gguf

    Q4_K_M.gguf(4bit)

    滝行をするきれいな女性のアニメイラスト、anima_pencil-XL -> blue_pencil-flux1 Q4_K_M.gguf

    Q3_K_L.gguf(3bit)

    滝行をするきれいな女性のアニメイラスト、anima_pencil-XL -> blue_pencil-flux1 Q3_K_L.gguf
    ギリギリ使える

    Q2_K.gguf (2bit)

    滝行をするきれいな女性のアニメイラスト、anima_pencil-XL -> blue_pencil-flux1 Q2_K.gguf
    崩壊

    GGUF形式の特徴

    FP8 と Q8.gguf は両方とも 8bit で同じ容量ですが、多くの場合 Q8.gguf 形式の方が精度が高く、画質も良く なります。

    GGUF 形式でも bit 数が下がるにつれて画質は低下していき、背景の描き込みと色の深みが失われていきます。

    一般的に、GGUF 形式は Q4 ~ Q5 あたりが容量と精度のバランスが良い とされていて、崩壊せずにギリギリ使えるのが Q3 です。

    アルファベットの意味は?

    Q4 を例にすると、後ろについているアルファベットには次の意味があります。

    • Q4:オリジナルの方式

    • Q4_K:K量子化(重要な部分により bit 数の高い圧縮を行い精度を向上)

    • Q4_K_S:K量子化した上で、容量が小さく精度が低い

    • Q4_K_M:K量子化した上で、標準的な形式

    • Q4_K_L:K量子化した上で、容量が大きく精度が高い

    こちらは、下に行くほど精度が高くなります。

    実際に使ってみよう!

    それでは、実際の GGUF 形式のモデルの使い方をご紹介します。

    まずはダウンロード

    Flux.1 の GGUF 形式のファイルはこちらで配布されています。

    ベースモデル

    Flux.1[dev]

    Flux.1[shnell]

    blue_pencil-flux.1(アニメモデル)

    テキストエンコーダー

    T5xxl_v1_1(オリジナル)

    Flan-T5xxl(改良型 T5xxl)

    Flan-T5xxl は T5xxl_v1_1 の改良型で、プロンプトの理解力 と 画質 が改善しています。

    これから Flux.1 を導入する場合は、こちらの利用を勧めます。

    どれを選べば良いの?

    GGUF 形式にはいろいろな種類がありますが、私の環境で調べた VRAM の容量に収まる形式は次の通りです。

    Stable Diffusion webUI Forge

    Stable Diffusion webUI Forge の VRAM別の推奨の GGUF形式

    ComfyUI

    ComfyUI の VRAM別の推奨の GGUF形式

    上記のモデルを利用して VRAM 使用量が超過した場合は、もう一段階小さい形式 の利用をお勧めします。

    なお、ディスプレイモニターを内蔵出力ではなく GPU に接続している場合は、その分 VRAM も利用しているので、さらに小さいサイズが適切になるでしょう。

    実際の使い方!

    それでは、実際の使い方をご紹介します。

    ダウンロードしたファイルの設置

    ダウンロードしたファイルは、インストールしてあるフォルダの次のいずれか場所に設置します。

    ベースモデル

    • /models/Stable-diffusion

    • /models/unet

    • /Models/Unet

    テキストエンコーダー

    • /models/text_encoder

    • /models/clip

    • /Models/CLIP

    Stable Diffusion webUI Forge:簡単!

    まずは、Stable Diffusion webUI Forge の生成画面です。

    Stable Diffusion webUI Forge の生成画面、モデル選択部分とテキストエンコーダーの選択部分にコメント入り

    こちらはいつもと同じように、ベースモデルの選択画面で通常の形式の代わりに gguf 形式 のモデルを選択します。

    テキストエンコーダーは、VAE / text encorder の項目で該当の gguf 形式 のファイルを選択します。

    選択したものを解除するときは、右側の❌ボタンを押します。

    • T5xxl(任意の GGUF形式)

    • clip-l

    • ae.safetensors

    VAE / text encorder に上の3つが選択されていることを確認して、あとはいつも通りプロンプトを入力して Generate を押せば画像が生成されます!

    ComfyUI:カスタムノードが必要

    ComfyUI で GGUF 形式を利用する場合、ComfyUI-GGUF カスタムノードのインストールが必要です。

    ここでは、ComfyUI maneger を利用したインストールの方法を説明します。

    まず、ComfyUI を起動して、Manager も起動します。

    ComfyUI の操作画面、ComfyUI Manager を示すコメント入り

    次に Custom Nodes Manager を選択します。

    ComfyUI Manager の操作画面、Cuntom Node  Manager を示すコメント入り

    検索で「gguf」と入力すると ComfyUI-GGUF というカスタムノードが表示されるので、これをインストールします。

    Custom Node Manager  の操作画面、ComfyUI-GGUF を示すコメント入り

    再起動するようにメッセージが表示されるので、ComfyUI を再起動します。

    次に、ワークフローを作成するときに、Unet Loader (GGUF)  と Dual Clip Loader (GGUF) を選択します。

    ComfyUI-GGUF の Unet Loader と DualClipLoader ノード

    これで GGUF 形式のモデルを選択できるようになります。

    なお、EasyForge を利用している場合は、最初から ComfyUI-GGUF カスタムノードはインストールされています!

    GGUF 形式のデメリット

    GGUF 形式は、ストレージとメモリの節約にメリットが大きいですが、特定のケースではデメリットが存在します。

    VRAM に余裕があるなら、あまり速くならない

    GGUF 形式のファイルは、元のファイル形式から量子化圧縮して生成されます。

    • 例:FP16 → Q8.gguf

    Q8.gguf 形式は、量子化した整数で演算を行うため一般的に元の FP16 形式よりも高速ですが、重要な部分については FP16 形式に再変換 して演算を行っています。

    滝行をするきれいな女性のアニメイラスト、腰まで水につかっている

    そのため、VRAM に余裕があって元の FP16 形式で演算ができる場合は、gguf 形式を利用しても速くならない場合があります。

    ComfyUI で逆に VRAM が超過する!?

    ComfyUI は、可能な範囲でモデルを VRAM 保持して処理を高速化しています。

    このとき、デフォルト以外のカスタムノードを使用すると、容量が適切にカウントされない場合があり、モデルのアンロードが行われず 逆に VRAM が超過する ことがあります。

    このケースでは、VRAM が超過するプロセスの前に Unload All Models ノードを接続すると解決できます。

    例:conditioning と Sampler の間に Unload All Models ノードを接続する

    UnloadAllModels ノードの接続例

    Unload All Models カスタムノードは、先ほどと同じくManeger で「ComfyUI-Unload-Model」を検索するとインストールできます。

    最近は ComfyUI および ComfyUI-GGUF ともに連日アップデートが入っていて、私の環境では VRAM が超過するときとしない場合と、日によって状況が変わっています。

    滝行をするきれいな女性のアニメイラスト、足が水につかっている

    この問題はいずれ解決すると思いますが、Unload All Models ノードは他の場面でも利用できるので、使えるようになると良いでしょう。

    GGUF 形式のファイルを自分で作ろう!

    ここまで GGUF形式の使い方について解説しました。

    ここからは、GGUF 形式のファイルを自分で作る方法を紹介します。

    Flux_tool を使おう!

    以前の記事 でも紹介しましたが、Zuntan さんが公開されている EasyForge の flux_tool には、GGUF 変換機能が搭載されています。

    flux_tool を利用すると、任意の形式の GGUF ファイルを作成することができます。

    EasyForge のインストール方法はこちらをご覧ください。

    ConvertGguf.bat の使い方

    それでは、flux_tool の ConvertGguf.bat の使い方を紹介します。

    まずは、変換する元になるモデルを準備します。

    GGUF 形式で量子化圧縮を行うときは、元のファイルが高精度のものほど生成されるファイルの精度が良く なります。

    • FP32 > FP16 > BF16 > FP8

    従って、上の順番でなるべく精度の高いモデルを用意します。

    ConvertGguf.bat を実行

    次に、EasyForge の flux_tool のフォルダ内にある ConvertGguf.bat を実行します。

    EasyForge フォルダの選択画面、flux_tool を示す印入り
    flux_tool フォルダの選択画面、ConvertGguf.bat  を示す印入り

    するとコマンドプロンプトの黒い画面が表示されるので、ここで変換したいファイルをドラッグ&ドロップします。

    ConvertGguf.bat のコマンドプロンプトの操作画面、モデルファイルをドラッグ&ドロップするコメント入り

    あとはメッセージに従って Enter を押せば GGUF 形式のモデルが生成されます!

    他の形式を作りたい場合

    ConvertGguf.bat を実行すると、デフォルトでは Q8 と Q6_K の2つの形式が作成されます。

    ほかの種類の GGUF 形式を作りたい場合は、 flux_tool の env フォルダ内の ConvertGgufFormat.txt を書き換えてから上書き保存して、再度 ConvertGguf.bat を実行します。

    flux_tool の env フォルダ内の ConvertGgufFormat.txt を選択する印入り
    ConvertGgufFormat.txt の編集画面

    記入例

    • Q8_0

    • Q6_K

    • Q5_K_M

    • Q4_K_M

    • Q3_K_L など

    これで任意の形式の GGUF ファイルを作ることができます!


    参考記事

    GGUF 形式と画質について検証した記事を2つ追加しました。

    ベースモデル

    テキストエンコーダー


    まとめ:GGUF 形式はすごい!

    • GGUF 形式でメモリを節約

    • 圧縮形式は VRAM 容量に合ったものを選ぶ

    • flux_tool で最適な形式を作成する

    今回は Flux.1 を例に解説しましたが、GGUF 形式はすでに SD 3.5 や SDXL にも導入されています。

    滝行をするきれいな女性のアニメイラスト、腰まで水につかってこちらを見ている

    GGUF 形式は画期的な技術で、今後スマホなどの小型端末に対しても AI の普及を後押しするとみられています。

    近い将来、誰でもスマホで画像生成ができる時代が来るのかもしれません。

    最後までお読みいただきありがとうございます!


    クリエイター紹介

    さて、今回ご紹介する note クリエイター は hakuro さんです!

    hakuro さんは、様々なジャンルの note を執筆されていますが、特にこちらの記事では、歴史小説を AIイラストで紹介する試みをされています。

    私は今まで歴史小説にほとんど触れたことはありませんでしたが、きれいなイラストのおかげで、ストーリーを自然と読むことができました。

    AIイラストの新しい使い方を感じます。皆様もぜひご覧ください!


    更新履歴

    2025.8.25

    内容を一部修正しました


    English Article


    この記事が参加している募集

     
     
    はじめまして、きまま です。ふとしたきっかけでAI画像生成に出会い、その魅力にすっかり取り憑かれました。AI画像で気づいたことを発信していきます。 画像はAIで生成したものですが、もし気に入ったものがあればご自由にお使い下さい。AI技術を否定する目的でのご利用はご遠慮下さい。

    あなたへのおすすめ