NovelAI Diffusionを使ったComfyUIの画像生成を考える
はじめに
極太すぎるヒートシンクを使ったゲーミングPCでなくても気楽に自由で高品質な画像生成をしたいという理由から始めた。なお、この記事はStable DiffusionのComfyUIの解説であって、Stable Diffusion WebUI(AUTOMATIC1111)やForgeUI、その他に関して説明する事は無いだろう。ちなみにComfyUIの導入・運用にあたってStabilityMatrixの導入することを強く推奨する。
詳細: とにかく費用対効果の高い画像生成をしてみたい|詠唱新田 (note.com)
高い性能を求められる過程を飛ばしたい
上手い構図を描く生成AIといえばSDXL1.0が思いつくだろう。SD1.5より多くのVRAMと計算資源を必要とする代わりに少ない時間で高画質でより良い構図のAIイラストを生成してくれるものだ。ゲーミングデスクトップPCで生成する分には問題ないのだが、モバイル端末で生成を行う前提で考えると話は変わる。この過程を飛ばすためにNAI Diffusion Anime V3を採用した。もちろんこれはNAI Diffusion Anime V2のリークモデルといった法的に怪しいものではなく、NovelAIの永続的APIトークンを活用したものだ。これなら自身で計算コストをかけずにSDXL1.0を使う事ができる。
高画質化と高品質化を図るためにSD1.5を使用する
最も絵の品質に関する技術が進んでいる生成AIといえばSD1.5が思いつくだろう。少ない計算資源で生成できるが、プロンプトの言う通りに構図を形成してくれず破綻を起こしやすいものだ。この特性を使って、i2iを使った高品質化を図りたい。
ComfyUIでNAI Diffusionを扱うための拡張機能を導入する
この拡張機能を導入しないと"そのNAIDGeneratorってなんだい?えへっ(意訳)"と言われてしまう。えへっってなんだよ!
とにかく、生成をする前に拡張機能の導入を済ませてしまおう。
StabilityMatrix > パッケージ > ComfyUI拡張機能(ComfyUI内でパズルの形をしたやつ) > NAID で検索 > ComfyUI_NAIDGenerator が出てくるのでこれをクリックして、インストールを実行する。そうすればStabilityMatrixを使った拡張機能の導入が完了する。
NovelAIの永続的APIトークンを所得(ComfyUIでNAIの生成ができたんだよ)
既にnoteでNAIの生成に触れている方がいたので、この記事に従って永続APIトークン情報を書き込めば生成ができるはずだ。
ComfyUI上でNAIの生成ができたんだよ|ぐす (note.com)
ワークフロー配布
著者はKJNodes for ComfyUI (set、getノード)とComfyUI Impact Pack (FaceDetailer)の拡張機能が必要なワークフローを作成したので、これを配布する。生成の際に使用する拡張機能やモデルなどコンテンツのライセンスの範囲内で使うのであれば自由に使って良い事とする。
このワークフローの基本的な使用方法
緑色のグループ(モデルを選択)
緑色のグループにはモデルが管理されているため、ここからモデルを選択しよう。NovelAI Diffusionは NovelAI側でモデルを用意しているが、Stable Diffusion1.5側のCheckpointとVAEは好きなものを用意しよう。ちなみに著者は HotaruBreed Neo - Anime 1.0 | Stable Diffusion Checkpoint | Civitai を使っている。
紫色のグループ(描きたい要素)
左側には全体のプロンプト、右側にはキャラの顔(拡張次第で部位を変えられる)に関するプロンプトを記入しよう。強調させた部分は勝手にNovelAI流に変換してくれる設計にしているので、例えば1boyを強調する場合には(1boy:1.2)のように入力しても問題ない。
赤色(薄橙色っぽい?)のグループ(除外したい要素)
左側にはNovelAI(SDXL系統)の除外したいプロンプト、右側にはSD1.5系列のプロンプトを記入しよう。
生成したAIイラストの名前
生成されたイラストの名前は"イラスト名を決める"から変更できる。
その他
NovelAI側のステップ数やCFGスケールを変更したい、LoRAを追加したい、FaceDetailerで指も改善させたいなどがあれば自分でワークフローを自由に動かして改造し、間違えてAnlasを枯渇させないように気をつけながら試行錯誤してみよう。これこそComfyUIの醍醐味なのだから。
以上