技術 約12分で読めます

WAI-Illustrious v17を試す 手足補正・レーティング4段階・v16学習のLoRAは生き残るか

いけさん目次

SDXL系NSFW対応モデルの定番、WAI-Illustrious SDXLのv17が出た。WAI0731は少し前に実験派生の WAI-Anima v1 をリリースしていて、その間も本線のIL系を裏で進めていたことになる。

モデル情報

項目内容
モデル名WAI-NSFW-illustrious-SDXL v17.0
ベースSDXL(Illustrious派生)
ファイル名waiIllustriousSDXL_v170.safetensors
サイズ6.5GB
VAEモデル内蔵
入手先CivitAI.redTensor.Art

v17は CivitAI 側のコンテンツポリシー変更の影響で、CivitAI.com ではなく CivitAI.red に移っている。 CivitAI.com で探しても出てこず、red側へ誘導される形になっていた。 違いは大雑把に言えば「red側はNSFW寄りコンテンツの受け皿」という位置づけらしい。

v17の変更点(配布ページより)

  • 一部キャラで背景との色調が合わなかった問題を修正
  • キャラとの関連性が低い背景が出る問題を改善
  • 全体的に配色が v16 より滑らかでクリーンになった
  • hires fixによる手足の自動補正精度を向上(腕・脚・手・足が勝手に直りやすい)
  • デフォルトのキャラ年齢が気に入らない場合は (aged up:1.0-2.0) または (mature female:1.0-2.0) を先頭に追加

配布ページ推奨設定 vs v11以前

推奨値が下がっていて、より軽量な設定でも品質が出るようになっている。

設定v15-v16v17
ステップ25〜4015〜30
CFG5〜75〜7
サンプラーEuler aEuler a
推奨ソフトforge / forge-neoforge-neo
推奨サイズ1024×1024以上1024×1024以上(作例は1024×1344)
Hires upscale1.51.5
Hires steps2020
Hires upscalerR-ESRGAN 4x+ Anime6BR-ESRGAN 4x+ Anime6B
Hires denoise0.35〜0.50.35〜0.5

4段階のセーフティレーティングタグ(general / sensitive / nsfw / explicit)や、配布ページのPositive / Negativeプロンプトのテンプレは v11以降同じ。

今回の検証環境

項目
マシンMacBook Pro M1 Max / 64GB統合メモリ
実行環境ComfyUI 0.16.4 (MPS)
PyTorch2.10.0
Python3.13.11
ステップ28
CFG6.0
サンプラーeuler_ancestral
スケジューラーnormal
解像度832×1216(縦)/ 1216×832(横)/ 1024×1024(正方形)
seedポリシーテストごとに固定、同一比較は同一seed
ネガティブbad quality, worst quality, worst detail, sketch, censor(NSFW禁止時は , nsfw 追加)
1枚あたり生成時間素の出力で約66秒、hires fix込みで約127秒

プロンプトはIL / Danbooru系の慣習に合わせ、被写体 → 見た目 → ポーズ → 背景 → メタ(マスピ系)の順。記事後半で「配布ページ書式(マスピ先頭)」との差も比較している。

NSFW発動条件の比較は記事の最後に「おまけ」として分けている。 直球NSFW画像はGoogle対応で全体ぼかしをかけているが、構図・色調・ポーズは識別できる粒度で残している。

ComfyUIノード構成(参考)

本題ではないのでさらっと書くが、ワークフローはシンプル。

CheckpointLoaderSimple → (LoraLoader) → CLIPTextEncode (positive/negative)
                                      → KSampler ← EmptyLatentImage
                                      → VAEDecode → SaveImage

hires fix時は KSampler の出力を LatentUpscaleBy (1.5x, nearest-exact) で拡大し、同じモデル・プロンプトで2nd KSampler (denoise 0.4, steps 20) を挟む。アップスケーラは本来 R-ESRGAN 4x+ Anime6B 推奨だが、手元にモデルを置いていなかったので Latent Upscale で代替。

ベース品質の比較(v16 vs v17、同一seed)

バストアップ

プロンプト: 1girl, solo, long black hair, blue eyes, school uniform, looking at viewer, upper body, cherry blossom, outdoor, spring, masterpiece, best quality, amazing quality

v16
A1 バストアップ v16
v17
A1 バストアップ v17

同一seed・同一プロンプトで出しているので、ポーズ・表情・髪型・制服はほぼ同じ。 違いは背景の扱い。

