デフォルトとのワークフローでは単純なtxt2imgが組まれています。ほかの機能を使うためのノードの組み方を一部紹介しています。
ComfyUIの機能
公開サイトにComfyUIの機能の例があります。ワークフローを自分で組んでもいいですがよくわからない方や組むのが面倒な方は以下の方法を使ってください。
利用したい機能の画像をComfyUIにドロップすると使用したワークフローが適用できます。また、ComfyUIで生成した画像にはワークフローが保存されるのでそれらをドロップすることも可能です。
以下に基本となるノードを紹介します。
出力ファイル名を変更する
デフォルト設定で出力されるファイルは、outputフォルダにすべて入ってしまうのフォルダ分けするように設定します。
Save Imageのfilename_prefixをクリックして%date:yyyy-MM-dd%/ %date:hhmmss%を入力してください。これで年月日のフォルダに時分秒のファイル名で出力されるようになります。
Load VAE
別に準備したVAEが使用できます。以下の階層に保存してください。
📁ComfyUI\models\vae
Add Node > loaders > Load VAEを追加してノードを繋ぎます。
CLIP Set Last Layer
Clip skipと同じでレイヤー処理の設定になります。ノードを追加していない場合は-1に設定されていました。
Add Node > conditioning > CLIP Set Last Layerを追加してノードを繋ぎます。-1は最後のレイヤー(すべてを処理)-2は最後のレイヤーを省略…という設定になっています。
Img2Img
空のイメージの代わりにロードしたイメージをサンプラーに渡します。サンプラーではdenoise量を調整してください。
Add Node > image > Load Image
Add Node > latent > VAE Encode
図のようにノードを繋いでください。
Embeddings / Textual Inversion
Textual Inversionファイルを以下の階層に保存してください。
📁ComfyUI\models\embeddings
プロンプトには以下のように記述します。
embedding:ファイル名
LoRA / LyCORIS
LoRAやLyCORISのファイルを以下の階層に保存してください。
📁ComfyUI\models\loras
Add Node > loaders > Load LoRAを追加して図のようにノードをつないでください。
また、トリガーワードがある場合は忘れずにプロンプトに記述してください。
Hires Fix
生成データを潜在空間でアップスケールしてサンプリングします。サンプラーではdenoise量を調整してください。
Add Node > latent > Upscale Latent
Add Node > sampling > KSampler
Add Node > latent > VAE Decode
Add Node > image > Save Image
アップスケールサイズやサンプリング設定は調整してください。
ControlNet
コントロールネットのモデルを以下の階層に保存してください。
📁ComfyUI\models\controlnet
テキストエンコーダとサンプラーの間に画像のようにControlNetのノードを追加します。イメージ画像はディテクトマップを渡してください。画像からディテクトマップへ変換したい場合は別途拡張機能が必要です。最後に紹介してある記事の中のComfyUI’s ControlNet Auxiliary Preprocessorsをインストールしてください。
SDXL
SDXLはBASEとREFINERで2段階のサンプリングを行います。SDXLのワークフローは少し複雑です。下の画像にワークフローを埋め込んでいるのでドロップして使ってください。リファイナーを使用しないならデフォルトのワークフローでもよいです。
おもに設定するところは、BASEチェックポイント・プロンプト・steps(BASEとREFINERの合計ステップ数)・end_at_step(BASEにあてたいステップ数)になります。
拡張機能をインストールすれば、デフォルトのノード以外も使用できます。いろいろな拡張機能 (Custom Nodes) があるので興味のある方はご覧ください。