【初心者向け】ComfyUIでSDXLのLora(t2i)は最低限これだけやれば動くよってメモ
概要
Stable Diffusion Web UIでもSDXLのLora、一応動かせるっちゃあ動かせるんだけどめっちゃ生成時間かかるんよな。何か他に方法無い?ComfyUIとか生成早いって聞いたんだけど。って人向けの導入記事。
ちょうどいい具合の記事が見つからなかったので自分向けのメモも兼ねて書きました。
ちなみに筆者はStable Diffusion Web UIでSDXLの画像(832×1216)の生成に大体1分くらい掛かってたのが、ComfyUIで同じCheckpointとLoraで10秒くらいになった。めちゃ早い。
諸々ダウンロード
ComfyUI本体
上記から飛んだ先の、下のほうにスクロールするとあるリンクからダウンロード。
CheckpointとLora
Civitaiから好きなものをダウンロード。
例えばPonyならフィルターでPonyに絞った結果の適当なCheckpointとLora。
ちなみにPonyのCheckpointとSD1.5のLoraみたいに別の組み合わせだとエラーになるので注意。
インストール
ダウンロードしたComfyUI_windows_portable_nvidia.7zを適当なフォルダに展開。
(windowsの標準機能でも展開出来るが、一応7zipでやった方がいいかも)展開先の以下にダウンロードしたチェックポイントを配置。<~\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\ComfyUI\models\checkpoints>
Loraはここ。
<~\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\ComfyUI\models\loras>
起動
ここからが肝心。
以下のrun_nvidia_gpu.batをダブルクリックで実行すると、こんな画面が開かれる。
<~\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable>
開かれないんですけど!?って方。申し訳ない。
多分実行したバッチにエラーとか書いてあると思うし、その内容で調べて欲しい。
(まっさらな状態だとStable Diffusionみたいに事前にPythonのインストールが必要だったりするのかもしれない)
ComfyUIは全部をレールみたいに線で繋いで動かすものらしく、ここだけちょっと面倒な部分。
[Load Checkpoint]がさっきいれたCheckpointを選択する場所。
[CLIP Text Encode (Prompt)]は2個あって、その先の[KSampler]の[positive]につながってるのがポジティブプロンプトを書く場所。[negative]がネガティブプロンプト。
[Empty Latent Image]が画像サイズを設定する場所。
[KSampler]がステップ数諸々の場所で[Save Image]が画像が出力される場所。
※
初期状態でも[Queue Prompt]ってボタンを押すと画像が生成されるので、ここで動くか試してみてもいいと思う。
初期状態ではLoraのメニューは無いので自分で追加。
画面の何もない部分を右クリックするとメニューが出てくるので、[Add Node] > [loaders] > [Load LoRA]の順に選択。
するとどこにも繋がれていない[Load Lora]が出現するので、[CLIP Text Encode]に繋がっている黄色い線(CLIP)の先端を引っ張って、こんな感じで間に挟まるように繋ぎなおす。
あと紫色の線(MODEL)も[KSampler]との間に挟まるように繋ぐ。
実行
あとは画面の矢印をクリックしてCheckpointなどを設定したりプロンプトを入力して実行するだけ。
出力された画像は以下に保存されます。
<~\ComfyUI_windows_portable_nvidia\ComfyUI_windows_portable\ComfyUI\output>
終了時
起動中のバッチ上で[Ctrl + c]からの[y]で終了。別にバッチを×ボタンで閉じちゃっても良いと思う。
余談
Loraの強度は[Load LoRA]の[strength_model]と[strength_clip]を同時に変える。値はそれぞれに同じものを入れるらしい。
また、トリガーワードはpositiveにつないでいる方のプロンプトに入れる。
画像サイズは512×512みたいに小さすぎるとクオリティが下がるらしいので、筆者は832×1216としている。
stepは20 ~ 30、cfgは8 ~ 10くらいがちょうどいいらしい。このあたりは適宜調整してほしい。
VAEも[VAE Decode]につなげば使えるが、あんまり必要性は感じなかったので割愛。
[Save]、[Load]で設定状況を保存読み込み出来る。
起動中にLora等を追加したときは[Refresh]。
何かあればそのうち更新するかもしれない。