Pixiv Fanbox
NovelAI「キャラ参照」が大幅性能アップ!「NSFW化」からLoRA学習まで
Published 10/11/2025, 10:11:22 AM · Edited 04/15/2026, 03:53:46 PM

【2026/04/15更新】「サブスクAnlasを使い切れなかったときは」を追記しました。
こんばんは、スタジオ真榊です。今回は、NovelAIの「キャラクターリファレンス(キャラ参照)」機能の大特集です。ちょうど1か月前の9月11日に試験実装された機能ですが、今回性能が大幅アップデートされ、NanoBananaやSeedream4のようにキャラクターの一貫性を保ちながら、アングルやポーズ、表情を自由に変更できるようになりました。
先日の特集では、Seedream4で1枚しかないキャラクター絵のバリエーションを生成し、キャラLoRAを作る手法を特集しようとしたのですが、規約で出力物の他モデル学習が禁止されていたため断念。しかし、NovelAIはご存じの通り、出力物のLoRA学習もNSFW生成も、規約上は明示的に禁止されていません。なんとおおらか!
そこで今回は、新生「キャラ参照」を使った各種性能実験に始まり、「このキャラを裸にして」「〇〇させて」といった「NSFW指示」を加えられるか、オリジナルキャラクターの容姿を学習させたLoRAを作れるかについて、2万字超の大ボリュームで徹底検証を行いました。NovelAIは初めてor久しぶりという方は、こちらに「v4」「v4.5」で導入された各機能がまとまっていますのでご覧ください。
目次
1.キャラクターリファレンス(キャラ参照)とは
・入力画像選びのコツ
・大幅機能アップデート
2.新生「キャラ参照」の実力を試す
<全年齢編・小括>
3.NSFW編
<NSFW編・小括>
4.マルチキャラクタープロンプトとの併用は?
・インペイントとの併用は未実装
5.NovelAIの規約を確認
6.1枚絵からキャラLoRAを作ってみよう
・ランダムプロンプトを活用
・どういうLoRAにするかでデータセットが決まる
・NovelAIの料金体系を再確認
・サブスクAnlasを使い切れなかったときは New!
7.構築したデータセット
8.タギング
9.学習開始
10.LoRAテスト生成
終わりに
(3章にはR-18画像が多数掲載されます。閲覧時は周囲にご注意ください)
1.キャラクターリファレンス(キャラ参照)とは
NovelAIのキャラクターリファレンス機能は、入力した1枚の画像から、キャラクターデザインと画風を読み取って出力結果に反映させるキャラ再現機能です。NovelAIの最新モデル「NAI Diffusion v4.5」のFullバージョン、もしくはCuratedバージョン(R-18機能制限版)で使用することができます。(前回記事はこちら)
似た機能として「ポーション」機能がありますが、これは読み込ませたイラスト全体の雰囲気や絵柄、カラーリング、構図などをざっくり参照する機能。「キャラ参照」はよりキャラクターの容姿・デザインを再現することに特化しており、表情やアングル、ポーズ、衣装、シチュエーションなどを任意に変更しやすい機能となっています。
使い方はごく単純で、img2imgのように画面上に画像をドラッグアンドドロップするか、画面左側の「キャラ参照画像」のボタンから画像を読み込むだけ。キャラクターデザインだけを参照するか、それとも絵柄まで参照するかをオンオフできるほか、今回のアップデートで「Fidelity(忠実度)」を調整することができるようになっています。
忠実度が最大の「1」だと、今回搭載された一貫性保持力が発揮され、忠実度「0」にするとアップデート前の挙動に戻るとのこと。よって、絵柄参照オン&忠実度「1」でキャラクターを再現するのが基本となりますが、「この画像のキャラを別の絵柄タグで再現したい」とか「普段の自分の画風に寄せたい」といった場合には絵柄参照をオフにしたり、忠実度をほどよく下げたりして調整する必要があります。
・入力画像選びのコツ
以下は、アップデート前の段階でNovelAI公式が示していた、キャラ参照させる画像選びについてのコツです。
①基本的には「シンプルな背景でニュートラルなポーズを取って立っているキャラクターの全身ショット」が望ましい。(※上半身だけを生成したいなら参照画像も上半身だけでOK)
②スケッチやラフ風の画像よりも、線や塗りがはっきりしたアニメ調のような画像のほうが参照しやすい。
③汎用性重視なら、そのキャラを複数の角度からとらえた三面図や設定画風の画像を入力する。画像の隅に顔のアップがあるとさらに効果的。
④なかなか似ない特徴がある場合は、その特徴を示すタグをプロンプトに追加する。(例:tsurimeやthick eyebrowsなど)
まとめると、可能ならこのような全身図とアップが混じった画像を参照させつつ、うまくいかないときは「grey cardigan」や「red-framed eyewear」「white pupils」などをプロンプトに足して誘導してあげる・・・というのが基本となります。
付け加えると、目をつぶっていたり、極端な表情をしていたりする画像だとキャラクターの特徴や画風をうまく似せられなくなる(例えば、目を開いたときにどんな目に描けばいいかわからない)ので、そうした画像は避けたほうがよいということになります。また、手や衣装の細かな描写などもかなり読み取ってくるので、どこかに間違いがあったり、角度的に4本指や6本指に見える画像を入力してしまうと、出力画像も描写が不正確になりやすいことも覚えておきましょう。
・大幅機能アップデート
今年9月に搭載されたばかりのキャラ参照機能ですが、10月7日にこのようなリリースがあり、キャラクター再現時の一貫性と精度が「飛躍的に改善」されたと発表されました。
アップデート前の「キャラ参照」の性能はこのような感じ。指の崩壊が目立つほか、衣装のデザインはかなり頑張れているものの、画風はかなり変更されている印象がありました。当時は公式も「髪型や服装、表情といったそのキャラクターらしさを決める特徴に集中して再現する」と説明しており、完璧な模倣ではないことを言外に認めていたように見えます。
9月はNanoBananaやSeedream4などの高性能モデルが次々に登場していたタイミングでもあり、あまりNovelAIがキャラ参照機能で注目されることはなかったのですが、今回のアップデートでどのように変わったのか、さっそく見ていきましょう。
2.新生「キャラ参照」の実力を試す
絵柄参照をON・忠実度も最大の「1」の状態でテストを行います。プロンプトや入力画像を変更しながら試行を重ねましたので、とりあえず生成結果をご覧ください。
※以下、生成サイズは断りのない場合「大サイズ縦型(1024x1536px)」とし、ステップ28、正確度5、シード値はランダム、サンプラーはEuler Ancestralで生成しています。品質タグはON(very aesthetic,masterpiece,no textが追加)、除外したい要素プリセットは「強い」で行いました。
①怒り顔+腕組み
指示「1girl,angry,crossed arms」
②キャラ設定三面図
指示「1girl,reference sheet,standing,from side,from behind,straight-on」(大サイズ正方形)
③バニーガール
指示「1girl,playboy bunny」
このように、プロンプトが単純すぎると変更しきれないことがよくありました。服装などが元画像に引っ張られる場合は、プロンプトをさらに詳しくして誤解が生じないようにするか、元画像の再現したくない要素(この場合はserafukuなど)をNPに入れると改善します。
指示「1girl,playboy bunny, bunny suit,black leotard,rabbit ears,glaring,hand on hip」
PPをこのように詳しくすると、ちゃんと着替えられました。
④ちびキャラ化
指示「1girl,chibi,full body,deformed」
問題なくできました。ちび度合いはかなりランダムで、2頭身になったり3頭身になったりします。また、8頭身のキャラクターとちびキャラが共演する「chibi inset」になることもよくありました。避けたい場合はNPに入れたり、「solo」「chibi only」などのタグを使うと改善します。
⑤脱がす
指示「1girl,completely nude,embarrassed,nsfw」
NanoBananaやSeedream4だとできないか、規約違反になるNSFW系指示。次の3章で詳しく見ていきますが、基本的に露骨な性描写でもしっかり通ります。nsfw指示なのに乳首や局部が映らなかったのは、おそらく入力画像に引っ張られて全年齢方向に寄ったため。explicitやnipplesなどと入れるとNSFW感が強まります。または、全裸の生成画像を「キャラ参照」してしまうなどの方法もあるかと思います。
⑥アングル(カメラコントロール)
さきほどのreference sheetと同様に、カメラ位置を変更したり、部位をアップにしたりすることも安定してできました。
指示「1girl,floor,{{{from above}}}」
指示「1girl,lower body,head out of frame」
⑦ちびキャラのポーズ変更
指示「1girl,smile,waving hand,chibi,full body」
非常に高い再現度ですね。特に注目したいのが、入力画像にごく小さく描かれている「ギザ歯」をしっかり再現してくれたことです。凶悪そうな顔のままで笑顔にするのはNanoBananaには不可能でしたし、Seedream4でも失敗しがちだったのですが、難なくできていますね。
指示「1girl,scared,surprised,frying pan, holding,cooking,full body,chibi,fried rice」
前回記事で実験したチャーハン料理変換。Seedream4よりもむしろ上手にキャラ模倣・コントロールできているように見えます。元画像の印象をほとんど壊さずに、ポーズや表情をいじれていますね。
ポイントとして、着物の花柄?模様をよく見てみると、完璧には再現できていないことがうかがえます。漫画などにしたときに矛盾が出てしまうので、このあたりは人間がよく見て修正する必要があろうかと思います。
⑧複数キャラ生成
入力画像のキャラクターと別キャラクターを共演させられるかも試しました。
指示「2girls,talking,white background」
残念ながら、単一キャラの画像(左)を読み込ませて2girlsなどと指定すると、このようにそのキャラが双子化してしまうことがほとんどでした。では、2人のキャラが映った画像を読み込ませて2girls指示するとどうでしょうか。
指示「2girls,talking,white background」
場合によりますが、このように特徴がフュージョンしてしまうことが多かったです。基本的に、入力画像と出力画像で1対1の関係を想定して学習されている機能のようですので、入力画像はキャラクターが単体で映っている画像にしましょう。
<全年齢編・小括>
正直申し上げて、予想以上の結果に驚きました。かなり細かいキャラデザインをしっかり拾ってくるだけでなく、顔立ちや印象もしっかり似せることができています。我々が慣れ親しんだdanbooruタグへの応答も上々で、{{{smile}}}などの強度調整も可能ですので、むしろ自然言語より思った通りに動かせる感覚がありました。
こちらのreference sheet変換では、髪の毛の左右の長さの違いやスカートのひだひだの自然さだけでなく、元画像にも指示にもない部分(この場合は足元のブーツ)もそれらしく補ってくれています。
さきほどのギザ歯再現もすばらしかったですが、こうしたちょっとしたfang(八重歯)表現や、手の塗り、しわの表現、髪のハイライトも、非常にそれらしく変更できています。NSFWについては次の章で詳しく見てみますが、text2imageでできることは「ほぼなんでもできる」と考えてよさそうですね。
なんとなく感じられた弱点としては、さきほど触れた「入力画像に引っ張られすぎることがある」点と、「キャラデザインが細部まで完璧とは限らない」「画風再現が得意なキャラとそうでないキャラがある」あたりでしょうか。
キャラクターによって、似やすさに差がある(もしくは、私がそのキャラへのこだわりが強く、ちょっとした違いを大きく感じる)のもなんとなく感じられました。一枚しか参照させられないので、そのキャラ画像がたまたま普段の自分の画風よりもキュートよりだったり、セクシーよりだったりすると、生成結果もそうした雰囲気に強く引っ張られます。なかなかうまくいかないときは、同じキャラの別の画像を入力して試してみるとよさそうですね。
3.NSFW編
さきほど服を脱がすのはやってみましたが、この章では本格的なNSFW変化も試してみます。基本的に性器は無修正で生成されるので、モザイク加工をClipStudioで施しています。
<以降、性交を含むR-18画像が複数出てきます。閲覧時は周囲にご注意ください>
①全裸化
PP:1girl,completely nude,expressionless,large breasts,hand on hip,nipples,white background,30years old,curvy
completely nudeだけでは局部を隠しがちでしたので、nipples,hand on hipなどとして手で隠さないようにしました。体型(胸の大きさなど)についても詳しく書かないと、脱ぐ前と印象の異なるものになりがちでした。
着衣のNSFW画像を作るなら左の画像を参照させればよいですが、常に全裸で描きたい(または別の衣装にしたい)などがあれば、その服装の画像を新たな入力画像にするとよいでしょう。
②キス
PP:1girl,kiss,nsfw,v-shaped eyebrows,1boy,disgust,1boy,faceless male,fat man,
まずは小手調べから。ツーショットは、普通に続けて「1boy...」と男性の容姿を描けば問題なくできるようでした。「solo focus」(複数人のうち1人を主体に描く)を入れると女性しか描かれないことが多かったので、外したほうがよさそうです。
③局部露出
PP:1girl,on bed,spread legs,bed room,bed sheet,glaring,spread pussy,on back,
問題なくできました。服装について書かないと、基本的には入力画像の着衣のままそのプロンプトの条件を満たそうとするようです。全裸にしたい場合は「completely nude」や「nipples」などを入力しましょう。
④フェラチオ
PP:1girl,bed room,upper body,fellatio,v-shaped eyebrows,angry,pov,pov penis,veiny penis,nsfw,closed eyes
セーターと指のあたりに破綻が見えますが、ガチャで何とかなるレベルかなと思います。他の例でも指の描写は今ひとつだったので、入力画像は手が映り込んでいないものにしたほうがよかったかもしれません。
⑤顔射
1girl,bed room,penis on face,bukkake,cum on face,one eye closed,tongue,open mouth,cum on hair,veiny penis,pov,facial,pov penis,
元画像に男性器が写り込んでいないため、繰り返しpenis要素を盛り込まないと女性キャラだけになりがちでした。
⑥「キャラ参照のキャラ参照」
「フェラチオ▶顔射」のような同じシチュエーションで時間経過の前後を描きたい場合、全身の全年齢画像ではなく、キャラ参照で生成したフェラチオ画像を入力したほうがシーンの一貫性が保たれるのでは?と思いつきましたので、さっそく試してみます。
PP:1girl,bed room,penis on face,bukkake,cum on face,one eye closed,tongue,open mouth,cum on hair,veiny penis,pov,facial,pov penis,
なぜか、キャラ参照で生成した画像をキャラ参照すると、このように彩度が極端に焼け付いてしまうことがありました。ベッドの形状や色合いなどは継承できているのですが、なぜこうなるのかは不明です。他には、キャラ周辺に白い「縁取り」が出る現象も何度か確認されました。
参照画像とほぼ同じ構成要素の画像を要求すると、プロンプトが重複していることで内部的に要素が再強調されすぎるのかもしれません。キャラ参照で出力した画像をそのままキャラ参照に読み込ませるのではなく、いったんスクリーンショットして別画像扱いにすると「焼き付き」が改善したケースもあり、内部的なメタデータが悪さをしている可能性もあります(これは偶然で見当違いかもしれません、今後よく調べてみます)
⑦SEX(後背位)
PP:1girl,sex from behind,closed eyes,on bed,completely nude,nsfw,v-shaped eyebrows,1boy,disgust,1boy,faceless male,fat man,head out of frame,
シンプルなプロンプトでしたが、綺麗にできましたね。他の体位はいちいち試しませんが、性交は比較的安定して生成できるように感じました。
⑧テキスト(擬音)描写
「品質タグを加える」がオンになっていると、プロンプトに内部的に「very aesthetic, masterpiece,no text」が加えられます。擬音や吹き出し描写を入れたい場合は、no textになるのを避けるため「品質タグを加える」をオフにして、very aesthetic, masterpieceを加えたPPにする必要があります。
PP:1girl,sex from behind,closed eyes,on bed,completely nude,nsfw,v-shaped eyebrows,in heat,1boy,disgust,1boy,faceless male,fat man,head out of frame,sound effect,very aesthetic, masterpiece,speed lines
やや文字は怪しくなってしまうので、完璧を期す場合はさすがに手描きしたほうがよいでしょう。
⑨その他のHシチュエーション
「プロンプト大辞典」のNSFW用例で紹介したシチュを二つ試しました。
◇ハメ撮りチェキ
PP:1girl,fake photograph,polaroid photo, drawn ears, drawn whiskers, explicit,nsfw,shiny skin, text, oral invitation,tongue,uvula, penis on face,close up,cum on hair,ahegao,excessive cum,double v,cum on tongue,drawn_heart,collar, grabbing another's head
少し指の描写が怪しい感じがするのは、恐らくこの入力画像の手の描写があまり正確でないからです。手の描写にこだわりがないなら、手が見切れている画像を参照させたほうが正確性は上がるようですね。
◇即堕ち2コマ
いわゆる、キャンバスを2分割して、片方に日常シーンを、もう片方にHシーンを描く定番の表現です。
PP:1girl,nsfw,instant_loss,tachie,before_and_after,cowboy shot,white border,angry,fat man,2koma,hetero,tachi-e,hand on hip,on bed,hotel room,ahegao,sex from behind,squinting,solo focus,steaming body,speed lines,clothed female nude male,facing viewer,walk-in,, masterpiece,best quality,amazing quality, multiple angle,multiple views,white border,casual wear,mature female,averting eyes
四肢に怪しさが見えますが(というかちゃんと挿入できていませんが)、それなりに再現できるようでした。横長キャンバス(大)で生成したので入力画像は省略しましたが、さきほどと同じ画像を参照させています。
かなり長いプロンプトだったためか、averting eyes(目をそらす)など、いくつか再現できなかったタグもありました。また、スカートの色も入力画像とかなり変化してしまっています。「注文(プロンプト指示による変更点)が多くなるほど細部は怪しくなる」という法則も、一つ覚えておいたほうがいいかもしれません。
<NSFW編・小括>
というわけで、キャラ参照によるNSFW変更もかなり自在にできるようですね。入力画像や注文の多さによってはやや四肢の描写が甘くなることが感じられましたので、1枚しかない入力枠でどういう画像を参照させるか、どうシンプルな指示にするかがカギになりそうです。また、「キャラ参照のキャラ参照」をしたときに色彩の焼き付きのような現象が起こることも確認できたので、「かなり自在」ではあるけれども完璧ではない…といったところでしょうか。
▲指示が増えるとあれこれが怪しくなる
とはいえこれまでは、このような「同キャラのNSFW画像」を生成しようとするならプロンプトを工夫するか、インペイントで頑張るか、追加学習するか…といった面倒な作業が必要だったわけで、GoogleやByteDanceにはできない優位性を感じるところですね。一方で、これは端的に言えば「イラストのディープフェイクポルノ」のような技術ですから、他人が著作権を持つ画像を参照させたたり、出力画像をSNSなどで公開したりする場合、問題がないかよく考えて行動・自衛したいところです。
というわけで、NSFW検証はここまで。以降はR-18画像は出てきませんのでご安心ください。
4.マルチキャラクタープロンプトとの併用は?
話は変わって、NovelAIにはだいぶ前から、複数キャラクターの描き分けができる「マルチキャラクタープロンプト」という機能が実装されています。キャンバス全体を説明する「ベースプロンプト」と別に、キャラ1、キャラ2と別々の欄に容姿プロンプトを指示し、位置関係も指示できるーといったもので、詳しくはこちらの記事の該当項目で紹介しています。
この機能を使って、キャラ参照したキャラと別のキャラを絡ませられるかが気になるところです。例えば、ミナちゃんの容姿をキャラ参照で読み込ませて、初音ミクさんのような既存キャラと共演させるようなことができるでしょうか?
このように記入してみます。入力する画像はさきほどのミナちゃんの1人画像です。
ベース:2girls,talking
キャラ1:girl,hatsune miku
キャラ2:girl,red glasses,ponytail
こちらが生成結果。忠実度「1」だとこのような感じで、だいたい両方が強力にミナちゃんになってしまいます。忠実度を下げていくと、ある程度は別キャラの特徴が出やすくはなりますが…
今度はこんな感じで、ミナちゃんの一貫性が落ちていってしまいます。マルチキャラプロンプトとの併用は「できないことはないが、便利とまではいえない」というところでしょうか。
・インペイントとの併用は未実装
こういうときにちょっと残念なのが、インペイント機能でキャラ参照することがまだできないというところです。例えばこんな感じで、さきほどうまくいかなかったミナちゃんの部分だけをマスクして、キャラ参照機能をONにして正確なミナちゃんをインペイントできればよかったのですが…。
試しに実行してみましたが、このように全く違う「1girl」が出てしまい、キャラ参照機能は動作しませんでした。残念。
NovelAI公式は9月にキャラ参照機能を実装した際、「この機能はまだプレビュー段階で、今後正式版になると、複数画像の同時参照やインペイント・ポーション機能との併用が可能になる」と説明していましたので、それを楽しみに待ちたいところですね。というか、もしそこができるようになってしまうと、規約の縛りのゆるさも手伝って、一気に超便利ツールに復権してきそうです。
正直ビッグテックのNanoBananaとSeedream4をNovelAIが全く別アプローチで追随してくるとは思っていませんでしたが、何度も人気が下火になってはV3、V4と蘇ってきたNovelAIらしい猛チャージかもしれませんね。何より、自然言語よりもdanbooruタグのほうが、慣れていると細かくコントロールしやすいように感じます。
5.NovelAIの規約を確認
さて、ここからはいよいよキャラクターLoRAを「キャラ参照」で作れるかどうかを検証していくのですが、その前にNovelAIの利用規約(Terms of service)を確認しておきましょう。
「法人または個人を問わず、ユーザーはコンテンツに関するすべての権利と所有権を保持し、Anlatan社はいかなる所有権も主張しない」という基本事項を始め、さまざまな権利関係や禁止事項などが書かれていますが、基本的にNSFW生成や出力物の学習についての記載はありません。
「9」に不正行為の一覧もありますが、サービス利用ルールを無視してタダで利用したり、サーバーに負担を掛けたりするような行為を禁じるものが多く、出力画像の用途を縛る条項はほとんどありません。
このところ、GoogleやBytePlus、Adobe等の厳しい規約を読むことが多かったので、このシンプル&おおらかさはありがたい限りですね。
6.1枚絵からキャラLoRAを作ってみよう
さて、ここからは「キャラ参照」機能を使って1枚絵のバリエーションをたくさん作り、追加学習用のデータセットを構築して、illustrious系モデル「WAI NSFW v14」用のキャラクターLoRAを作るところまでを試してみましょう。(最新はv15ですが、個人的にv14の方がプロンプトへの応答性が好みです)
以前こちらの記事で、NovelAIの「ポーション」機能を使って同様のことを試したことがありました。
LoRAのデータセットには15枚から30枚程度、さまざまな表情、ポーズ、アングルのバリエーションを用意したいところ。キャラクターにもよりますが、背後や横からのカット、顔のアップなども入れておく必要があります。また、服装を固定するのではなく、着替えさせたい場合は服装バリエーションもあると良いですね。
・ランダムプロンプトを活用
NovelAIには、入力したプロンプトの一部をランダム化する機能があります。StableDiffusionでは{a|b|c}のようにくくりますが、NovelAIでは半角縦棒2本「||」の間を1本「|」でくくるルール。縦棒は「Shift + ¥ キー」で出てきます。
例えば、以下のような感じでプロンプトをランダム化できます。
ポーズ:||sitting|standing|dancing||
表情:||smile|angry|sad|expressionless||
フォーカス:||cowboy shot|full body|upper body|face||
画角:||from side|straight on|from behind||
私は最上位の「Opus」プランを契約しているので、「普通」サイズの画像生成は参照なしならAnlas無償で1枚ずつ生成することができます。ただ、キャラ参照機能をONにすると、少し高価になって1枚5Anlasになります。4枚同時生成すると一挙に80Anlas(1枚あたり20Anlas)も消費してしまいますので、まずは1枚5Anlas生成で出来を確かめましょう。
PP:1girl,solo,||sitting|standing|dancing||,||smile|angry|sad|expressionless|surprised|embarrassed||,||cowboy shot|full body|upper body|face||,||from side|straight on|from behind||
特にchibiなどのタグを入れないと、むしろ8頭身になってしまいました!これはNanoBananaやSeedream4にいくら頼んでもなかなかできなかったことで、逆にNovelAI恐るべしですね。
今度は次のようにchibi onlyやsoloなどを入れてみます。
PP:1girl,solo,chibi only,deformed,kimono,long hair,hakama,||sitting|standing|dancing||,||smile|angry|sad|expressionless|surprised|embarrassed||,||cowboy shot|full body|upper body|face||,||from side|straight on|from behind||,
無事ちびキャラ風にできました。ただ、ちび度合いはかなり運次第のようで、元画像が2頭身なのに対し、生成結果は3頭身以上あるようにみえますね。
少しタグのランダム要素を増やすと、このようになりました。
PP:1girl,solo,chibi only,deformed,kimono,long hair,hakama,||sitting|standing|dancing|walking|jumping|lying||,||smile|angry|sad|expressionless|surprised|embarrassed|seductive|disgust|happy||,||cowboy shot|full body|upper body|face||,||from side|straight on|from behind||,
背面はやや怪しい感じがしますが、これは恐らく表情のプロンプトとケンカしてしまっている(向こうを向いているポーズにできない)ためかなと思います。背面はランダムプロンプトに含めず、単独プロンプトで最後にオーダーメードしたほうが無駄がなさそうですね。
こちらはさきほどの8頭身が出るプロンプトで出したもの。ちゃんと同一人物に見えるのは素晴らしいですが、和装の衣装の細部はちびキャラのままにするより変容しがちなようですね。
・どういうLoRAにするかでデータセットが決まる
さて、今回作るLoRAをどういうLoRAにするかを考えなくてはなりません。常に最初の画像と同じ、和装のちびキャラとして出てくるLoRAなら、chibi,kimono,full bodyで良いですが、8頭身や別の服装でも出せるようにしたいなら、数枚はそうしたバリエーションを入れたくなります。
今回は簡単な、「常に和装のちびキャラで出る」WAI NSFW v14用LoRAを作るところから始めてみることにしましょう。つまり、full bodyの画像のみで、顔などのアップにはせず、他の衣装も含めません。ただ、ポーズや表情、画角の変化はきちんとできるようにします。
ランダムだとやはり背面は着物としておかしな感じになってしまいますね。基本は正面と横からのアングルのみでランダム大量生成しておき、背面は自分で作り込んだ方がよさそうです。
・NovelAIの料金体系を再確認
さて、データセット用のランダム生成にはそれなりにAnlasを消費しそうなので、サブスクリプション料金の仕組みを確認しておきます。Opusプランは月25ドル(約3,814円)で、月に10000Anlasがチャージされます。
ただ、無償になるのは「1枚の生成」「画像入力(i2iやキャラ参照)しない」「通常サイズ」「ステップ数28以下」が条件。キャラ参照すると普通サイズでも5Anlas消費しますし、4枚生成だと80Anlas消費します。バンバン4枚生成していると、毎月与えられる1万Anlasが500枚で溶ける計算になります。
https://docs.novelai.net/ja/subscription
少しややこしいのが、「サブスク(定期購入)Anlasは購入した有償Anlasより先に消費する」「サブスクAnlasは毎月1万Anlasを上限に減った分"補充"されるだけで、毎月1万Anlas付与されるわけではない」というルールです。例えばOpusプラン加入時、ある月に100Anlasしか使わなかった場合、次の月にチャージされるのは100Anlasだけで、9900Anlas損することになります。つまり、何もせず毎月放置しておいたらAnlasの残高が1万、2万、3万…と増えていくことはありません。「サブスク分はちょうど1カ月で使い切らないと損」と覚えておきましょう。
・サブスクAnlasを使い切れなかったときは
サブスクAnlasを1カ月で使い切れなかったときは、そのまま更新せずに、いったんプランを解約する手があります。左上の「+」ボタンからAnlas追加購入画面に移動すると、現在所持しているサブスクAnlas(左)と有償Anlas(右)の残額を確認できるので、定期購入Anlasを使い切ってからまたサブスク加入することで、費用を節約することができます。
サブスクAnlasがなくなってしまい、有償で追加購入する場合は上記のレートとなります。(※2026/04/15現在の価格です)
1万Anlas=13.99ドル=2,224円。普通サイズを4枚同時生成すると51Anlasかかるので、2224円で1万Anlas=約200回=800枚生成できる計算です。有償Anlasだけで生成するなら1枚あたり2.78円ですね。もちろん、普通サイズ1枚生成だけなら5Anlasで済むので1万Anlas=2224円=2000枚となり、1枚1.12円になります。
NovelAIをどれくらい月に使うかは人によって全く事情が異なりますし、Opusプランなら普通サイズの1枚生成が0Anlasになりますので、状況によって1生成当たりの値段が大きく変わることも覚えておきましょう。
7.構築したデータセット
背面(from behind)の画像はさほど多くいらないことから、実際のデータセット準備には以下のようなランダムプロンプトを用いて4枚生成を繰り返しました。画角は前と横からのみで、全てfull bodyになるプロンプトです。
PP:1girl,solo,chibi only,deformed,kimono,long hair,hakama,full body,||sitting|standing|dancing|walking|jumping|lying,on back||,||smile|angry|sad|expressionless|surprised|embarrassed|seductive|disgust|happy||,from side|straight on||,||looking at viewer|looking away|looking ahead||,white background
やってみると分かったのは、ランダムプロンプトで大量生成するのはせいぜい4枚×3~4回程度でよく、あとはそれで足りないものを1枚ずつオーダーメイド(ランダムプロンプト不使用)で生成していったほうが効率がずっとよいということです。具体的には、真横からの画像や背後からの画像、どうしても入れたい表情やポーズ、服装といったものですね。
少し難しかったのはサイドと背面です。単独で「from behind」や「from side」で出すと一貫性が落ちてしまうことが多かったので、以下のようなものをreference sheetで何枚も出して、横からと背後からのカットを切り出しました。かんざしの本数、ぶらさがっている玉の位置や数、着物の背後がどうなっているかなどが難しいポイントですね。
PP:1girl,solo,chibi only,deformed,kimono,long hair,hakama,full body,reference sheet,standing,from side,from behind,straight-on
目を閉じている画像がなかったので、「sleeping,closed eyes,lying」や「closed eyes,happy,smile」などを加えて、データセットの画像は完成です。ちびキャラでない場合は、もっと顔のアップやcowboy shotなども入れて充実させましょう。(※今回はテストですので多少サボりましたが、より精度の高いLoRAを作る場合はかんざしの本数やついている玉の位置や数をきちんと厳選や加筆でそろえる必要があります)
続いて、これらの画像にタギングを施していきます。
8.タギング
いつもの通り、WD1.4 taggerを使ってタギングしていきます。タギングに使うインタロゲーター(タグ抽出モデル)は「wd-EVA02-Large-v3」が好みです。インタロゲーター追加のやり方や各種設定の意味については、詳しくはこちらの記事を参照のこと。
Additional tagsにはトリガーワードとして「koyomihime」を入れました。「koyomi」だと似ているタグのキャラクターが多数いますので、"化物語"の阿良々木暦などの要素が混じらないようにこのようにしましたが、万全を期して「k0y0m1」などと暗号化するユーザーもいます。
抽出するタグのしきい値(Weight threshold)は0.28程度にすることが多いですが、誤検出が多いようなら増やしましょう。
こちらが各画像から抽出されたタグです。ちゃんとすべての画像に「koyomihime」が入っていますね。この中から、プロンプトにkoyomihimeと入れたら必ず再現してほしい要素(絶対に変更しない要素)と、誤検出らしきものを抜いていきます。
今回抜いたのは「long hair, black hair, pantyhose, geta, black pantyhose,thick eyebrows,purple eyes」です。ショートヘアにしたり金髪にしたりすることは滅多にないでしょうし、パンストは誤検出、getaはzouriの誤検出なので、zouriに統一したいところです。逆に言うと、zouriとタギングすべきものにちゃんとタギングされていないことが伺えます。また、full bodyやchibiが100%検出されていないのもやや気になります。
このように不要タグを「exclude tag(除去するタグ)」に入れて「インタロゲート」でOK。
いくつか開いてチェックしてみます。大事なのは、最初にトリガーワードが来ているかどうかと、ぱっと見て対応していないものがないか。右タグにあるものは、koyomihimeという概念にまとまらないので、よく調べる必要があります。grey backgroundは誤検出ですので、こういうものを地道にExclude tagsに入れていきます。(あまり誤検出が多いようなら、Weight thresholdを少し上げましょう)
これで、画像とタグが揃ったデータセットになりました。
おさらいですが、これらのデータを納めたフォルダは以下のような構造で保存します。
LoRA/ ←ルートフォルダ(名前はなんでもよい)
└ training/ ←学習データを入れるフォルダ(名前はなんでもよい)
└ koyomihime/ ←データセットの親フォルダ
└ 8_koyomihime/ ←ここに画像とテキストを保存
画像とテキストがある子フォルダの名前の頭には、繰り返し数を示す半角数字と「_」を必ず入れます。ここでは何も考えず、「用意した画像が20枚くらいなら10」「50枚くらいなら4」としておいてください。かけ合わせたら200になる数字を入れるので、25枚ある今回は8_koyomihimeとしました。
画像はいつも通り、縮小革命で短辺が1024pxになるよう揃えておきます。今回はNovelAIの「普通」(832x1216px)で用意したので、短辺1024pxには少しサイズが足りませんが、「画像の拡大はしない」にチェックが入っていなければ拡大して揃えてくれます。
9.学習開始
OneTrainerやKohya ssなど、学習ツールは皆様お好みのものをお使いください。ここでは、いつもの「Kohya lora param gui」を使って学習していきます。設定はいくらでも考え方があり好みなのですが、最近私はオプティマイザ「Adafactor」を使うことが多いです。Kohya lora param guiではオプティマイザ一覧からオミットされてしまったので、このように「カスタム」を選びます。
こちらの「カスタムオプティマイザ」から「Adafactor」を選びます。さらに、下のoptimizer argsに以下の文字列を記入します。
"scale_parameter=False" "relative_step=False" "warmup_init=False"
これは、これから指定する学習率(UNet 5e-4 / TE 5e-5)と外部スケジューラ(cosine with restarts)を、そのまま効かせるための設定です。
「詳細設定」欄はこのような感じ。画像の最小・最大バケット解像度は1024~2048pxにしています。UnetとTextEncoder(TE)は両方学習する設定で、Unetの学習率は0.0005、TEはその10分の1の0.00005です。
その他設定は最初の画像の通り。細かい衣装まで覚えてほしいので、dim32/alpha16。バッチサイズは速度重視なら2ですが、VRAM容量と相談して決めるのがよいです。LoRAの名前はベースモデルとトリガーワードが分かりやすいよう「koyomihime_wai14_v1」としました。キャプションはシャッフルしますが、保持数を「1」にして、koyomihimeが常に最初に来るようにします(こうすることでトリガーワードになります)。
かなりはしょって説明していますので、各設定の意味や狙いは詳しくはこちらの記事などを参考にしてください。
どんなLoRAにしたいか、データセットは何枚か、どのオプティマイザを使うかによってさまざまな設定が考えられるので、この設定が正解というものではありませんが、データセット数十枚のキャラLoRAならだいたいこれでうまくいく体感があります。収束の早いオプティマイザ「CAME」を使うと15分程度でもできるので、時間の余裕にもよりますね。
学習開始。残り1時間と表示されますが、実際はもうちょっと早いです。
10.LoRAテスト生成
できたLoRAでテスト生成をしてみます。プロンプトは「1girl,koyomihime」+クォリティタグのみで、XYZ plotで比較したものが以下の通り。一番上はLoRA適用なしで、下に行くほど強度が強くなります。
良い感じですね。特に細かい容姿タグなしでも、トリガーワードだけでかなりコヨミちゃん(仮)の特徴を覚えられています。ただ、「chibi」などのタグがないので、やや普通の頭身になっていますし、ギザ歯などの細かい特徴は再現しきれていません。
容姿や衣装の特徴を足してみるとどうなるか試します。タグはさきほどデータセットを作るときに抽出したテキストから流用できますね。
PP:1girl, koyomihime, solo, japanese clothes, chibi, full body, standing, long sleeves,sharp teeth, zouri, bags under eyes,very long hair, kimono, hair ornament, hakama, brown footwear, wide sleeves, v-shaped eyebrows, skirt, hakama skirt, earrings +クォリティタグ
おおむねデータセットの容姿が再現できました。強度は0.8くらいがよさそうですね。
いくつか衣装や表情、ポーズのバリエーションを出してみて、プロンプトの応答性を試します。
・ツンデレポーズ
PP:【LoRA強度0.8】1girl, koyomihime, solo, japanese clothes,embarrassed,blush,averting eyes,hand in hair,hand on hip, hair bun,chibi, full body, standing, long sleeves,sharp teeth, zouri, bags under eyes,very long hair, kimono, hair ornament, hakama, brown footwear, wide sleeves, v-shaped eyebrows, skirt, hakama skirt, earrings, white background, simple background
・セーラー服
PP:【LoRA強度0.5】1girl, koyomihime, solo,serafuku,pleated skirt,waving hand,happy,closed eyes, hair bun,chibi, full body, sharp teeth, bags under eyes,very long hair, hair ornament, earrings, white background, simple background
NP:kimono,hakama,zouri,japanese clothes,
LoRA強度0.8では着替えられず、0.5まで下げたところ下図のようになりました。
やはりデータセットに別衣装を入れなかったので、強烈にこの服装を学習してしまっていますね。着替えたい場合は他の衣装もデータセットに入れましょう。
▲髪型などうまく再現できず
・裸シーツでベッド(8頭身)
PP:【LoRA強度0.8】1girl, koyomihime, solo,naked sheet,on bed,lying,embarrassed,hair bun, sharp teeth, bags under eyes,very long hair, hair ornament, earrings
NP:kimono,hakama,zouri,japanese clothes,
chibiだとムリそうなので、8頭身バージョンです。着替えは無理でも、脱ぐくらいならできましたね。
ざっと「キャラ参照」LoRAが実際に作れるかを試してみましたが、問題なく作れるようです。キャラ参照時に「絵柄参照」をオフにして画風を維持しなければ、一枚一枚「画風の異なる同キャラ」データセットにすることができます。
▲同キャラだが画風をランダム化させたもの
今回はどんなときも「ちび・ギザ歯画風」のコヨミちゃんになるように作りましたが、絵柄参照オフでデータセットを作ることで、自分のローカルモデルの画風に影響が少ないキャラLoRAにすることも可能だと思います。
終わりに
というわけで、かなり今回も長くなりましたが、NovelAIの「キャラ参照」大特集でした。
全体的に振り返ってみて、やはり1枚絵だけでそのキャラを好き放題出来てしまうのは強すぎますね。絵柄の再現力や一貫性保持力だけなら、正直NanoBananaを超えていると感じます。Seedream4よりは下かもしれませんが、NSFW・商用利用・学習可能&danbooru由来のプロンプト応答力という強力な武器があり、一躍ツールとして使えるレベルに躍り出た感じがします。
しかもこれでまだ正式版ではなく、インペイントやポーションとの併用が今後可能になるのだとすれば、完全にNovelAI復権と言えそうです。規約的にもNSFW&LoRA学習が妨げられないので、大変広範な用途に使えそうですね。特に期待できるのが、EasyWan22との組みあわせ。NSFW画像でスタート・エンド画像を作れるわけですから、よりH動画クリップを生成しやすくなりそうです。
1枚絵さえあればいろんなポーズを量産できるので、Freepikは高くてちょっと…というNovelAIユーザーにとっては福音そのものですね。漫画でもSora2でも、色んな応用ができると思います!
最後にコヨミちゃんにあいさつしてもらったところで、今回はこのへんで。スタジオ真榊でした。
Attachments (68)

