ComfyUIでSDXLを動かす方法!最新モデルを少ないVRAMで動かそう【Stable Diffusion XL】

ComfyUIでStable Diffusion XLを動かそう 画像生成AI

今回もStable Diffusion XL(SDXL)に関する話題で、タイトルの通り

ComfyUIでStable Diffusion XLを動かす方法

を丁寧に解説するという内容になっています。

以前、ノードベースのWeb UIである「ComfyUI」という画像生成ツールをご紹介しました。

便利なノードベースのウェブUI「ComfyUI」の使い方まとめ【Stable Diffusion】
今回はStable Diffusionを簡単に使えるツールに関する話題で 便利なノードベースのウェブUI「ComfyUI」のインストール方法や使い方 を一通りまとめてみるという内容になっています。 Stable Diffusionを簡単に使...

このツールは画像生成処理の内容を視覚的に見ることができたり、自分で処理を組んだりすることができるので中級者に人気のWeb UIとなっています。

そしてこのComfyUI、最近登場したStable Diffusion XLを真っ先にサポートしたことで一時話題になりました。私は普段はStable Diffusion web UIを使っているのですが、ComfyUIでSDXLを動かすとVRAM使用量が少なくて済むなどメリットがあるようだったので今回実際に試してみることにしました。

ComfyUIでSDXLを動かすメリット

でははじめに、「SDXLを動かすならStable Diffusion web UIでいいんじゃないの?」と思っている方も多いかと思いますのでComfyUIを使うメリットを3つ挙げてみようと思います。

  • VRAM使用量が少なくて済む
  • refinerモデルを正式にサポートしている
  • 動作が速い

VRAM使用量が少なくて済む

まず一つ目のメリットは、ComfyUIはVRAM使用量が少なくて済む点です。私の環境ではSDXLを使って画像生成した場合のVRAM使用量は

  • ComfyUI:最大6.5GB程度
  • Stable Diffusion web UI:最大11.8GB程度

とかなりの差が出ました。この結果からSDXLを動かす場合は確かにComfyUIのほうがVRAM使用量が少なく、Stable Diffusion web UIと比較すると半分程度のVRAM使用量で済むことが確認できました。

refinerモデルを正式にサポートしている

次に2つ目のメリットは、SDXLのrefinerモデルを既に正式にサポートしている点です。

執筆時点ではStable Diffusion web UIのほうはrefinerモデルにまだ完全に対応していないのですが、ComfyUIは既にSDXLに対応済みで簡単にrefinerモデルを使うことができます。

動作が速い

3つ目のメリットとして、ComfyUIは全体的に動作が速い点が挙げられます。

特に起動はStable Diffusion web UIよりもずっと速いです。普段起動が遅くて不便だな~という方にもComfyUIはおすすめです。

ComfyUIでSDXLを動かす方法まとめ

ではここからが本題で、ComfyUIでStable Diffusion XLを動かす方法を解説していきます。主な手順は次のとおりです。

  1. ComfyUIをインストールする
  2. Stable Diffusion XLのモデルをダウンロードする
  3. ComfyUIのワークフローを読み込む
  4. 必要な設定を行う
  5. 画像を生成する

それぞれ詳しく見ていきましょう。

手順1:ComfyUIをインストールする

まず、まだComfyUIを導入していない方は以前紹介したインストール方法を参考に導入を済ませておきましょう。

やり方は簡単で、圧縮ファイルをダウンロードして適当な場所に展開するだけで完了です。

手順2:Stable Diffusion XLのモデルをダウンロードする

次にStable Diffusion XLのモデルをまだお持ちでない場合は下記ページを参考にダウンロードを行ってください。

Stable Diffusion XL(SDXL)の使い方!超進化した最新の画像生成AIを使いこなそう
今回はStable Diffusionの最新版に関する話題で、タイトルの通り Stable Diffusion XL(通称SDXL)の導入方法と使い方 を丁寧にご紹介するという内容になっています。 既にご存じの方もいらっしゃるかと思いますが...

上記記事ではStable Diffusion web UI用の解説をしておりrefinerモデルは任意と書いていますが、先ほども書いた通りComfyUIではrefinerモデルを正式にサポート済みで普通に使えるのでそちらもダウンロードしましょう。要するに必要なモデルは次の2種類です。

  1. SDXL baseモデル
  2. SDXL refinerモデル

ダウンロードできたらこれらを所定のフォルダに移動させます。2つのモデルを下記のフォルダに入れてください。

ComfyUI\models\checkpoints

手順3:ComfyUIのワークフローを読み込む

さてここまでできたらComfyUIを起動しましょう。ただそのままではSDXLを使えないので、SDXL用のワークフロー(※要するに処理の流れ)を読み込む必要があります。

SDXL用のワークフローは下記ページからダウンロードできます。

SDXL Examples
Examples of ComfyUI workflows

1枚目の「瓶に星空の風景が映っている画像」をダウンロードしましょう。一見すると綺麗な画像ですが、実は画像の中にワークフローの情報が埋め込まれているので、その画像をComfyUIの画面にドラッグ&ドロップすればOKです。ワークフローが読み込まれると下記のような画面になります。

SDXL用のワークフローの画面

手順4:必要な設定を行う

次に、このままだとサンプル通りの画像が生成されますので自分好みの画像を生成するにはいくつか設定を行う必要があります。主な設定項目は次のとおり。

  • プロンプト&ネガティブプロンプト
  • 画像解像度
  • ステップ数
  • KSampler

プロンプト&ネガティブプロンプト

まずはプロンプトとネガティブプロンプトを記入します。左の方に「Text Prompts」というノードのグループがあるので、そこにいつもどおり呪文を記入しましょう。

ComfyUI プロンプト設定

画像解像度

お次は画像解像度の設定です。メモ欄にある通り、SDXLでは推奨解像度が決まっているのでその通りの解像度に設定しましょう。

ComfyUI 画像サイズ設定

ステップ数

画像生成のステップ数を指定します。通常は20~30くらいの値を指定すればOKです。

ComfyUI ステップ数の設定

KSampler

最後はサンプラーの設定です。baseモデル用とrefinerモデル用がありますのでそれぞれ設定しましょう。

ComfyUI サンプラー設定

  • noise_seed:
    デフォルトで値が入っていますが、一つ下の設定項目で「randomize」になっていれば画像を生成するたびにランダムに変わるので値を変更する必要はありません。
  • control_after_generate:
    生成のたびにシードをランダムにしたい場合は「randomize」を選択します。
  • cfg:
    CFGスケールです。画像をよりプロンプトに従わせたい場合は大きめの値を設定しましょう。
  • sampler_name:
    好きなサンプラーの種類を指定します。サンプラーは種類が多いので色々試してみましょう。

手順5:画像を生成する

これで設定が完了したのでようやく画像を生成できます。右下の黒いパネルの「Queue Prompt」ボタンを押すと処理が順番待ちになり、しばらくすると画像が生成されます。

おわりに

以上、ComfyUIでStable Diffusin XLを動かす方法をご紹介しました。

ComfyUIは若干取っつきにくい印象がありますが、SDXLを動かす場合はメリットが大きく便利なツールだと思います。特にStable Diffusion web UIだとVRAMが足りなくて試せないなぁ…とお悩みの方には救世主となりうるツールだと思いますので、ぜひ試してみてください。

この記事が何かしら参考になれば幸いです。