ComfyUIのLoRA管理ノード利用と妥協(ComfyUI-Lora-Manager)

LoRAとプロンプトの対応を管理したくなり、調べた結果ComfyUI-Lora-Managerを導入した
 

 

LoRAの並び順に優位な効果があるかは議論があるが、画像コンディション調整の初期に足し引きON/OFFを試すのは確かで、標準のLoRAノードを都度繋ぎ変えるのは面倒だし、weightをゼロにしても影響が残るLoRAがあったりで、複数LoRAを集中管理できるノードが欲しくなる

そこで下記のComfyUI-Lora-Managerノードを導入した
 ComfyUIのCustomNodeManagerから導入できる

(つまり半標準的と思われるパッケージに含まれている、らしい) 

 

  

ワークフローへの 追加は、ノードを追加>LoRA Manager 下から「LoraLoader(LoraManager)」を選択。

 

このNodeの興味深いところは単にLoRAをリスト管理するためのNodeが追加されるだけでなく、ComfyUIのサーバにLoRAのページが追加されて、LoRAをヴィジュアルに管理・選択できるようになるところにある

ComfyUI上でブラウザで開けるイラスト表示なLoRAリストのページを作ってくれるので、選びやすくなってありがたい
 

 

専用のブラウザアドオン(LM Civitai 拡張機能)と連携し、ローカルにありComfyUIに認識されているLoRAの情報をCivitaiからトリガーワードを含め集めてくれる

(管理画面から「取得」ボタン押下)
 


また「更新」ボタンを押すと、ComfyUIサーバを再起動することなく、新しいLoRAを読み込ませることができる


LoRA管理画面では、各LoRAのトリガーワードを確認したり、配布元のCivitaiのページへ飛ぶこともできる 

このLoRA管理画面はワークフロー内のNodeとも連携しており、LoRAの紙飛行機矢印ボタンを押すと、開いているワークフローの「LoraLoader(LoraManager)」にLoRAが追加される

 







 


トリガーワードをワークフローに接続するには専用のLoRAノードを使う必要があるが、以前諦めたLoRAのまとめて管理とドラッグによる並び替えも対応しており、都合がよかった
 

LoRAの運用管理に大変便利な一方で、私が使った範囲では、トリガーワード自動設定は実用できなかった

(ワークフロー上ではmodelのみ接続して、Clipは接続するべきではない)

 

トリガーワードは服装の指定がされていたり、逆に服装の指定がないためほか条件で服装が変わってしまうものもある
そのため例えば、服装毎に複数種類指定されているLoRAは、結局は手作業でプロンプトを管理しないといけない。あるいは、服装が指定されていると困るテーマの画像を生成したいときもある

それだけでなく、トリガーワード管理を任せてみると、LoRAのweight設定がうまく反映されないという問題が起きた

LoRAを外して”FlatShadow”,"<lora:FlatShadow:0.01>"とプロンプトに書いてみたり、調査したり、色々試した結果、原因としては、おそらくこういうことらしい
 

* LoRAManagerはモデル入出力側で強度を調整している。出てくるプロンプトではない
* ComfyUIは"<lora:FlatShadow:0.01>"などと書いたとき強度(0.01)を無視する
* 元モデルにLoRAと同じものが取り込まれている(?)と、LoRAと同じ効果がデフォルト強度で適用
 

つまり上の例では、どう書こうがweight設定しようが常にweightを無視して「FlatShadow:1.0」が適用されて、「LoRAManagerでの強度調整が効いていない」ように見える、ということらしい
(モデル内に存在するのがLoRAそのものか、同じキーワードなのかはよくわからないが、LoRAの名前は多くの場合にLoRAの特徴で命名するので、単語として解釈すればキーワードになる)

(「世の中には何を設定しても常に強度1のLoRAがある」とかの真偽不明の情報もあり、この調査結果も仮のもので実用上困ったらまた検証レベルだが、一応頭の片隅にとどめておく)

結論:ComfyUIの仕組み上、「LoRA Managerでトリガーワードを自動適用」は破綻しており、実用は無理
でも並び替え可能LoRA StackとローカルLoRAの画像で見れるVisualなリストは便利なので引き続き採用したい

雑感:
体感として今更ながら、コンセプト・キャラクタを含めて、何でもLoRA投入ではなく、まずモデルにプロンプトででやってみて反映が弱かったりされなかったらLoRAを試す、という順にすべきらしい
SD1.0時代の記憶のせいか、なんとなく棒立ちモデルにLoRA乗せていくイメージになっていたけれど、illustriousはプロンプトがわりと英文ぽい複合的ワードになっていたり、キャラクターが標準搭載されていたりで、表現力がある

画像生成AIをやるということについて、ChatGPTやGrokにプロンプトを書いてもらうにしても、結局は日本語でやりたい構図や欲しい表情を伝える必要があり、つまりは言語化が必要で、「お前は何を描かせたいんだ。それを言語化しろ」と言われている気がしてくる 

0 件のコメント:

コメントを投稿