【AIでキャラ生成】Waifu Diffusionの導入~使い方

スポンサーリンク

2023年1月追記、アップデート情報

前回の記事作成からアップデートがあり、情報が大きく変わりました。
なので、追記という形でまとめます。

動作確認はv1.4のHugging Faceページで出来るようになりました。

hakurei/waifu-diffusion · Hugging Face
We’re on a journey to advance and democratize artificial intelligence through open source and open science.

こちらにアクセス → Hosted inference APIの所に文字を入力して実行。
これで画像が出てきます。
※たまに、エラーになる事があるようです。

黒くなった場合はエッチなのでアウトという判定がされてます。
えっち判定はかなりシビアです。
普通の絵をかかせても、アウトになり、ほぼWEBでは使えません。

そこで、ローカルで動かす必要が出てきます。

v1.4を動かす

v1.4は扱いが簡単なNMDKでは動きません。(なぜか、エラーが出ます)
そこで、扱いが難しいですが… 「SD – WEB UI」を使う必要が出てきます。

WEB UIの使い方はこちらで解説。
※WEBという名前ですが、ローカル環境でPythonを入れて動かすツールです。

こちらを使う場合はこのページにアクセス
こちらよりwd-1-4-anime_el2.ckptなどをDLしてください。

hakurei/waifu-diffusion-v1-4 at main
We’re on a journey to advance and democratize artificial intelligence through open source and open science.
※e2やe1はおそらくepochの略。
 これは、学習データを何周学習させたかという意味。
 多ければいいというモノではありません。
 学習が多すぎると過学習で上手く生成されなくなる事があります。

v1.3を動かす

v1.3は比較的簡単で使いやすいNMDKで動きます。
この記事でACretainThingというモデルを使い、NMDKの使い方を解説してます。

この、モデルの部分をwaifu-diffusionのモデルに差し替えて実行すれば動きます。

waifu-diffusionのモデルはv1.3ページで取得できます。
こちらのページにアクセス。

hakurei/waifu-diffusion-v1-3 · Hugging Face
We’re on a journey to advance and democratize artificial intelligence through open source and open science.

File and versionsを選択。

ここで好きな.ckptを選びます。
基本はfullと書かれたものを選びます。

epochとは、学習データを何周学習させたかという意味。
多ければいいというモノではありません。
学習が多すぎると過学習で上手く生成されなくなる事があります。

選んだモデルはここのDownloadよりDLできます。
まずは、epoch05から始めてみて、慣れて来たら他の物を試してください。

あとは、NMDK Stable Diffusionなどで動かせば実行できます。

それでも動かない場合は、16系のグラボか、そもそものグラボの性能不足です。
詳細はこちらをご覧ください。

はじめに

ここからは、アップデート前の情報の記事になります。
(2022年9月頃の情報です。)

まず簡単行えるが、生成内容に制限があるGoogle Colaboratoryでの動かし方。
次にNMKD Stable Diffusion GUIを使ったローカルで動かす方法。

⚠Waifu Diffusion引用元の注意

Waifu Diffusionは学習元に「Danbooru」を使ってるようです。
これが絵の無断転載サイトで海外で炎上したもののようです。

法的な死亡率は低そうですが、社会的な死亡率がやや高いです。
燃えたくない人や立場がある人の場合は使用の弁明を避けるか「trinart_stable_diffusion_v2」を使う事をおすすめします。

ただ、Waifu Diffusionが現状一番、顔が安定するんですよね…。

詳細は「追記:引用元の注意点」の所で解説してます。

Google Colaboratoryで動かす

こちらのページにアクセス。

hakurei/waifu-diffusion · Hugging Face
We’re on a journey to advance and democratize artificial intelligence through open source and open science.

右側のHosted inference APIの下の所で文字を入力。
「Compute」をクリックすると画像が生成されます。

ワード作成

Waifu Diffusionは学習元に「Danbooru」を使ってます。
※R-18系絵が出たり、無断転載でグレーなサイトのため、リンクは載せてません。検索しましょう。

アクセスしてTagsを見るとタグが出てきます。
バージョン1.2までは”_”で区切られたワードをそのまま入れる必要がありました。
バージョン1.3からはどちらでも大丈夫になったようです。

これはWaifu Diffusionでしか使えないテクニックになります。