v16では前景に桜の枝が雑にかぶさっていて、キャラと背景の関係がちょっと散らかっている。 v17はリリースノート通り「キャラとの関連性が低い背景」が整理され、桜並木が奥に向かってクリアに描かれている。 花びらの量も抑えめで主役が浮いている。

顔の精度はどちらも高いが、v17のほうがコントラストが滑らかで肌のグラデが綺麗。 髪のハイライトも v17 のほうがシャープ。

全身(IL系は引きで崩れやすいと言われる)

プロンプト: 1girl, solo, long black hair, blue eyes, school uniform, standing, looking at viewer, full body, cherry blossom, outdoor, spring, masterpiece, best quality, amazing quality

v16
A2 全身 v16
v17
A2 全身 v17

両方とも横向きの立ちポーズで手足の破綻はなし。 ILの「引きで顔が潰れる」懸念は、このプロンプトの範囲では両バージョンとも起きていない。 顔はどちらも3/4向きで距離があり、小さく描かれているので表情の差はこのカットだけでは判断しにくい。

配色と空気感には明確な差があり、v17は桜並木の奥行き表現が丁寧、通路の石畳・生け垣・桜のボケ味まで含めて画面がまとまっている。 プリーツスカートやローファー、靴下のディテールも v17 が一段上。

動的ポーズ

プロンプト: 1girl, solo, long silver hair, red eyes, black dress, dynamic pose, jumping, action, wind, looking at viewer, full body, sunset, outdoor, masterpiece, best quality, amazing quality

v16
A3 動的 v16
v17
A3 動的 v17

同seedなのにv16とv17で跳躍方向がまるで違う。 v16は上に真っすぐ跳ぶ感じで、地平線の夕焼けが背景。 v17は横方向のアクションジャンプで、眼下に街が広がる。 v17のほうが構図の選び方が大胆で、絵として見栄えする。

背景の描き込みにも差がある。 v16は下側のテクスチャが不明瞭で、ぱっと見で田んぼと言われても納得してしまうレベル。 よく見ると都市の俯瞰を描こうとした痕跡があるのだが、建物の輪郭が溶けていて判別しにくい。 v17は建物のファサードや通りの走りがはっきり見える。

靴もv16はバレエシューズのような細身のストラップ靴、v17は足首上まで細いストラップが巻きついたヒールと、選ばれる形が違う。 これは seed が同じでも、v17側のモデルウェイトの差で初期ノイズの解釈が変わっていると思われる。 v16とv17は互換モデルではなく別モデルだと割り切ったほうが良さそう。

プロンプト順の影響も結構ある

ついでに、上のA1バストアップ(v17)をプロンプトの並び順だけ変えて出したのが以下。 同一seed、同一語彙、違いはマスピ系タグの位置のみ。

マスピ先頭(早とちり版)
マスピ先頭
マスピ末尾(IL慣習通り)
マスピ末尾

マスピ先頭版は前のカットにあった桜の枝の前景カットインが残り、構図が重たい。 マスピ末尾版は主役の顔周りが開けて、背景のボケ味がハイライトになっている。 同じseedで同じ語彙でも、これだけ絵の印象が変わる。

WAIの配布ページに貼られているPositive Promptサンプルは ,masterpiece,best quality,amazing quality, 先頭にカンマがついた形。 これは「ユーザーのプロンプトの後ろに続けて」という意味で、マスピは末尾に置く運用を想定している。 Negative の方も bad quality,worst quality,worst detail,sketch,censor,末尾にカンマで、こちらはユーザーが後ろに追加できるようなプレフィクススニペット。

つまり WAI の書式も IL / Danbooru系のタグ順の慣習(メタタグは末尾)も方向が一致していて、マスピ末尾で運用するのが正解。 私が最初に回した時は気づかずにマスピを頭に置いてしまい、それが上の左側。 カンマの位置まで素直に読めば間違えない話だが、やっちゃう人は他にもいそうなので比較として残しておく。 この記事の比較画像は初回バッチ以外すべて右側(マスピ末尾)で統一している。

レーティング4段階タグの効き

Illustrious系は学習データに4段階のセーフティレーティングタグが付いている。

タグ位置づけ
general完全にSFW、露出なし
sensitive水着・下着など軽い露出
nsfwヌード
explicit性的な描写

配布ページには「nsfw を negative に入れることで不適切な内容をフィルタできる」と明記されている。 逆に positive に入れればどうなるか。 同一seedで末尾のレーティングタグだけ切り替えた。

プロンプト: 1girl, solo, long brown hair, swimsuit, standing, looking at viewer, beach, {rating}, masterpiece, best quality, amazing quality

