概要
韓国の企業OnomaAIがSDXLモデルのkohaku-xl-beta5をベースにファインチューニングしたSDXL系列モデル。
日本では英語名をそのままカタカナ表記し「イラストリアス」と呼ばれることが多い。某艦船ゲームをしている人は真っ先にそちらを思い浮かべたことだろう。
2024年9月30日にV0.1がリリースされ、絵柄、キャラ、構図など幅広く学習しており高いポテンシャルを感じさせることから、新たな定番モデルとして急速に利用者が増えており、このモデルをベースとする派生モデルも少しずつ登場している。
Danbooruのリソースが学習に利用されていることから、SD1.5やAnimagine系列の記法がほぼそのまま使えるため移行もしやすい。
一方で高いポテンシャルを持っているものの、学習範囲が幅広いことの副作用として、Animagine系列と比べると絵柄が安定しづらい側面も見受けられるため、アーティスト名を入れる、細かくプロンプトやネガティブプロンプトを利用するといった具合に、自身である程度制御を行うことで安定性を担保する必要がある。Animagine系列より難しいが、Pony系列よりは簡単といった位置づけだろうか。
また、エロプロンプトへの反応が良好であり、Animagine系列では認識されなかったワードでも認識できるものが多い。
2024年10月現在はV0.1という表記のとおり、現在配布されているモデルはまだ調整段階のものらしく、V1.0、V1.1、V2.0についても学習を進めており近い将来リリースされる予定のようだ。
ただし、モデル公開の経緯としては元々V0.1モデルが意図せず流出したことから、一般公開に踏み切ったとされている。
そのため、V1.0以降のモデルが配布という形でリリースされるかどうかは不明であり、webサービスで利用可能なAPIとしてのみの公開の可能性も高い点には注意が必要。
詳細な公式情報はHugging Faceから『Illustrious Technical Report.pdf』をDLして閲覧することができる。
特徴
教師画像の枚数やタグ数といった学習規模がAnimagineやPony等の既存モデルと比べて格段に大きいため、出力できる要素*1が圧倒的に多い事が最大の特徴。
ただし背景については学習データの特性か、やや弱いとされる。
プロンプトにおいて上位互換という訳でもなく、AnimagineやPonyでは使えていたプロンプトが効かない場合もある。
後継バージョンでは自然言語でのプロンプト記述や学習画像解像度の向上が予告されている・・・が、一般公開される予定は今の所ない。
キャラをタグだけで出せると何が嬉しいの?
LoRA無しでキャラクターを出力できる利点は、1枚の絵に2キャラ以上を描画するのが楽な事である。*2
illustrious系モデルはタグのみで出せるキャラが従来モデルより格段に多いので、それらのキャラクターでの百合画像や3P画像を作るのが非常に簡易になっている。キャラ出力に必要なタグが少ないことでトークンも節約できるため、他のタグの効きも良くなる。
モデル
公式モデルの配布サイトは以下
注意 ベースモデルなためか、画風が安定しなかったりノイズが多い画像が出る事も多い。
画像出力が目的であれば、次項で紹介する派生モデルを使うのが一般的である。*3
2024年10月現在、『Illustrious-XL-v0.1』と『Illustrious-XL-v0.1-GUIDED』2つのモデルが配布されている。
公式の説明によると、前者(無印)は未調整のベースモデルであり、後者(GUIDED)は健全なイラストを作成する上では安定するモデルとのこと。
Illustrious派生モデル
オリジナルのIllustriousモデルを調整して画風などを安定させたモデル。
2024年12月末時点では、
- WAI-NSFW-illustrious-SDXL(v7.0・v8.0)
- NTR MIX | illustrious-XL | Noob-XL(v4.0・XIII)
が主流となっている。勢力の大きさはWAI v8.0>NTR XIII>WAI v7.0>NTR v4.0となっているようだ。
他にも2024年10月時点でとしあきがスレでよく使っているものとして、
などがある。
NoobAI-XL
https://civitai.com/models/833294
Illustrious-XL-v0.1をベースに追加学習したモデルであり、他のマージモデルとは性格が異なる。
追加されているのはillustriousに含まれなかったdanbooru2023年以降追加分データとe621のデータセットで、v1.0が2024-11-03に公開された。
2024年前半期に絵が増えたキャラクターの追加の他、e621タグ追加、構図系タグの効果向上などで強化されている。
11/18には公式ガイド記事がcivitaiで公開された。
注意 illustriousオリジナル同様にベースモデルの性格が強く、画像出力が目的の場合noob派生モデルを使うのが一般的である。*4
また後述の通り生成結果に関しては不明瞭なillustriousと違い、生成物まで含めて商用禁止が明言されている点にも要注意。*5
noob派生モデル
- NTR MIX | illustrious-XL | Noob-XL
破綻が少なくnsfwな画像を出力することができる。タグの効きも良好で、特殊プレイも難なく破綻なしで出力可能。いわゆるnsfwが目的ならば現状最有力。
学習時の都合なのか、推奨されている設定やタグの並べ方にやや癖があるため要確認(必ずしも忠実に従う必要はないが) - Obsession (Illustrious-XL) (v2以降)
noobから更に画像数万枚を追加学習してある。Novel AIに近い感覚で使用可能。 - copycat-noob
いわゆるマスピ系の絵柄 - LibrasIllustriousXL(v4α以降)
アニメ塗り絵柄が得意 - Illustrious XL personal merge
Obsessionなど複数モデルを混ぜたいいとこどりで、手足や人体の破綻に強い。v3.0_noob-1.0basedが安定版(2024/11/25現在) - Illustrious XL personal merge lowsteps lowcfg
低ステップ低CFGでの高速出力用。6steps CFG1の場合、他モデルで24steps 6CFGでの出力と比べると出力時間はおよそ1/4になる。 - RedCraft | 红潮 CADS Commercial & Advertising Design System
実写系。数ある実写マージモデルで特にアジア系美女に強い。noobai本来のプロンプト追従性は若干弱まっている。 - noobReal
実写系。若干アニメ寄りのモデルだが、プロンプトに忠実でnoobaiで出るキャラならキャラ名だけで実写出力が可能。アブノーマルプロンプトにもある程度対応。
実写のトリガーワード・推奨ネガティブがある。絵柄がアニメによったらネガティブで排除を狙うなど工夫も必要
など
noobAI V-predモデルについて
現在NoobAI-XLにはEpsilon(イプシロン)モデルとV-pred(V-Predict, V予想)モデルの2つがある。
V-predモデルは色のコントラストのはっきりした画像を作ることができる。(例えばEpsilonモデルでプロンプトにnight(夜)と入れても全体的に明るい画像が出てしまったり)
- V-predモデルを使うにはV-predを扱える環境が必要。対応出来ていないユーザーは案外多い。
- V-predが真価を発揮するにはZSNRも必要。これはマージによって損なわれる情報なのでマージする時は注意が必要。
使用方法
詳しくはcivitAIのNoobAI-XL配布ページの右側にAbout this versionという項目があるので
最新情報をそこで確認しよう。
- 1111
1111はデフォルトで予測方法の切り替え機能が無いため、機能拡張を入れる必要がある。
機能拡張:https://github.com/DenOfEquity/forgeFlux_dualPrompt
導入記事:https://note.com/gentle_murre488/n/ne3b15f886737 - Forge版・reForge版
Forge版・reForge版も以前は1111同様に機能拡張を入れる必要があったが
2024/11/23現在ではデフォルトでadvanced_model_samplingという機能拡張が入っている。
(画面左下側のタブの一覧の中にある)
ここのEnable Advanced Model Samplingにチェックを入れ
Discrete Sampling Typeをv_predictionに選択すればVモデルを有効化できる。
逆にこれをやらずにV-predモデルをやると色がやたら濃くなるので注意
また、以前インストールした版には当然入っていないのでmodelとはをバックアップしてから
アップデートないし再インストールが必要。 - ComfyUI
ComfyUIもデフォルトでV-predをサポートしている。
Model Samlpling Discreteノードをmodelと繋ぎ、"v-predition"を選択すればV-predモデルを使用できる。
epsを選べば通常のモデルと同じように生成できる。
zsnrはどちらでも動くが、前述の性質上true推奨。
理論
StableDiffusionは元々、ノイズの掛かった画像からノイズのない画像を復元するモデルを応用して
本当にノイズしかない画像から元の画像(そんなもの無い)を復元するモデルである。
このときEpsilonモデルは復元するときにノイズそのものを予測するのに対して
V予想モデルとはノイズ量と元画像のバランス(v)を予測するという違いがある。
(他にも元画像を直接予測するx0や、計算量を抑えるために低次元の空間に畳み込むLCM等がある)
参考リンク:http://dskjal.com/deeplearning/nai-v3.html
また、v-predモデルは計算方法の性質上、サンプラーはEulerかEuler aしか使えないらしい。
利用方法
デモ版
webブラウザからデモ出力を試すこともできる。 →https://huggingface.co/spaces/AngelBottomless/Illustrious-XL-v0.1-demo
出力した画像に付いていたメタデータは以下の通り
{"prompt": "1girl, smile,general, , masterpiece, best quality, very aesthetic, absurdres", "negative_prompt": "●sfw, lowres, (bad), text, error, fewer, extra, missing, worst quality, jpeg artifacts, low quality, watermark, unfinished, displeasing, oldest, early, chromatic aberration, signature, extra digits, artistic error, username, scan, [abstract], , explicit, questionable, ●ude, ●aked, ●ussy, ●enis, uncensored", "resolution": "896 x 1152", "guidance_scale": 7, "num_inference_steps": 28, "seed": 254607005, "sampler": "Euler a", "sdxl_style": "(None)", "add_quality_tags": true, "quality_tags": "Standard v3.1", "use_upscaler": null, "Model": {"Model": "Illustrious XL v0.1", "Model hash": "e3c47aedb0"}}
ぶっちゃけほぼAnimagineからの使い回しだが公式による設定は参考の一つとなるはず。
なお、wikiのレーティングを考慮してネガティブプロンプトの一部の文字を伏せた。
画像出力設定
公式モデルv0.1の推奨設定はサイトのUsage項によると
- sampling method: Euler a
- Sampling Steps: 20–28,
- CFG: 5–7.5
派生モデルについては異なる場合があるため、それぞれの配布サイトの情報を参照。
推奨出力サイズは他のSDXLと同様1024x1024が基本で、896x1152、832x1216、768x1344など。
公式技術文書の予告ではv1.0以降は学習サイズが1536x1536になるとあり、それに伴う変更があるかもしれない
プロンプト
モデル学習時には画像のキャプションは以下の順で記述されたとある。
人物概要(1boy、3girls、no humanなど)、キャラ名・作品名、レーティング、雑多な一般要素、アーティスト、クオリティ、年代
このモデルに関わらずプロンプトの記述順序は必ずしも学習時の順序に従う必要はないが、上手くいかないと感じたら順序を考えてみるのもいいかもしれない。
使えるタグはdanbooruで確認できる。
ただし、画像登録枚数が少ないタグの学習程度は低く、タグがあるから使えるわけではない点に注意。*6
また、illustrious v0.1は2023年、noob v1は2024年前半頃までのデータを利用しているため、それ以降に画像が登録された分についても学習されてない。
Illustrious XL v0.1 Visual Dictionary(Civitai)といった有志による一覧も参考になる。
tips項目で後述するが、アンダーバーとスペースの扱いに注意。
レーティング
一応sfw/nsfwでも学習されているようではあるが、より詳しく『general』『sensitive』『questionable』『explicit』の4種類に分類されている。
どすけべな絵が欲しい場合はexplicitを入れておけば大抵問題無い。
分類基準はdanbooru wikiのhowto:rate項目を参照。
なお、Animagine XL3.1と同様『rating:』は不要。
クオリティタグ
従来モデルと同様に学習時の教師画像は品質によってランク分けされており、評価の高いものから順に
masterpiece, best quality, good quality, average quality, bad quality, worst qualityとなるため、
上から1~3つ程度をポジティブに、下から2つをネガティブに入れるのがおすすめ。
デモ版での出力画像のメタデータには、これらとは別にvery aesthetic, absurdresも用いられている。
ネガティブプロンプト
推奨例は以下の通り。(前述の公式デモ版で出力した画像の物からnsfwタグを除去)
lowres, (bad), text, error, fewer, extra, missing, worst quality, jpeg artifacts, low quality, watermark, unfinished, displeasing, oldest, early, chromatic aberration, signature, extra digits, artistic error, username, scan, abstract,
派生モデルの中にはまた別の例が付いている物も見かける。
tips
- アンダーバーとスペースは区別される
複数のとしあきから「うまくいかなかったプロンプトのアンダーバー・アンダースコア(_)をスペースに置き換えると成功した」という証言がある。
特に学習程度が低めの版権キャラクター出力の際に問題が目立つ模様。
danbooruで調べた結果のコピペやタグ自動補完プラグイン(a1111-sd-webui-tagcomplete)の初期設定だと_が標準だが、illustriousモデルを使う際はスペースを使うほうが良いのかもしれない。
タグ補完プラグインは設定でアンダーバーをスペースに置き換える設定がある。
- 版権キャラクター描画のコツ
学習された際のタグに忠実なプロンプト表記で出力される確率が上がる。
以下を試しても出ないキャラは諦めてLoRAを使いましょう。- danbooruで正確なタグを確認する (フルネームが必要だったり、shaとsyaを間違えてNGな事もある。艦これキャラなどはアズレン等と混ざるのでshimakaze \(kancolle\)等と学習元のdanbooruタグ通りにする )
- 前項の通り正確なタグを記述するが、illustriousではアンダーバーはスペースに置き換えられて学習されている。アンダーバーをスペースに置き換える とても重要
- 作品名タグもいれる その際の表記は『キャラ名, 作品名』
- danbooru上の()表記は\でエスケープする。()でプロンプトの強調と置き換えられて括弧と認識されないため。例えば、saber \(fate\), fate \(series\) のように記述する。
- 服装・髪型やキャラに関連するタグを追加する
- 学習されたタグは関連タグを呼び寄せて、例えばsailor collarと入力すればbowtieやnecktieを勝手に呼び出しやすい。同じように、学習された関連タグを入力してキャラタグを呼び寄せて補強すれば良い出力が得られやすい。
関連タグはdanbooruでわかる。下記のURLでキャラタグを入れてorder: frequencyを基準にすると出しやすい。 例えばsouryuu_asuka_langley solo plugsuitと入れればアスカ単体のプラグスーツ時だけの関連タグがわかる。
danbooru related tag
- 学習されたタグは関連タグを呼び寄せて、例えばsailor collarと入力すればbowtieやnecktieを勝手に呼び出しやすい。同じように、学習された関連タグを入力してキャラタグを呼び寄せて補強すれば良い出力が得られやすい。
- 学習の弱いキャラはキャラタグ自体を強調してやれば出せることもあるので、出ない時は駄目元で試してみるのも手
- 更に駄目元で、noob派生モデルは一時代を築き上げたponyLoraがやんわり効く。素出しでふんわり出る、学習自体はされているが弱いキャラタグなら、遺産のponyLoraで補強してやれば綺麗に出せることがある。
- 版権キャラ衣装コスプレ
- 登録数がある程度あればキャラタグ \(cosplay\)で出せる。登録数が少ない場合は関連するタグや強調を入れて補強する。
Tag Listing *(cosplay)一覧
- 登録数がある程度あればキャラタグ \(cosplay\)で出せる。登録数が少ない場合は関連するタグや強調を入れて補強する。
- 男性キャラ単独描画
1boyと入れたにもかかわらず女キャラになってしまう場合は『male focus』タグを追加する。
LoRA
基本的にIllustrious系列モデルで学習された専用LoRAが必要であり、Animagine系列やPony系列のLoRAは使えないと思っておいた方が良い*7。
もっとも、適用強度を1.3~2くらいまで高めたり、Pony系用LoRAで学習時に使われていれば『score_9, souce_anime』タグを記述するなどである程度使えるものもあるので、「使えたらラッキー」程度で試してみるのは悪くない。
当たり前だが、SD1.5用のLoRAは全く使えない。
日本時間2024/10/24、CivitaiにIllustrious専用の絞り込みが追加された。
ファイルの種類の横が「IL」になっていればIllustrious用のLoRAである。
noob系モデルはillustrious派生の一つなので、illustrious用LoRAはほぼ問題なく使える。Civitaiでの登録カテゴリ分けも同じ。
LoRA学習について
illustriousでのLoRA作成では学習に得意不得意があり、覚えやすい物と覚えにくい物がハッキリと分かれる。
最近の作品、有名な人気作品、昔の有名作品、それに近い特徴を持っている物は覚えやすい。
ただ、このモデルはプロンプトが強力であるため、学習したLoRAをモデル側が押し返してくるケースもある点に注意が必要。
ガイドによるとillustriousv0.1のキャプションデータはdanbooruタグが採用されている。
Animagine用LoRA作成時に利用した学習用データは問題なく流用可能、pony用に作ったキャプションからは独自の品質タグを抜いたりe621タグをdanbooru準拠に置き換えるのが望ましい。(side view → from side 等)
学習モデルは公式のillustriousモデルを使うのが無難であるが、LoRAトレーニング専用に調整されたモデルも存在する
ライセンス
Animagineと同様のfair-ai-public-license-1.0-sdというライセンスを採用している。
どうやら制作者はオープンソースということに強いこだわりがあるようなのでモデル公開を考えている方は説明ページを熟読しておこう。
簡潔に言うと
- マージモデル、追加学習モデル等の派生モデルの公開時は学習設定等の開示を行う*8
- 倫理に反する用途に使わない*9
- クローズドソース派生モデルを用いた推論サービスの提供禁止*10(生成画像の収益化の可否は不明*11)
の三点である
関連リンク
- Civitai: Booru 1girl wildcard for IllustriousXL
Danbooruの登録タグ数で上位約4000キャラ分のリスト。
「v0.1モデルで出力を確認できたキャラのリスト」というわけではないが、参考に。 - reddit: Illustrious: an Anime Model