oNu7mfKIuVDfIYDDXFqR6cqh.jpeg

jJ217cZfzHDWyP7xCbtwzGrY.png

haw7LH2ADS8ZUnupJyYSHk9T.png

60CrGKpyqTiOdkRtBPVQ0xQk.png

QhYWgpHguY5P235GYnXM4kcn.jpeg

RCgM3rbUKylj2733vHsiSxF5.jpeg

FcQSkPcYQ7JWpjSUEwzT2IXi.jpeg

CzvGDmXvGepJpUpTbGScSWEN.jpeg

mLGANPjgdBPWbIUKXhU3ypTX.jpeg

hpuQExBMYzcVb6jj4987KocY.jpeg

LzIUdAsocHCkSpZv8B8rfVdT.jpeg

YJkSeOhtveuBkApjuYsABkMq.jpeg

2NxKfqjzSBSIfJfNtxvyr5Rt.jpeg

m3TG309tLlLz2jTYHb9XeEy7.jpeg

rcFdWkdDbZy1Xeq5udUfi4Be.jpeg

nV2xk5s4GWCxdKI6cF2wMuE4.jpeg

vV86gYFiPr0bCaaw6GfV9zss.jpeg

oOB41LNB7h0tBkz1CzYh93zt.jpeg

1HbNtTu8NYwWrIcc8Taij7m4.jpeg