Tagsの中にあるHelpを押します。

日本語に翻訳。

すると、Danbooruのタグの法則について確認できます。

◆5種類のタグ
・アーティスト:投稿の制作者(原画の制作者ではない)
・キャラクター:LastName_FirstNameの法則で記載
・著作権:版権、関連があるアニメ、漫画、ゲーム、小説など
・ジェネラル:その他の多くの全て、(メガネ、服装など)
・メタ:画像の内容以外の事(おそらくDanbooruのシステム的なモノ)

◆注意点
・かわいい、セクシーなどの主観的なタグを使用しない。
・絵以外の知識から得られるタグを使用しない。

初心者は、Danbooruにアクセス。
気に入った絵にマウスを乗せる。
ここで表示されるタグをコピーする方法がおすすめ。

これでワードの生成が完了です。

生成されにくいものについて

特徴を指定した複数のキャラクターは生成されにくいです。
2回以上の生成結果を自分でコラージュする形になります。

特殊なイラストはタグ設定しても生成されにくいです。
・img2imgなどでラフ画を指定して生成する。
・複数の生成物を自分でコラージュすることになります。

NSWFフィルターについて

先ほど「Danbooru」で得たワードをコピーして実行します。

すると、黒くなります。
NSFW、つまりエッチなのでアウトという意味です。

…しかし、Googleのエッチ判定はかなりシビアです。
このブログですらエッチと判定されます。

正直、エッチ目的でなくてもNSFWフィルター強すぎてまともに使えません。
このNSFWの壁を超えるには「NMKD Stable Diffusion GUI」が必要になります。

導入はこちらから。

NMKD Stable Diffusion GUI - AI Image Generator by N00MKRAD
Generate AI images on your own GPU for free

詳しい使い方はこちらで解説。

Waifu DiffusionのModelはこちらにアクセス。

hakurei/waifu-diffusion · Hugging Face
We’re on a journey to advance and democratize artificial intelligence through open source and open science.

下にあるOriginal PyTorch Model Download Linkを選択すると得れます。
7Gぐらいあるので注意。

GUI版での生成

モデルをWaifu Diffusionに変更します。

「Danbooru」のタグをそのままコピーして実行します。
生成枚数は20枚ぐらいで試します。

…するとSSR排出律1/30ぐらいで生成ガチャが始まります。
気に入った子ができましたら完成です。

以上がWaifu Diffusionの導入~使い方になります。

追記:引用元の注意点

Waifu Diffusionは学習元に「Danbooru」を使ってるようです。
これが… 著作権的にかなり問題がある無断転載サイトです><

趣味で使う分には良いかもしれませんが…立場のある人は避けた方が良いです。

AIの著作物利用について

現在の法律では「学習のための著作物の使用はOK」とされてます。
なので、使用自体はOKです。

Danbooruが問題になる理由

Danbooruは絵の無断転載サイト。
3タグ以上の検索で課金というビジネスモデル。

AIでの著作物利用はOKですが、Waifu Diffusionを使うとその引用先。
つまり、Danbooruのようなサイトを容認してるという意思表示とみなされる可能性があります。

これが、立場のある人の場合、炎上するリスクになります。

私の考え

まず、この問題後から知りました。ごめんなさい。
英語のサイトなのでよくわかって無かったです。

個人的にはこのようなサイトはあまり好きでは無いですが…
無断転載とアウトと言われると…グーグルの画像検索も著作権的に問題あるよね、が始まります。
そして、日本では昔、検索エンジンの技術がありながら、著作権の問題で規制しGoogleに負けました。

日本ではドローンやウーバータクシーでもやらかしてますね。
過度な規制や保護は、悪い形では技術の発展を阻害し、衰退につながる可能性があると私は考えます。

そして、著作権自体シビアにやっていくと二次創作、本引用Youtuber、DJ文化など他にも火種はいっぱいあります。

なので、ブログの私は黙認という形でこの記事を残します。
が、燃えたくない人や立場がある人の場合は「trinart_stable_diffusion_v2」を使う事をおすすめします。

Youtubeの私はきっと「trinart_stable_diffusion_v2」を紹介するでしょう…( ˘ω˘ )
ただ、まだ少し性能が弱いので他のDiffusionシリーズを様子見した方が良さそうです。

おまけ:Concept機能

