【初心者向け】ChilloutMixのジェネリック版を作ってみた。
こんにちは、画像生成AIでひたすら猫のイラストを生成している じょじお(@jojio‗illust)です。
Stable Diffusionの超リアルでハイクオリティな人気モデル「ChilloutMix(チルアウトミックス)」のジェネリック版のレシピが公開されていたので、使ってみました。
▲AI画像の大量ファイルをプロンプトと一緒に簡単に整理する方法はこちら。
Stable Diffusionのプロンプトエンジニアリングの基本について理解したい方には、初心者向けのプロンプトガイドを作りましたのでそちらを見てください!
ChilloutMixのジェネリックモデルのレシピが登場
Stable Diffusionの人気のモデル「ChilloutMix」。
超ハイクオリティかつリアルなイラストを量産できるこのモデルに、ジェネリックモデル「chilled_re-generic_v2」が登場しました。
このジェネリックモデルを使えば、本家のモデルに適用されるライセンス上の縛りから解放され、商用利用もライセンスの範囲内で可能とのことです。
chilled_re-generic_v2とは?
chilled_re-generic_v2は、鎖城郎郭@AI錬成画師(@sazyou_roukaku)さんによってレシピが考案されました。下記がそのツイートです。
chilled_re-generic_v2は、CIVITAIなどでは公開されていないので、このツイートにあるレシピをもとに、自分でモデルをマージする必要があります。
chilled_re-generic_v2を作成するための前提条件
- WebUIがインストール済みであること。
- モデルを複数個保存できる十分なHDD容量
- 所要時間:10分くらい
マージは想像していたよりもあっという間に終わりました。
マージのための材料を集める
まずは材料を集めます。必要なのはこちら↓。
必要な材料(モデル+VAE)
下記のモデルファイル・VAEファイルが必要です。
すでに使用しているモデルがある場合は、追加でダウンロードする必要はありません。マージしてもマージに使用したファイルがなくなるわけではありません。
- Model: lofi_V1Fp16
- Model: colorful_v13
- Model: Basil_mix_fixed
- Model: museV1_v1
- VAE: vae-ft-mse-840000
バージョンに注意。
使用するモデルは、最新版でないものが含まれているので注意しましょう。
私はためしに、すべてのモデルを最新版を使ってマージしてみましたが、結果は望ましくなかったです。
新しければ良いというわけでもないようです。
▲CIVITAIでは、一番上のダウンロードボタンからダウンロードできるのは最新版です。古いバージョンのファイルをダウンロードするには、画面を下にスクロールして左側にある「Versions」の項目から好きなバージョンを選び、横のダウンロードボタンをクリックします。念のためダウンロードしたファイル名を確認して、バージョンに間違えがないかを確認してください。
ダウンロードしたモデルの設置場所
ダウンロードしたモデルはいつもモデルファイルを配置する場所に設定します(下記)。
(WebUIのインストールフォルダ)\stable-diffusion-webui\models\Stable-diffusion\
▲サブフォルダを作って、その中に保存しても大丈夫です。私はフォルダ内にモデルファイルがたくさんありすぎるので、わかりやすいように「for_merge」という名前のサブフォルダを作ってその中に保存しました。
▲サブフォルダに保存した4つのモデルファイル
ダウンロードしたVAEの設置場所
VAEファイルは下記のVAEフォルダに設置します。
(WebUIのインストールフォルダ)\stable-diffusion-webui\models\VAE\
モデルのマージ方法
モデルをマージしてみます。
鎖城郎郭さんが公開してくださったレシピをもう一度見てみましょう。下記が公開されていたレシピです。
chilled_re-generic_v2 Recipe ALL Weighted sum merge museV1_v1:0.4+(Basil_mix_fixed:0.3+(lofi_V1Fp16:0.5+colorful_v13))
数式のようになっていますが、カッコの中から順番にマージしていくようです。つまり、最初にlofiとcolorfulをマージして、次に、最初のマージ結果とBasilMixをマージします。2番目のマージ結果とmuseをマージして完成です。
コロンの横の数字はMultiplerというパラメータの値です。
計三回のマージをしてジェネリックモデルが完成します。
マージのパラメータ表
モデルA | モデルB | モデルC | Interpolation method | Multiplier(M) | Checkpoint Format | Custom Name | Bake in VAE | |
---|---|---|---|---|---|---|---|---|
マージ1回目 | lofi_V1Fp16(50%) | colorful_v13(50%) | – | Weighted sum | 0.5 | safetensors | Merged_A | None |
マージ2回目 | Basil_mix_fixed(70%) | Merged_A(30%) | – | Weighted sum | 0.3 | safetensors | Merged_B | None |
マージ3回目 | museV1_v1(60%) | Merged_B(40%) | – | Weighted sum | 0.4 | safetensors | chilled_re-generic_v2 | vae-ft-mse-840000 |
▲分かりやすいように3回のマージのパラメータを表にしてみました。この表に沿ってパラメータを設定してマージしていきます。
では、次の項からマージしてみます。
マージ方法
automatic1111さんのWebUIは、デフォルトでマージ機能があります。
▲WebUIを起動したら、「Checkpoint Merger」タブをクリックしましょう。ここがマージをする画面です。
▲一回目のマージです。lofiとcolorfulをマージします。サブフォルダに保存した場合、フォルダ名を含めたモデル名表記になっています(この場合for_merge)。
先ほど紹介したパラメータ表のとおり入力してマージをクリックするとマージ開始です。CustomNameは私は「Merged_A」と付けていますがつけなくても大丈夫です。
1回のマージはおよそ10秒前後で終わります(PCスペックにもよる)。
▲マージに成功すると画面右側に「結果をここに保存しました」という内容のメッセージが表示されます。
▲マージ2回目です。Multiplier(M)の値は、Model Bに適用する数値を指定します。つまりモデルAを0.3にしたい場合、Multiplier(M)に指定すべき値は1から0.3を引いた数値である0.7です。
Multiplier(M)の指定は、勘違いしやすいポイントなので注意してね。
▲3回目最後のマージです。museと2回目のマージ結果ファイルをマージします。
この時だけVAEをあわせてマージしました。これによって画像生成のたびにVAEを適用する必要がなくなります。
VAEがないと、彩度が低く発色の悪い画像が生成されるので注意してください。
マージの時に焼き付けない場合、画像生成のたびにVAEを適用する方法もあります(方法は下記)。
以上でマージ完成です。次の項で使ってみたいと思います。
CillOutMixとジェネリックモデル(chilled_re-generic_v2)の比較
ChilloutMixとジェネリック版を比較してみました。
同じプロンプトでモデルだけかえるようにx/y/z Plotにかけてみます。
すごい!全然遜色ないですね。
↑の画像は、ブログのパフォーマンスの為にかなり品質を落としています。実際はもう少し綺麗なので安心してください。
プロンプトの参考
今回の画像生成に使用したプロンプトは、CIVITAIのChilloutMixのページで公開されていたものを使用させていただきました。
Google colab版のWebUIでマージする方法は?
マージは、Colab版でもできるようです。私はColabではやったことがないですが、UIにはマージタブがありました。
ただし、Googleアカウントの無料ユーザーは、HDD容量が15GBしかありません。おそらくマージに必要な4つのモデルファイルを同時にアップロードできないでしょう。
このため、Google無料ユーザーの場合は、マージのたびに2個ずつアップロードして、使い終わったら削除していく方法があるようです。
AIコスプレイヤーのやり方
ChilloutMixは、Twitterで話題のAIコスプレイヤーのベースのモデルとして人気があります。Chilloutmixと「LoRa」や「LyCORIS」で追加学習済みファイルを組み合わせてコスプレを実現するのです。
追加学習済みファイルとは、ゲームのバッチのようなもので、従来の画像生成に追加要素を加えます。
追加要素には、ゲームキャラや芸能人の服装・髪型・ポーズなど、さまざまなものがあります。
ジェネリック版であるChilloutmix_re_genericでも、LoRaによるコスプレが可能なはずです。私もまたの機会に試してみたいと思います。
▲LoRaの使い方はこちら。
▲LoRaより新しい追加学習のLyCORISファイルの使い方はこちら。
まとめ
以上、ChilloutMixのジェネリック版の紹介でした。
最後まで読んでくださってありがとうございます!
この記事がお役に立てましたら、シェアボタンからシェアしていただけたら嬉しいです!
コメント
コメント一覧 (3件)
元ツイートには、
merge1.lofi_V1Fp16:colorful_v13=50%:50%=M:0.5
merge2.Basil_mix_fixed:merge1=70%:30%=M:0.3
merge3.museV1_v1:merge2=60%:40%=M:0.4
とあったので、
パーセンテージで考えるとmerge2はBasilが70%ですよね?
ということはBasilをモデルAに選択し、merge1をモデルBに選択した場合、Mの値は0.3と設定しないといけないのかなと思いました。
同じ理由でmerge3もMの値は0.4に設定すべきじゃないでしょうか。
コメントありがとうございます。確認します。
コメントありがとうございます。
こちらの元ツイート、見逃していたので確認してきました。
名無しさんのおっしゃる通り、このツイートを見ると、私の記事は数字が逆というか比率表記と勘違いしていますね・・・。
私自身、こちらの誤ったレシピで作ってしまっていました。
至急、訂正します。混乱させてしまい申し訳ありません。ご指摘ありがとうございます。