184

投稿日

更新日

リークされたNovelAIのデータでローカル実行してみた

更新

  • 2022/10/17
    設定に間違いがあったので修正しました。
    コメントくださった方ありがとうございます。

ある程度知識ある人向け
わかんないことはググって
(まあそういう人らは自分でやってそうだけどね

自己責任でどうぞ

細かいことは知らん
これでPCが爆発しようがウイルスに感染しようが怖い人が来ようが世界から消されようが私の知るところではない

そもそも

NovelAIDiffusionだろうがWaifuDiffusionだろうが元はStableDiffusionってOSSのAIモデル。
その中でもNovelAIは独自に改良と賛否両論な例の学習データを駆使してずば抜けた精度を発揮した
んで先日この独自のデータが見事に漏洩。5chはお祭り騒ぎだったね。。

NovelAIがどんな改善を加えて高精度なイラスト生成をしているのかについては下記
https://gigazine.net/news/20221011-novelai-model-improvements-stable-diffusion/

環境構築

ツールの細かい話はしない
そういうのは他で調べてくれ。
あと事前にCUDAとかcuDNNとか入れといてくれ。え、NVIDIA製のグラボないって? あきらめろん。
あ、Pythonとか必要かも(Anacondaでも多分おkだけど私あの子嫌い。3.10.xで動いてるからそれでおk)
予め入れといてくれ
StableDiffusionが動く環境になればいいからそのへん参考にツールいれてくれい。

あとVSCodeあったほうがR18避けするときソース検索し易いから便利かも

Stable Diffusion WebUI

AIを実際に動かすソフト。
これに必要なものを追加する感じ。

元はStableDiffusionをUIで使いやすくしたものだったのだけれど
開発者が爆速で更新して爆速でリークされたNAIの対応もするもんだからやばいのなんの

Stable Diffusion WebUIをDLする

git cloneでもいいしZIPでDLでもおk

起動ファイルの中身を書き換える

※起動はするな。リポジトリ取り直すところからやり直す羽目になる。
stable-diffusion-webuiディレクトリ直下にあるwebui-user.batを右クリックして編集(メモ帳でおk)
image.png

最終行のところに--xformersって書き足す (←頭悪すぎかよ自分)
set COMMANDLINE_ARGS--xformersを書き足す
image.png

保存して終了。

GFPGAN

GFPGANをGitHubからダウンロードして、./models/GFPGANフォルダに入れる
(READMEのUpdateのv1.4てやつDLしてぶちこんだ)
image.png
image.png

リークされたNovelAIのデータ

貼らない方がいいかと思ったけど5chにもまとめにも乗ってたし今更だよな
torrentだからDLできないとかウイルスでしたーとかでもワシしらんから

頑張ってDLする

マグネットリンク貼っとくけど自己責任で

magnet:?xt=urn:btih:5bde442da86265b670a3e5ea3163afad2c6f8ecc&dn=novelaileak&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=udp%3A%2F%2F9.rarbg.com%3A2810%2Fannounce&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A6969%2Fannounce&tr=http%3A%2F%2Ftracker.openbittorrent.com%3A80%2Fannounce&tr=udp%3A%2F%2Fopentracker.i2p.rocks%3A6969%2Fannounce

マグネットリンクってなに←ggrks
Torrentって何?←ggrks
50GBもあるの?!← Nur○勢がんば

中のファイルをStable Diffusion WebUIにコピー

容量クソデカだけどコピーのほうがいいと思う
万が一なにかミスってDLし直しとか笑えるからな。。

  1. novelaileak\stableckpt\animefull-final-prunedのフォルダ下にあるmodel.ckptstable-diffusion-webui/models/Stable-diffusionにコピー
    image.png

  2. 1でコピーしたファイルをfinal-pruned.ckptにリネーム

  3. novelaileak\stableckptにあるanimevae.ptを2と同じ場所にコピー
    image.png

  4. 3でコピーしたファイルをfinal-pruned.vae.ptにリネーム

  5. ここまででstable-diffusion-webui/models/Stable-diffusionの中身は下記になってると思われ
    image.png

  6. stable-diffusion-webui\models下にhypernetworksってディレクトリを作成
    image.png

  7. novelaileak\stableckpt\modules\modulesにあるファイルすべてを6で作成したディレクトリにコピーする
    hypernetworks下はこんな感じimage.png

これでおっけい

R18フィルタ避け

せっかくローカルで実行するんだもの。
※デフォルトでフィルタ無効らしいので対応不要

VSCodeでプロジェクトルートから開いて、check_safetyを検索
バージョンによりけりだけど多分2ファイルくらいHitするので、各コードを書き換える。

./modules/safety.py
image.png
x_checked_image, has_nsfw_concept = check_safety(x_samples_ddim_numpy)

x_checked_image = x_samples_ddim_numpy
って書き換える。

./repositories/stable-diffusion/script/txt2img.pyも同様に書き換える
image.png

多分これでおk

起動

stable-diffusion-webuiディレクトリ直下にあるwebui-user.batをダブルクリックで実行する。

初回起動は色々インスコするので時間かかるけれど、適当に待ってれば
Running on local URL: http://127.0.0.1:7860
って出るので、ブラウザで http://127.0.0.1:7860 にアクセス。

動作確認

  • TOP画面かSetting画面にStable Diffusion checkpointってのがあるのでプルダウンから選ぶ
    image.png

  • Setting画面の下の方にStop At last layers of CLIP modelってあるので2にする
    image.png

あとは下記で設定して

masterpiece, best quality, masterpiece, asuka langley sitting cross legged on a chair 
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
// Steps: 28, Sampler: Euler, CFG scale: 12, Seed: 2870305590

image.png
こんな感じのアスカっぽい子が出ればOK

その他

StableDiffusionWebUIの使い方はGIGAZINEが紹介してるのでそっち見たほうがわかりやすい
https://gigazine.net/news/20220914-automatic1111-stable-diffusion-webui-img2img-outpainting/
https://gigazine.net/news/20220909-automatic1111-stable-diffusion-webui-how-to-use/
(他にもGIGAZINEが使い方紹介してる記事あるのでggr

参考

https://github.com/AUTOMATIC1111/stable-diffusion-webui/discussions/2017
https://mevius.5ch.net/test/read.cgi/cg/1664695948/825

新規登録して、もっと便利にQiitaを使ってみよう

  1. あなたにマッチした記事をお届けします
  2. 便利な情報をあとで効率的に読み返せます
ログインすると使える機能について
184