general
general
sensitive
sensitive
nsfw
nsfw
explicit
explicit
  • general → スクール競泳水着。露出を最小化する方向に振れている
  • sensitive → ビキニに変化。水着という語彙は維持しつつ露出多めの形状を選ぶ
  • nsfw → 引き続きビキニ。構図が少し変わる程度
  • explicit → 引き続きビキニ

プロンプトに swimsuit がある以上、レーティングタグ単体で脱がせることはできない。 タグは「水着の選び方をどっち側に寄せるか」程度のヒントとして効いている。 general→sensitive の線引きはかなりはっきり出るが、nsfw→explicit の区別はこのプロンプトの範囲ではほぼ見えなかった。

配布ページが推奨する「nsfw を negative に入れるフィルタ用途」のほうが本筋の使い方。 positive 側の効果はあくまで微調整。

かなちゃんLoRAマトリクス(04 / 05 × v16 / v17)

v17リリースで気になるのは、v16で学習した手元のLoRAがそのまま使えるかどうか。 ここで落ちるとv17のためにLoRAを再学習する必要が出てきて、時間もコストも無駄になる。

自作のかなちゃんLoRA(Illustrious v16ベースで学習、kanachan-waiv16-04-05)で検証。 05 は過学習気味で 04 のほうが素直な出力をする時がある、という感触があったのでその差も見た。 LoRA強度 1.0、同一seed、同一プロンプト。

プロンプト: kanachan, 1girl, solo, school uniform, looking at viewer, upper body, white background, masterpiece, best quality, amazing quality

v16 + LoRA 04
v16 LoRA 04
v16 + LoRA 05
v16 LoRA 05
v17 + LoRA 04
v17 LoRA 04
v17 + LoRA 05
v17 LoRA 05

v16で学習したかなちゃんLoRAがv17でそのまま使える。 茶髪のサイドポニー、青シュシュ、顔の造作、まつ毛の描き方まで、キャラクターの同一性は4パターンとも維持。 v17ベースになっても破綻していない。

差が出ているのはむしろベースモデル側。 v16ベースでは school uniform が「カーディガン+紐リボン+白シャツ」のソフトな解釈。 v17ベースでは「セーラー襟+ベスト+大きめの赤リボンタイ」のきっちりした解釈。 LoRA(キャラ)とベース(画風・世界観)が独立して効いているのが見える。

04と05の差はこのバストアップの単純構図だと服装の細部くらいで、過学習の影響はほぼ見えない。 複雑なポーズやシチュエーションを混ぜた時に出てくる話だと思うので、ここは別途検証したい。

1つだけ今回の設定起因の注意点。 4パターンすべてで髪の毛先がうっすらピンクがかっているが、これは自分の環境特有の挙動。 今回は検証用途で strength_model: 1.0, strength_clip: 1.0 にしていて、CLIP側を強く効かせ過ぎているのが原因と思われる。 普段運用では strength_clip: 0.8 程度に下げると毛先の色ブレは消える。 MPS バックエンド特有の数値計算差も乗っている可能性があり、CUDA 環境だと出にくいかもしれない。

hires fixの手足補正

ここが配布ページが今回の大きな更新点として挙げているところ。 「hires fix を使うと腕・脚・手・足の問題が勝手に直る確率が高い」と書かれている。 手足が崩れやすい武器持ちダイナミックポーズで検証した。 hires fix は 1.5倍・Latent Upscale (nearest-exact)・2ndパス 20 steps・denoise 0.4。

プロンプト: 1girl, solo, long blue hair, yellow eyes, armor, holding sword, dynamic pose, action, jumping, battle, full body, detailed hands, detailed feet, masterpiece, best quality, amazing quality

hires off(1024×1024素)
hires off
hires on(1.5倍, denoise 0.4)
hires on

構図・ポーズ・髪の流れは維持されたまま、細部だけ明確になる。

  • 剣を握る手 → off では指の分節が曖昧、on では関節とグリップの関係がはっきり
  • 開いた側の手 → off では指が溶け気味、on では分節化
  • 裸足の手前の足 → off では爪先が曖昧、on では指・爪までクッキリ
  • 鎧 → on でリベット・金の縁取り・彫刻の模様が見える
  • 髪 → on で一本一本の流れと質感が出る
  • 背景 → on で岩や瓦礫の輪郭が鋭くなり、画面の密度が上がる

1点だけ細かい副作用として、off 版は目が大きめで瞳のハイライトが強く睨みの圧があり、on 版はそこが若干マイルドに整う傾向がある。 2ndパスで denoise 0.4 かけると顔全体が整うときに、アニメ絵特有の目の強調も少し薄まる。 ただ絵として全体的にどちらが良いかで言えば on で、視線の凄みより細部の密度が効く構図が多い。

