LoginSignup
8
3

はじめに

Loraを作成する方法の一つにsd-webui-train-toolsがあります。
本記事ではこちらを使用してLoraする方法を簡単に紹介します。

sd-webui-train-toolsはGitHubで公開されており、READMEに基本的な使用方法が記載されています。
中国語ですが、気になった方は確認してみてください。
https://github.com/liasece/sd-webui-train-tools

sd-webui-train-toolsのインストール

筆者は以下サイトを参考にインストールを行いました。
本記事ではインストールの説明は割愛させていただきます。
https://romptn.com/article/18453

Lora作成

Loraで追加学習可能なものは多岐にわたりますが、本記事では「キャラクター」と「風景」のLoraを取り扱います。
著作権的にネット上に存在するソースの使用は避け、自身で作成・収集した画像をもとに作成していきます。

キャラクター編

学習元の画像の準備

mimmiというキャラクターを作成しました。
この子のLoraを作ります。
image.png

30枚のイラストを作成準備しました。
image.png

Lora作成

Train Toolsタブからsd-webui-train-toolsを開き「Create Project」ボタンをクリックします。
image.png

プロジェクト名を入力して「OK」ボタンをクリックします。
image.png

同じように「Create Version」ボタンからバージョンを設定します。
image.png

以下の画面表示となるため「Upload Dataset」部分に画像をドラッグアンドドロップします。

画像の1枚ずつのアップロードができず複数画像を一度にアップロードする必要があるため注意してください。(細かいですが初回に少しつまずいたため共有でした。)

image.png

アップロードが終わると以下のように表示されます。
続いて「Update Dataset」ボタンをクリックします。パラメータはデフォルトを使用しています。
image.png

画像が取り込まれると以下のように表示されます。
image.png

続いて画面下部でパラメータを設定して「Begin Train」ボタンをクリックします。
パラメータについては学習元画像の枚数などにより適切な値が異なるため、調整が必要になります。今回は画像のように設定しました。
image.png

Lora作成には時間がかかるため、できるまで時間をつぶします。
作成が終わるとstable-diffusion-webui\extensions\sd-webui-train-tools配下にLoraが作成されていることが確認できます。

作成したLoraで画像生成

Loraをstable-diffusion-webuiの所定のディレクトリに配置後、PromptでLoraを適用して実行したところ、以下のエラーが出ました。
NansException: A tensor with all NaNs was produced in Unet. This could be either because there's not enough precision to represent the picture, or because your video card does not support half type. Try setting the "Upcast cross attention layer to float32" option in Settings > Stable Diffusion or using the --no-half commandline argument to fix this. Use --disable-nan-check commandline argument to disable this check.

以下サイトの通りに--no-halfオプションをつけたところ解決しました。
https://www.ipentec.com/document/software-stable-diffusion-error-nans-exception-a-tenor-with-all-nans-was-produced-in-unet

以下画面から再度「Generate」します。
image.png

作成できました!
自分書いた絵よりも下手になっている気がしますが、生成してくれただけよしとします。
image.png

風景編

学習元の画像の準備

関内近くのコリアンタウンの画像でLoRAを作成してみます。
以下のような写真を15枚準備しました。
image.png

Lora作成

前述のLoraと同じ手順になります。

作成したLoraで画像生成

コリアンタウンLoraを適用後に「Genarete」しました。
image.png

少し粗さはありますが、想定通りの画像が作成できました。
image.png

おまけの検証

プロンプトに色々指定してみましたが反映されず、コリアンタウンのみの画像が生成されます。Prompt + Loraで画像生成するには、さらに調整が必要かもしれません。
image.png

image.png

おわりに

sd-webui-train-toolsでのLora作成はいかがだったでしょうか。
本記事が少しでも何かの参考になれば幸いです。

今後は「Promptと合わせて画像生成する方法」と「他の方法でのLora作成」も試していく予定です。良ければまたチェックしてみてください。

8
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
3