【初心者用】プログラミング素人が画像生成AI「Stable Diffusion」でテキストから画像を生成した記録




Pocket
LINEで送る

はじめに

「Stable Diffusion」って知っていますか?

Stable Diffusionは今話題の英Stability AIが発表した画像生成AIです。

最近、私が追っているパジさんのジェレラティブNFTもStabel Diffutionで生み出されたものになります。

この記事では、Stable DiffusionをGoogleのColaboratoryで使用する流れをまとめました。

Stable DiffusionのコードやドキュメントはAI関連コミュニティサイト「Hugging Face」で公開されています。

実施にStable Diffusionを個人で利用しようとすると、セッティングにはコマンドが必要ですが、実施にはコマンドのコピペではじめられるので、プログラミング素人の私でもできるくらい簡単でした。

やり方としては「Hugging Face」のサイトで公開されているStable DiffusionのコードをGoogleの「Colaboratory」で実行するといった流れになります。

具体的にはHugging Faceのアカウントを作成して、そのトークンを発行してColaboratoryでStable Diffusionを利用します。

トークンを簡単に言うと、Hugging FaceのStable DiffusionのコードをColaboratoryで使うために橋渡しする役割的な存在ですね。

ちなみに、Stable Diffusionを自分のPCで動かすには、NVIDIA製のグラフィックボードを搭載したPCが必要になります。

加えて、グスペックとしては「10GB以上のVRAM」を搭載しているのが理想とされていて、Stable Diffusionの利用のハードルになっています。

一方、GoogleのColaboratoryを利用すれば、NVIDIA製のグラフィックボードを搭載していないPC環境でもStable Diffusionを実行可能になります。

Colaboratoryは、機械学習の教育及び研究用に提供しているインストール不要で、すぐにPythonや機械学習・深層学習の環境を整えることが出来る無料のGoogleが提供するサービスです。

Colaboratoryを使うと、CPU及びGPU(1回12時間)分の環境が利用可能になります。

利用にはGoogleアカウントが必要で、無料版は制限付きですが、この記事で紹介している内容は無料の範囲内でセッティングできましたよ。

Colaboratoryは有料版も用意されていて、もし長時間利用する場合は検討の余地ありです。

この記事では、GoogleのColaboratoryを利用してStable Diffusionを使用する流れをまとめました。

Colaboratoryで使用するコマンドはコピペして利用すればOKなので、プログラミングはできないけど、Stable Diffusionを使ってみたいという人の参考になればと思います。

参考サイト:https://gigazine.net/news/20220824-stable-diffusion-google-colaboratory/

Hugging Faceでトークンを発行する

まず、Stable Diffusionを使うには、Hugging Faceのサイトに行ってアカウントを作成します。

Hugging Faceのサイトはこちらからアクセスしてください。

https://huggingface.co/

サイトに行ったら右上にある「Sig UP」をクリック。

Email AddressとPasswordを設定して「Next」をクリック。

UsernameとFull nameを設定して、一番下のチェックボックスにチェックを入れて「Create Account」をクリック。

(Avatarなどの設定は後でも可能です)

登録したメールアドレスに確認メールがくるので、メール内のリンクをクリックします。

届いたメールの内容がこちら。リンク先をクリックします。

クリック先のサイトでこのように表示されたら認証完了です。

続いてライセンスに関する確認事項を読んで、一番下のチェックボックスにチェックを入れて「Access prepository」をクリック。

ログインした画面が表示されるので、右上のアイコンをクリックして「Settings」を選択します。

(アイコンにアバターを選択していないと丸いボタンになっています。)

メニューの「Access Tokens」をクリック。

Nameに適当な名前を入力して「Generate a token」をクリック。

アクセストークンが生成されたら、一旦Hugging Faceでの作業は完了です。

後にここで生成したTest-tokenをコピーしにくるのでウインドウはそのままにしておいてください。

ColaboratoryでStable Diffusionを準備する

続いて、Stabel DiffusionをColaboratoryで実行するためのセッティングに入ります。

以下のリンクをクリックしてColaboratoryにアクセスしましょう。

https://colab.research.google.com/?hl=ja

グルーグルのアカウントでログインすることになるので、右上でアカウントを確認してください。

ログイン直後には以下の表示が出るので、「ノートブックを新規作成」をクリックしてください。

この表示が出ていない場合は「ファイル」→「ノートブックを新規作成」でOK。

続いて、「編集」→「ノートブックの設定」をクリック。

ハードウェア アクセラレータに「GPU」を選択して「保存」をクリック。

ここからコマンドを実際に入力していきます。

コマンドはコピペでOKです。

まず、以下のコマンドを入力エリアにコピペしてください。

pip install diffusers==0.2.4 transformers scipy ftfy

続いて再生アイオンをクリック。

すると、ズラズラと文字が流れてStable Diffusionがインストールされ、再生アイコンの左側に緑色のチェックマークが付いたら完了です。

次に、Hugging Faceのページに戻って、先ほど生成したTest-tokenをコピーします。

再度、Colaboratoryの画面に戻って、追加のコマンドを実行するために「+コード」をクリックしてください。

そして、以下のコマンドを実行します。

YOUR_TOKEN=”Hugging Faceで発行したトークン”

コマンドの中の「Hugging Faceで発行したトークン」 部分に先ほどコピーしたTest-tokenを貼り付けます。

入力が終わったら再生アイコンをクリックして実行してください。

続いて「+コード」をクリックして、以下のコードを入力エリアにコピペして実行します。

from diffusers import StableDiffusionPipeline

pipe = StableDiffusionPipeline.from_pretrained(“CompVis/stable-diffusion-v1-4”, use_auth_token=YOUR_TOKEN)

処理が数分続くので、終了を待ってください。この時は2分かかりました。

続いて「+コード」をクリックして、以下のコードを入力エリアにコピペして実行します。

pipe.to(“cuda”)

これでStable Diffusionを使う準備が完了です。

Stable Diffusionで画像を生成する

ここからいよいよ、Stable Diffusionに画像を生成させるコマンドを入力します。

練習として以下のコードを入力エリアにコピペして実行してみました。

prompt = “cute cat paly with ball”

image = pipe(prompt)[“sample”][0]

image.save(f”cat.png”)

promptの“cute cat paly with ball”部分がStable Diffusionに作成してほしい画像の指示にで、“cat.png”は画像の名前になります。

生成された画像は、左のメニューからフォルダを選ぶと表示されます。

実施の画像はファイルの画像名をダブルクリックすると表示されます。

画像は右クリックで保存したり、

右上の「・・・」から「ダウンロード」を選択すると保存できます。

最後に

この記事では、Stable DiffusionをGoogleのColaboratoryで使用する流れをまとめました。

プログラミングができない人でもコマンドをコピペするだけでセッティングできてしまうので、Stable Diffusionに興味ある人はぜひ取り組んでみてくださいね。

ちなみに、Stable Diffusionは画像生成するする指示内容がミソになるようですね。

これから色々と試して、面白い画像ができたら紹介したいと思います。

関連記事

おすすめ記事

Pocket
LINEで送る

フォローする