1. HOME»
  2. AI»
  3. AI画像生成»
  4. LyCORISの使い方。Stable Diffusion web UIで動かす方法(Colabにも対応)

LyCORISの使い方。Stable Diffusion web UIで動かす方法(Colabにも対応)

今回は、Stable Diffusion web UIで、LyCORISを使う方法を紹介します。

※2023/05/30追加
LyCORISの使い方が変わったようです。
コメントにて教えていただきました。ありがとうございます。

記事の方も、新しい方法に更新しました。

目次
  1. LyCORISについて
  2. LyCORISの入手方法
  3. LyCORISを使うための準備
  4. LyCORISを使って画像生成してみよう
  5. まとめ

LyCORISについて

LyCORIS(Lora beYond Conventional methods, Other Rank adaptation Implementations for Stable diffusion.)は、LoRAのように、ほかのモデルに対して追加学習を行なうことができます。

LyCORISでは、AIコスプレイヤーのような画像、そのモデルの絵柄で描いたアニメキャラの画像、などを生成することができます。

たとえば、「ウマ娘 プリティーダービー」の「ミホノブルボン」のLyCORIS(https://civitai.com/models/8940/mihono-bourbon-umamusume)を実写系のモデルで使った場合は、次のようになります。

LyCORISの入手方法

LyCORISのモデルファイルは、CIVITAI(https://civitai.com/)などからダウンロードできます。

CIVITAIの漏瑚じょうごマークをクリックし、「LyCORIS」を選択します。
これで、表示をLyCORISのみに絞り込むことができます。

LyCORISを使うための準備

では、LyCORISを使う準備をしてみましょう。
「Stable Diffusion web UI」で「LyCORIS」を使うには、「a1111-sd-webui-lycoris」という拡張機能を使います。

a1111-sd-webui-lycoris:https://github.com/KohakuBlueleaf/a1111-sd-webui-lycoris

また、今回はベースのモデルとして「Chilloutmix」、LyCORISに「Mihono Bourbon (umamusume)」を使おうと思います。ここは、好みのものをお使いください。

Google Colab上の「Stable Diffusion web UI」で、LyCORISを使う場合

もし、Google Colab上のStable Diffusion web UIでLyCORISを使うのでしたら、次のコードを実行します。

!git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
%cd /content/stable-diffusion-webui/extensions/
!git clone https://github.com/KohakuBlueleaf/a1111-sd-webui-lycoris.git

%mkdir -p /content/stable-diffusion-webui/models/LyCORIS/
!wget https://civitai.com/api/download/models/11745 -O /content/stable-diffusion-webui/models/Stable-diffusion/Chilloutmix-Ni-pruned-fp32-fix.safetensors
!wget https://civitai.com/api/download/models/23083 -O /content/stable-diffusion-webui/models/LyCORIS/mihonoBourbon_loha.safetensors

%cd /content/stable-diffusion-webui/
!python launch.py --share --xformers --enable-insecure-extension-access

(※2023/06/26 エラーが発生するようになってしまったので、コードを更新しました)

しばらく待って、Running on public URLというのが表示されたら、その後ろのリンクを開きます。

また、Google ColabでStable Diffusion web UIを使う方法について、くわしく知りたい場合はこちらをご覧ください。

ローカルの「Stable Diffusion web UI」で、LyCORISを使う場合

ローカルの「Stable Diffusion web UI」でLyCORISを使う場合、「Stable Diffusion web UI」の画面から設定できます。
(Colabを使った場合でもこの方法は使えますが、「Stable Diffusion web UI」を起動するたびに設定しなくてはならないので、おすすめはできません)

では、「Stable Diffusion web UI」でLyCORISを使うために、拡張機能「a1111-sd-webui-lycoris」をインストールしてみましょう。

「Extensions」→「Install from URL」と選択し、以下のURLを「URL for extension’s git repository」に貼り付けます。

https://github.com/KohakuBlueleaf/a1111-sd-webui-lycoris

「Install」をクリックすると、installed into xxxxxx. Use Installed tab to restart.と表示されます。

さらに、「Installed」タブを選択し、「Apply and restart UI」をクリックすることで、拡張機能が適用されます。

また、さきほど紹介したモデルも、「models」フォルダの中に「LyCORIS」というフォルダを作成して、そこに配置します。

stable-diffusion-webui/
|-- models/
|   |-- LyCORIS/
|   |   `-- mihonoBourbon_loha.safetensors
|   |-- Stable-diffusion/
|   |   `-- Chilloutmix-Ni-pruned-fp32-fix.safetensors
|   `-- ...省略...
`-- ...省略...

ここでもう一度、Stable Diffusion web UIを実行しなおしておきましょう。
私の環境では、実行しなおさないと、extra networksを開いたとき、LyCORISをうまく読み込むことができませんでした。

LyCORISを使って画像生成してみよう

では、LyCORISを使って、実際に画像生成してみましょう。
Stable Diffusion web UI上で、LyCORISを使う方法を、これから紹介していこうと思います。

LyCORISを使うのに、まずTrigger Wordsというものが必要です。
Trigger Wordsは、LyCORISのダウンロードページに書かれています。

たとえば、今回使いたいLyCORISの「Mihono Bourbon (umamusume)」では、「mihono bourbon \(umamusume\)」というのが、Trigger Wordsになっています。

Trigger Wordsをクリックすることで、コピーできます。

コピーしたTrigger Wordsは、プロンプトに入力しましょう。

さらに、①Generateの下のextra networksのアイコンをクリックして、②LyCORISを選択します。
③使いたいLyCORISのファイルをクリックすると、④プロンプトに画像のように追加されます。

また、lyco:mihonoBourbon_loha:の後ろの数値は、どのくらい適用するかの数値(重み)です。
この数値が大きすぎても、いいイラストが生成できないので、微妙な調節が必要になります。

これも含めてさまざまな設定がありますが、たいていはLyCORISのダウンロードページに、どんな設定にするといいのかが書かれていると思います。

まとめ

今回はStable Diffusion web UI上でLyCORISを使う方法を紹介しました。

LyCORISをつかうことで、LoRAのようにモデルに追加学習をすることができ、Stable Diffusion web UI上で使うには、拡張機能「a1111-sd-webui-locon」が必要になります。

いくつか設定が必要ですが、どんなふうに設定すればいいのかは、おそらくLyCORISのダウンロードページに書かれています。

8件のコメント 「LyCORISの使い方。Stable Diffusion web UIで動かす方法(Colabにも対応)」

  1. 横から失礼します。
    同様のエラーについてローカル版Stable Diffusionでも発生しています。

    それについて
    https://github.com/KohakuBlueleaf/a1111-sd-webui-locon
    にて5/24時点でREADME.mdが更新されています。

    https://github.com/KohakuBlueleaf/a1111-sd-webui-locon/issues/40
    同様のエラーについても5/21時点でここで挙げられています。

    上記2つによると、a1111-sd-webui-loconはもう使わないで(意訳)とのことで
    a1111-sd-webui-lycoris等使ってくれ(意訳)とのことです。

    1. >わさわささん
      コメントありがとうございます。
      README.mdが更新されていたこと、知りませんでした。
      情報を提供いただき、ありがとうございました。とても助かりました。

      この記事も、a1111-sd-webui-lycorisを使う方法に修正させていただきました。

      ぜひ、またよろしくお願いします。

  2. ご丁寧に回答大変ありがとうございました。
    新たにご提示頂いたコードにて一時は使用できたのですが、
    先ほど、「このエラーメッセージは、PyTorchとtorchvisionが異なるCUDAバージョンでコンパイルされていることを示しています。PyTorchはCUDAバージョン11.8でコンパイルされており、torchvisionはCUDAバージョン11.7でコンパイルされています。このような場合、PyTorchと一致するバージョンのtorchvisionを再インストールする必要があります。」
    というようなエラーが出まして、、
    再び使用できなくなってしまいました。
    一致させる事ってできるでしょうか?

    たびたびスミマセン。

    1. >むんくさん
      コメントありがとうございます。
      対応が遅れてしまい、申し訳ありません。

      この記事のコメントで、わさわささんから教えていただいたのですが、a1111-sd-webui-loconは非推奨になったようで、かわりにa1111-sd-webui-lycorisを使う必要があるようです。

      記事の方も、a1111-sd-webui-lycorisを使う方法に修正させていただきましたので、お手数ですが、もう一度お試しください。

      またよろしくお願いします。

  3. いつも大変参考にさせて頂いております。
    質問させて下さい。

    「Google Colab上の「Stable Diffusion web UI」で、LyCORISを使う場合」を参考にして使用しようとしたのですが、このようなエラーが出ました。
    「locon load lora method
    loading Lora /content/stable-diffusion-webui/models/Lora/mihonoBourbon_loha.safetensors: AttributeError
    Traceback (most recent call last):
    File “/content/stable-diffusion-webui/extensions/a1111-sd-webui-locon/scripts/../../../extensions-builtin/Lora/lora.py”, line 222, in load_loras
    lora = load_lora(name, lora_on_disk.filename)
    File “/content/stable-diffusion-webui/extensions/a1111-sd-webui-locon/scripts/main.py”, line 371, in load_lora
    lora.mtime = os.path.getmtime(lora_on_disk.filename)
    AttributeError: ‘str’ object has no attribute ‘filename’」

    こちらをchatGPTで調べたら➡「このエラーは、locon load lora methodコマンドを実行した際に発生したエラーです。以下はエラーメッセージの詳細です。

    load_loras関数の222行目でエラーが発生しています。
    load_loras関数は、nameとlora_on_disk.filenameの2つの引数を使ってload_lora関数を呼び出しています。
    load_lora関数の中で、lora_on_disk.filenameという属性にアクセスしようとしています。
    しかし、lora_on_diskは文字列(’str’オブジェクト)であり、文字列オブジェクトにはfilenameという属性が存在しないため、エラーが発生しています。
    このエラーは、lora_on_diskがファイルオブジェクトではなく、ファイルのパスを文字列として参照していることを示しています。lora_on_diskをファイルオブジェクトに変換する必要があります。」
    と言われました。
    原因はcivitaiなのか、コードが間違っているか分からないためご質問させて頂きました。
    長文失礼しました。

    1. >むんくさん
      コメントありがとうございます。

      大変申し訳ございません。私の確認不足で、記事のコードをコピペして実行しても、エラーが表示され、うまく画像生成ができない状態でした。
      記事のコードを修正しましたので、もう一度コピペしてお試しいただけると幸いです。

      よくStable Diffusion web UIの画面で、エラーが発生してしまい、画像が生成できないときがありますが、そのときは、もう一度Colabの画面でコードを実行しなおしてみてください。

      またよろしくお願いします。

It is R へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 が付いている欄は必須項目です




オリジナルゲーム.com