こんばんは、スタジオ真榊です。今回は「自分画風LoRA」や「CoppyLoRA」の作り方を踏まえて、普段使いのモデル(Checkpoint)に手持ちのLoRAをマージし、自分好みの画風で生成できるオリジナルSDXLモデルを作る方法について解説していきます。

具体的には「Supermerger」という拡張機能を使って、自分画風LoRAのほか、描き込みの量や線の太さ、タッチなどを指定する各種LoRAを普段使いのモデルに融合(マージ)させ、生成のたびにLoRAを組み合わせなくても、いつでも狙い通りのタッチや「マスピ顔」で生成できるモデルを作ることを目指します。対応するLoRAがあれば、線の太さや描き込み量、目の大きさなども調整できますので、理想の絵作りを探す沼に入ってみましょう。

1.Supermergerとは

「SuperMerger」はStableDiffusionWebUIの拡張機能の1つで、CheckpointやLoRAといったAIモデル同士の「掛け合わせ(マージ)」を効率的に行うためのツールです。マージしたcheckpointをローカル保存する前に、このマージ比率だとどんな画像が生成できるかXYZ plotを使ってテストできるため、ストレージ容量を節約できるのが特徴です。

よく知られたcheckpoint同士のマージだけでなく、checkpointにLoRAをマージすることも可能。例えばAnimagineXL3.1に自分画風LoRAと水彩画風LoRAとオリジナルキャラクターLoRAをの3つをマージすれば、「1girl,zaraki_mina」と入れるだけで自分の好みの画風で水彩タッチのミナちゃんを描いてもらうことができるわけです。

他にもさまざまな便利機能があり、例えば手元のLoRA同士をマージしたり、二つのLoRAの差分を抽出して新たなLoRAを作ったりすることができます。

2.Supermergerの使い方

まずはSDwebUIの「拡張機能」の一覧からSupermergerを探すか、「URLからインストール」欄に「https://github.com/hako-mikan/sd-webui-supermerger」を入力してインストールしましょう。UIを再起動して、画面上部にタブができていれば成功です。

【Forgeユーザー注意】SDwebUI Forgeの一部のバージョン(例えばf0.0.17v1.8.0rc-previousなど)ではSupermergerがうまく動作しない問題が生じています。私の環境では、CheckpointにLoRAをマージしようとしてもエラーが起こってしまう不具合が生じます。2024年8月以降の最新版(Forge v2)、もしくはフォーク版のReForgeでは問題なく動作するようですので、古いForgeを温存している方はご注意ください。

さて、SuperMergerの画面上部から「LoRA」画面を開くと、次の4つのボタン=機能があります。(ボタンなどの色は設定したテーマで変わります、悪しからず)

2.Supermergerの使い方:図版1

①Merge to Checkpoint:checkpointAに手持ちのLoRAをマージします。複数のLoRAを一つのモデルに一気にマージすることもできます。

Make LoRA (alpha*A - beta*B):二つのCheckpointの「差分」を抽出して、その差分の効果を及ぼすLoRAを作ることができます。

③Merge LoRAs:LoRA同士を単純にマージします。一つのLoRAを適用するだけでよくなるので便利ですが、生成のたびにそれぞれの重みを自由に変えて適用できなくなるので、きちんとした製作意図がない場合は無闇に混ぜないほうが良いでしょう。(例:水彩画風LoRA+FlatLoRAで"フラット水彩LoRA"にできますが、塗りの水彩度合い・フラット度合いを個別に調整できなくなります)

Extract from two LoRAs:同じベースモデルで追加学習された2つのLoRAから共通する特徴(もしくは差分)を抽出して、両方のLoRAの良い部分を兼ね備えたモデルを作るための機能とのこと。【注意】記事執筆時点では、現行バージョンではSDXL用LoRAで使用してもエラーが出るようで、自環境で検証できていません。