h0fIKnYbnRXmxBIJ2LEttYuS.png

a0UobNFdLZBDYWLRWpHx9SYj.jpeg

oyQQNiDIgqqHTZyhAyZ1eJFe.jpeg

yvLIwsN9npx0cOV4uFme5MNT.png

1IZSijdLOlxJmF2FdsDjB88r.png

2pWcbLpG6JG5n4C0JyABRJjS.png

uyp8NbJWrZSYTx6KC9vIjFbU.png

hXtLMIQR1ZbsWxPNkABNbh6O.jpeg

cq3Uplg6JwaL8txXHwR6HNNq.jpeg

1pzHpmJ6FwUTgoCaB0wJHPhQ.jpeg

zGwQLVuu4N9xeVnPLEPI9ZKw.png

DOG9rGEatn2bjcoo6CBQ7Ilv.png

IlJb1kLagamH8O16FCiX5JjW.png

3kw8adu09l45WzUIy7jzsPJK.png

wh0sECRE88IATfbfrWGyfOis.png

b9uEq9ZDjO3GGlvfv6u3Op2J.png

WpL3KeNZ7NOuNV8n4BY9fo6W.png

FUAAI5yVVAkbXoXKBWjOFmh3.png

WRyC47gORPpiaYpRjpvoElKz.png