「手足の自動補正」はマーケティング文句ではなく実際そう見える挙動。 hires fix を挟むと生成時間は 66秒 → 127秒 と概ね倍になるが、手足が重要な構図では見合う。 v17 に切り替えたら、プロンプト側で detailed hands, detailed feet を頑張るより、hires fix を常用したほうが早い。


WAI-ILはもともと「バージョンごとに絵の振れ幅がそこそこある」とよく言われているモデルで、v17もその延長にある感触。 v16 の完全上位互換というより、画風がちょっとクリーンな方向に振れた別モデル、という感じ。 同seedで出力が結構ずれるので、既存のseedコレクションで「いつもの絵」が出なくなるのは覚悟が要る。 v16の絵が好きなら v16 を残しておく価値はある。

とはいえ出はそんなに悪くない。 v16学習のLoRAがそのまま動いたのと、hires fix の手足補正が実用レベルなのが大きくて、この2点だけでv17に移る理由としては十分。 ついでに言うと、学習用の元素材はもう揃っているので、v17 側でもう一度 LoRA を作ってみるのは面白そう。 v16 LoRA がそのまま使えるとはいえ、ベース側の服装解釈の差(v17 はセーラー系に寄る)が出ているので、v17 で再学習したら別の出方になるはず。

M1 Max 64GB でも素の出力で約66秒、hires込みで約127秒なので、Apple Silicon単体でも十分試せる。

おまけ: NSFW発動条件(v16 vs v17)

ここから先はNSFW寄りの検証。 モデル側のNSFW発動の素直さ・暴走度合いにバージョン差があるかを見た。 以下の画像はGoogle対応で全体ぼかしをかけている。 NSFWが苦手な方はここまでで大丈夫です。

nude 単体の指定

プロンプト: 1girl, solo, long black hair, blue eyes, nude, standing, bedroom, indoor, masterpiece, best quality, amazing quality

v16
C1 nude v16(ぼかし)
v17
C1 nude v17(ぼかし)

どちらも nude 単体で素直に脱ぐ。 ポーズもベッドルーム背景も同seedでほぼ同じ。 v17のほうが肌のグラデと陰影が滑らかで、顔の造作もクリーン。 脱衣の閾値自体は v16 と v17 で変わっていない印象。

並べて見ると v16 はベッドとキャラのパースが微妙に噛み合っていない。 ベッドの奥行き方向と、キャラの立ち位置の床のパースが揃っていなくて、空間としてちょっとチグハグ。 単体で見る分には気にならない程度だが、v17 と並べると v17 のほうが家具・床・キャラが同じ空間にいる感じでまとまっている。

ついでに意外だったのは胸の描き方で、v16 のほうが控えめめ。 WAI-IL は黙って出すと胸を大きめに振る印象だったので、このプロンプトで v16 が v17 より控えめに振ったのは想定外だった。 ベース側のパラメータが振り直されている可能性はあるが、1サンプルだけでは何とも言えない。

明示的なタグ指定

プロンプト: 1girl, solo, long black hair, blue eyes, nude, breasts, nipples, pussy, spread legs, lying on back, bed, bedroom, indoor, explicit, masterpiece, best quality, amazing quality

v16
C2 explicit v16(ぼかし)
v17
C2 explicit v17(ぼかし)

こちらも両バージョンとも指示通りの構図を生成。 表情から見ていくと、v16 はほぼ無表情、v17 は頬に軽く紅潮が乗っていて、絵としての成立度は v17 のほうが高い。 指・手・腕と身体の接触面、シーツの重なり等でも差が出ていて、v17 のほうが手が身体に自然に沿う。 解剖学的な整合性も全体的に v17 で上がっている印象。

バイアスの話をひとつ書いておくと、両方とも寝転がった姿勢なのに胸が自然に潰れたり流れたりしていない。 仰向けで自然なバストは重力で脇に流れるのだが、v16 / v17 どちらも張りを保ったまま上を向いている。 学習元のイラストで、その手の物理整合性を無視した描き方のほうが主流だからと思われる(アニメ・イラスト系の学習データに寄りがち)。 3Dスキャン系のデータセットで学習した写実モデルとはここが違う。

発動の素直さは v16 / v17 で変わらず、違いは仕上がりの完成度のほう、という結論。 描き込みの精度が上がった分、v17 のほうがNSFW側でも画として成立しやすい。