単体のノードではなく複数のノードをまとめておいて、あらゆるワークフロー作成時でも呼び出せたら便利じゃないだろうか?
今回はその方法。
例えば私は次のようなノードを良く組む
これはComfyUIのバッチカウントを使って1枚ずつ画像を読み込んでは処理、読み込んでは処理...というときによく使う。
今回はこれをまとめて1つのオリジナルノードとして保存し、あらゆるプロジェクトで読み込めるようにしたい。
ComfyUI Managerがインストールされている必要がある。
https://github.com/ltdrdata/ComfyUI-Manager
順番に解説
ctrl+マウスドラッグでノードを範囲選択できる。
これでまとめたいノードを全部選択。
選択されているノードどれでもいいので右クリックしConvert to Group Nodeを選択
そうするとこのグループに名前をつける欄が表示されるので自由に設定する。
これでオリジナルノードが完成するがこのままだと再読み込みで消えてしまう。
このノードを右クリックしてSave As Componentをクリック
するとComfyUI-Manager: Component Builderが表示される。
このときPrefix(接頭辞)とVersionは必須のようで、これらが入力されていないと保存できない。
あとはSaveを押せばOK。
赤文字が表示されてびっくりするが、これは保存できているメッセージ。
検索で出せるようになっている。
ここからはやらなくても良い作業。
しかし、私の場合このオリジナルノードで「使わない設定」が多数あり、これを非表示にしたい。
ノードを右クリックしManage Group Node
次の設定が表示されるはず
いらない入力のVisibleをオフにする。
表示名を変えることができる。
NumberをReset Bool(INT)に変えてみる。
最後Saveボタンで保存するのだが、上のセレクトボックスを開けるとノードが2個で認識されている。
よくわからないのだが、Prefixありなしで2個になるらしい。
こちら両方でSaveしておかないと設定が反映されないノードが残るので注意。
これでオリジナルノードが完成した。
別のワークフローでも検索から呼び出せる。
Manage group Nodes画面の左下のDelete Group Nodeボタンから削除可能。
このノードはComfyUI側のバッチ(Queue Promptを何度もクリックしたときと同じ)で1回実行されるごとに1枚ずつ順番に画像が読み込まれる。
Reset Boolに1を入れて実行すると先頭のファイルに戻るので、やり直したい場合はこれで1回実行した後Reset Boolを0に戻してバッチ数を入れて実行する。
startに-1を入れないと2枚めから読み込まれてしまうので注意。