VJMauMmrTfmbKUhf7hMvmAc2.png

f0s1v8AAxnZySxUmcoWHxizb.png

JAxKBWEiVeVsvOUz19NgJ6Jf.png

DAzG4w4nzAOya9UXBkjY4NQq.png

UPiXeRKPNkUjHFGCHDtME9Gq.png

2kgNKZIR9JVGIozi5ULvqJ6X.png

BiQMCM4rf0zEFlmIDEXTrkZr.png

azp6k3sDwQK0V51K9T89zQBs.png

GevKIVX3lXdl3W6JnAfH5snv.png

7dPXkBCmz7gj3zOceIPL5Tre.png

Vnq2lK2cNTpsKJ94HQrEe3l4.png

S5Cbpxv3YGb8NulRScgJEDRi.png

6EDEWYCQGJU2ga25W6cpuxWw.png

P0HCZHPD5OLw4casTBo8tRwk.png

ftnwxVVRjHJAZ8Si2P3WuTYt.png

gY0OTgHRcZK28RmHj6T7IZWk.png

KwXfMsMp3LHYJtRgwar5zaq2.png

2d5AAwhpS7ogzlKKhauiqHje.png

w75gilSG2gu5g5kWz8tA981R.png

QftUMlNUIEJnb6FhnQi0IWIk.png

eTzV5sDyTA751WoOwzohhgls.png

Uxptkrn9AVz3nw7WCKVeY9JY.png

A1D6sFDsIhyZGrX42AB5qGV2.png

q5a6KWZm8FLCf6z4Ywoh4CFu.png

RKQyZs51DVATnHP2m2hvow0b.png

6WPzA9uOh3l60nlrTCDWeSqI.png

MqBO2M8CoVnqKjkTax7GbaMF.png

phsjRBTLAaRXkFLRrtNyo7fN.png

Hw4aItcEzlE4X6vdgzAbFXL3.png
20251011_0227_01k77jh7y4fa8v3z2akr4bvdte.mp4
