「Diffusersを使ったStable Diffusionの立ち上げ方が知りたい」といった疑問を持っている方も多いのではないでしょうか。
こういった疑問にお答えするため、この記事ではStable DiffusionをDiffusersで立ち上げる方法やDiffusersで立ち上げたStable Diffusionで画像を生成する方法について解説していきます。
この記事を最後まで読むと、DiffusersでStable Diffusionの立ち上げる方法が分かって、従来のStable Diffusionの導入方法より素早く画像を生成できますよ!
DiffuserライブラリでStable Diffusionを立ち上げる方法
以下の手順で、Diffuserライブラリを使って、Stable Diffusionを立ち上げます。
- Google Colabノートブックを開いて設定
- Diffuserライブラリを立ち上げるコードを入力、実行
- 画像生成プロンプトを入力、画像生成
順番に見ていきましょう。
①Google Colabノートブックを開く
まずはGoogle Colabrattoryにアクセスして、新規でノートブックを立ち上げます。立ち上げたら、編集タブにある「ノートブックの設定」を開いてください。
ハードウェアアクセラレータを「T4 GPU」に変更して、右下の保存をクリックすれば設定完了です。
②必要なライブラリを導入する
ノートブックの設定が完了すれば、Diffuserライブラリに必要なコードを入力していきます。まずは以下のコードを入力して、実行してください。
#stable diffusionのインストール
!pip install --upgrade diffusers[torch] transformers
次に、以下のコードを実行します。
from diffusers import StableDiffusionPipeline, EulerDiscreteScheduler
import torch
# パイプラインの準備
model_id = "stabilityai/stable-diffusion-2-1"
pipe = StableDiffusionPipeline.from_pretrained(
model_id,
scheduler=EulerDiscreteScheduler.from_pretrained(
model_id,
subfolder="scheduler"
),
torch_dtype=torch.float16
).to("cuda")
pipe.enable_attention_slicing()
最後に、以下のコードに生成したい画像のプロンプトを入力して、実行すれば画像を生成できます。
# 画像の生成
prompt = "ここにプロンプトを英語で入力"
image = pipe(prompt, height=512, width=512).images[0]
image
stable diffusionのインストールとパイプラインの準備のコードは、ノートブックを立ち上げた時に毎回実行しましょう。画像の生成のコードは、画像を生成するたびに実行してください。
Diffuserライブラリで立ち上げたStable Diffusionで画像生成してみた!
Diffuserライブラリで立ち上げたStable Diffusionで、いくつか画像を生成してみました。生成した画像をプロンプトと合わせて紹介していきます。
cat,urban area
dog,garden
elf,forest
bike,urban area
シンプルなプロンプトがおすすめ
できるだけプロンプトはシンプルにしてください。色々試した結果、複雑なプロンプトでは画像のクオリティが下がってしまうようです。
例えば以下の画像は、「修道女の服を着た女性の全身画像を、最高品質で書いてください」というプロンプトで生成しました。
masterpiece, best quality,High quality, highly detailed, ultra detailed,4K,detailed face,delicate fingers,detailed hair,beautiful hair,break,1 girl,clergy,red hair, face up, break,
ただの顔アップの画像が生成された上に、額に何か描かれていますね。
複雑なプロンプトではいい画像が生成できないので、Diffuserライブラリはプロンプトがシンプルな画像の生成に利用しましょう。
高品質な画像を生成したい方は、以下の記事を参考にStable Diffusionを導入してください。
上記の記事で紹介している方法なら、ハイスペックなPCを持っていなくても、Stable Diffuionを利用できます。
- Stable Diffusionのプロンプトの見本が知りたい
- 画像生成が思ったようにできない
- 色々なプロンプトを探したい
まとめ
いかがでしたでしょうか?
Diffusersを使ったStable Diffusionの立ち上げる方法について解説してきました。
今回のポイントをまとめると、以下のようになります。
- Diffusersを使ったStable Diffusionの立ち上げ方法はコードを3つ実行するだけでOK
- 複雑なプロンプトでは質の高い画像は生成されづらい
- 高品質な画像を生成したい方は、Google ColabrattoryにStable Diffusionをインストールする方法がおすすめ
DiffusersライブラリならStable Diffusionを起動させる必要はないので、従来のGoogle ColabrattoryにStable Diffusionをインストールする方法より素早く画像を生成できます。
しかしクオリティの高い画像は生成されづらいので、高品質な画像を生成したい方は、先程ご紹介した記事に記載している方法でStable Diffusionを利用してみてください!
- Stable Diffusionのプロンプトの見本が知りたい
- 画像生成が思ったようにできない
- 色々なプロンプトを探したい