Stable DiffusionをDiffusersで立ち上げる方法を解説! | romptn Magazine

Stable DiffusionをDiffusersで立ち上げる方法を解説!

Stable Diffusion

「Diffusersを使ったStable Diffusionの立ち上げ方が知りたい」といった疑問を持っている方も多いのではないでしょうか。

こういった疑問にお答えするため、この記事ではStable DiffusionをDiffusersで立ち上げる方法Diffusersで立ち上げたStable Diffusionで画像を生成する方法について解説していきます。

この記事を最後まで読むと、DiffusersでStable Diffusionの立ち上げる方法が分かって、従来のStable Diffusionの導入方法より素早く画像を生成できますよ!

スポンサーリンク

DiffuserライブラリでStable Diffusionを立ち上げる方法

以下の手順で、Diffuserライブラリを使って、Stable Diffusionを立ち上げます。

  1. Google Colabノートブックを開いて設定
  2. Diffuserライブラリを立ち上げるコードを入力、実行
  3. 画像生成プロンプトを入力、画像生成

順番に見ていきましょう。

①Google Colabノートブックを開く

まずはGoogle Colabrattoryにアクセスして、新規でノートブックを立ち上げます。立ち上げたら、編集タブにある「ノートブックの設定」を開いてください。

ハードウェアアクセラレータを「T4 GPU」に変更して、右下の保存をクリックすれば設定完了です。

ついでにノートブックを、Stable Diffusion 【diffusers】などわかりやすい名前に変更しておきましょう。

②必要なライブラリを導入する

ノートブックの設定が完了すれば、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のインストールとパイプラインの準備のコードは、ノートブックを立ち上げた時に毎回実行しましょう。画像の生成のコードは、画像を生成するたびに実行してください。

Stable Diffusionの画像生成を最速で学びたいあなたへ!
  • Stable Diffusionの基礎を2時間でマスター!
  • 高スペックPCがない方向けに徹底解説。
  • ControlNetなど、必須級の拡張機能も網羅。
  • 今話題のSDXL、AI動画生成も。
  • 特典として、大人気「おすすめ拡張機能・モデル解説」「プロンプト大全」つき!
\このボタン限定!70%オフキャンペーン実施中!/
70%オフキャンペーン実施中!/

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を利用できます。

本記事と同じくGoogle Colabrattoryを利用しますが、約1,200円ほどの月額料金が必要です。

プロンプトジェネレーターで画像生成プロンプトの参考に!
  • Stable Diffusionのプロンプトの見本が知りたい
  • 画像生成が思ったようにできない
  • 色々なプロンプトを探したい
など、画像生成AIのプロンプトに関する疑問が解決するかもしれません。

まとめ

いかがでしたでしょうか?

Diffusersを使ったStable Diffusionの立ち上げる方法について解説してきました。

今回のポイントをまとめると、以下のようになります。

  • Diffusersを使ったStable Diffusionの立ち上げ方法はコードを3つ実行するだけでOK
  • 複雑なプロンプトでは質の高い画像は生成されづらい
  • 高品質な画像を生成したい方は、Google ColabrattoryにStable Diffusionをインストールする方法がおすすめ

DiffusersライブラリならStable Diffusionを起動させる必要はないので、従来のGoogle ColabrattoryにStable Diffusionをインストールする方法より素早く画像を生成できます。

しかしクオリティの高い画像は生成されづらいので、高品質な画像を生成したい方は、先程ご紹介した記事に記載している方法でStable Diffusionを利用してみてください!

プロンプトジェネレーターで画像生成プロンプトの参考に!
  • Stable Diffusionのプロンプトの見本が知りたい
  • 画像生成が思ったようにできない
  • 色々なプロンプトを探したい
など、画像生成AIのプロンプトに関する疑問が解決するかもしれません。