Stable Diffusion Web UIでのNovelAIの再現

2022年10月10日

AUTOMATIC1111/stable-diffusion-webui でNovelAIの再現をする方法

環境

とりあえず自分の実行環境

必要なファイル

  • animefull-final-pruned/model.ckpt
  • animevae.pt

ファイルはstable-diffusion-webui/models/Stable-diffusion/

これらのファイルの入手方法は書きません、自分で4chanを漁ってください

実は要らないファイル

  • config.yaml
  • modules/*

要るとか書いてることが多いけど最低限再現するだけなら要らない

50GBあるtorrentは全てダウンロードする必要は無い

hypernetworkも必須では無い

再現方法

  • webui-user.batを起動させる
  • Settingsタブもしくは上部にあるstable Diffusion->Stable Diffusion checkpointanimefull-final-pruned.ckptに変更
  • SettingsタブのStable Diffusion->Ignore last layers of CLIP modelを2に変更
  • 解像度をNovelAIと同じにする
  • Steps数を同じにする(NovelAIではSteps, WebUIではSampling Stepsと表記されている)
  • サンプリング方法を同じにする(NovelAIではAdvanced: Sampling, WebUIではSampling methodと表記)
    • k_euler_ancestral -> Euler a
    • k_euler -> Euler
    • k_lms -> LMS
    • plms -> PLMS
    • ddim -> DDIM
  • Euler a を使用する場合はSampler parameters->eta (noise multiplier) for ancestral samplers を 0.67 にする
  • CFGを同じにする(NovelAIではScale, WebUIではCFG Scaleと表記)
  • シードを同じにする(NovelAIでは生成した写真の左下の表記されている数字)
  • PromptのTokenサイズを75以下にする(要するに単語数)
  • NovelAIでAdd Quality Tagsが有効ならPromptの先頭に以下の文字を追加する(最後半角スペース)
    masterpiece, best quality,
  • NovelAIのUndesired ContentLow Quality + Bad Anatomyなら以下の文字をNegative promptに入力する
    lowres, bad anatomy, bad hands, text, error, missing fingers, extra digit, fewer digits, cropped, worst quality, low quality, normal quality, jpeg artifacts, signature, watermark, username, blurry, artist name

lowvramxformers などを使うと最適化の影響で微妙に出力が違うらしい

出典

まぁこれ読んだ方が早い