Conceptを使うと、画風を大きく変えることができます。
これでを使って「色々調整した人工知能」と紹介すると、Model特有のらしらが消えて、元が何なのか特定できず、燃えにくいかもしれません。

まとめ

今回はWaifu Diffusionの導入~使い方までを紹介しました。
・Google Colaboratoryで動くがエッチフィルター強すぎて使い物にならない
・GUI版を導入して、ローカルで動かすのがおすすめ
・Danbooruがタグの参照元
・Danboruのタグ作法、_を入れるなどを使う
・初心者はDanbooruで気に入った絵のタグを使うのがおすすめ

また、Kritaでの補正方法。

Stable Diffusionの基礎や生成ワードのコツ、Colaboratoryで動かす方法はこちらで解説。

ぜひ、こちらもご覧ください。

コメント

  1. test より:

    Waifu DIffusion のモデルのリンク合ってますでしょうか。
    探しても見つからず…。以下のサイトがそれっぽいです。

    https://huggingface.co/hakurei/waifu-diffusion

    • しぐにゃも より:

      間違えてColaboratoryのリンク張ってました。
      修正しました。ありがとうございます。

  2. Tim より:

    説明がわかりやすかったのでこのサイトの通り試してみたのですが、画像生成の段階でエラーが出てしまいます。
    何か対策はありますでしょうか。それとも現在は閉鎖された機能なのでしょうか。

    • しぐにゃも より:

      エラーとはどのようなエラーでしょうか?
      グラボの性能が低い場合はLow Memory Modeを有効化。
      グラボがRTX16系の場合はUse Full Precisionを有効化する必要があります。

  3. huu より:

    2時間たっても画像生成されませんでした…画像生成には普通どのくらい時間がかかるのですか?

    • しぐにゃも より:

      グラボの性能にもよりますが、1~5分ぐらいです。
      何か設定を間違ってる可能性が高そうです。

  4. Rena より:

    Waifu diffusionの画面が表示された後、キーワードを入力してRunを押すとしばらくたってから末尾にKeyError: ‘sample’と出てしまいます
    ちなみに記事に書いてあるまま、他の動作を何一つやってない状態です
    詳しくないのでどこに改善すべき点があるかわからないので変えた方がいい箇所などありましたら教えてください

    • しぐにゃも より:

      KeyError: ‘sample’は見たこと無いので分からないです。
      仕組み側に問題があるのかもしれません。
      「NMKD Stable Diffusion GUI」を使って動かした方が確実だと思うのでこちらをお試しください。

  5. 報告 より:

    おそらくなのですが、この記事通りやるとエラーになって生成されません。上記の皆さんと同じエラーが発生しています。

    • しぐにゃも より:

      ありがとうございます。
      Hugging Faceのアップデートなどで色々動かなくなってるようでした。

      「2023年1月追記、アップデート情報」にまとめたのでよろしければそちらを確認してください。

  6. ck より:

    Waifudiffusion1.3では生成ができたのですが、1.4で生成しようとすると「Failed to load model
    The model appears to be incompatible」というエラーが表示されます。
    Waifudiffusion1.4では違う操作が必要なのでしょうか?
    StableDiffusionGUIは1.8.1を使用しています。

    • しぐにゃも より:

      ありがとうございます。
      waifu-diffusionの公式ページしか見ておらず、
      v1.4ページの.ckptの存在に気づいておりませんでした。
      申し訳ないです。

      ーーーーー

      v.14ですが、NMDKだと動かないようです。
      Stable Diffusion WebUIを使うと動きました。

      https://signyamo.blog/sd_webui/

      こちらをお試しください。
      また、記事の方にもこの事を追記いたしました。

  7. レイ より:

    画像を生成しようとするとFailed to load modelというエラーが出ます
    どうしたらいいでしょうか? グラボのスペックなどは足りているはずなんですが…

    • しぐにゃも より:

      ・別のモデルをDLして導入 → ツール側に問題が無いか確認してください。
      ・もし動かない場合はAUTOMATIC1111(WEB UI)などの別ツールで動かしてください。
      ・ツールに問題が無い場合、Waifu Diffusionのバージョンを変えてみてください。

  8. レイ より:

    AUTOMATIC1111では動いたのでWaifu Diffusionのver1.9の不具合かもしれません

タイトルとURLをコピーしました