Ubuntu Weekly Recipe

第817回参考書を片手にUbuntuでもStable Diffusion WebUIを動作させ⁠画像を生成する

今回はUbuntuでStable Diffusion WebUIを動作させ、画像を生成する方法を紹介します。

UbuntuとStable Diffusion WebUI

AIによる画像生成が話題になったのは少し前のことですが、今は下火になったのかと問われれば全然そのようなことはなく、まだまだホットなトピックです。

その理由はいろいろあると予測できますが、それなりのハードウェアを所有していればさほど難しいことはなく、とっつきやすいということが挙げられるのではないでしょうか。

技術評論社から、少し前にはじめてでもここまでできる Stable Diffusion画像生成[本格]活用ガイド⁠以下本誌)が発売されました。筆者が手に取ったのは最近なのですが、動かし方は程々に、どのようなプロンプトを記述すればどのような画像が生成されるのか、というタイトルどおり「活用ガイド」となっています。換言すると、Stable Diffusion WebUIのインストール自体はとても簡単なのでさほどページを割く必要がありません。

本誌の記述はNVIDIAのディスクリートGPU(グラフィックボード)とWindowsの組み合わせですが、Stable Diffusion WebUI自体はオープンソースでマルチプラットフォームであり、Ubuntuでも動作します。またUbuntuではNVIDIAのプロプライエタリなドライバーのインストールが簡単にできる、すなわちCUDAの実行環境を簡単に作れるため、考えようによってはWindowsよりも簡単に環境構築が可能です[1]

そこで今回は、本誌と勝手コラボレーション企画を決行してしまいます。

動作の条件

まずはStable Diffusion WebUIを動作させるための環境をみていきましょう。

ハードウェア編

今回は次のような構成のPCを使用しました。

分類 メーカー 型番
CPU Intel Core i5-13500
メモリー Crucial CT32G4DFD832A
マザーボード ASRock B660M Pro RS
グラフィックボード MSI GeForce RTX 3060 AERO ITX 12G OC
SSD Western Digital WDS500G2B0C
ケース Silver Stone SST-SG11B
電源 玄人志向 KRPW-SXP600W/90+

表に挙げているとおり、グラフィックボードはGeForce RTX 3060 AERO ITX 12G OCです。画像生成はVRAMの容量が命とっても過言ではないくらいで、8GB、12GB、16GBで生成できる画像の大きさに影響します。

筆者は5万円程度で購入しましたが、現在このモデルは入手困難なようです。後継となるとVRAMを16GB積んだGeForce RTX 4060Tiが対象になりますが、8万円前後となかなかに覚悟が必要な価格となっています[2]

比較的安価なGeForce RTX 3060のVRAM12GBモデルにするか、あるいはさらに上のグレードにするかは、よくお財布と相談して決断してください。

ソフトウェア編

今回使用するUbuntuのバージョンは22.04 LTSとします。Stable Diffusion WebUIで使用するPythonのバージョンは3.10で、偶然(ではない気もしますが)22.04 LTSのPythonのバージョンも3.10であり、同じだからです。24.04 LTSでも動作するはずではありますが、確認はしていません。

なお、ここで「Stable Diffusion WebUI」と呼んでいるのは、いわゆるAUTOMATIC1111版です。いくつかの派生があるのでご注意ください。

もう1つ重要なのは、NVIDIAのプロプライエタリなドライバーをインストールすることです。⁠追加のドライバー」を起動し、プロプライエタリなドライバーを使用していることを確認してください図1⁠。

図1 NVIDIAのプロプライエタリなドライバーを使用していることを確認する

Stable Diffusion WebUIのインストール

いよいよStable Diffusion WebUIをインストールします。次のコマンドを実行してください。

$ sudo apt install git python3.10-venv libstdc++-12-dev
$ git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

本誌15ページでは次にモデルのダウンロードとフォルダーへ配置していますが、これはしなくてもStable Diffusion WebUIは動作します。ただし、かわいい画像は生成できません。

次のコマンドで起動します。

$ cd stable-diffusion-webui
$ bash ./webui.sh --xformers 

するとWebブラウザーが起動し、WebUIが起動します図2⁠。

図2 起動したWebUI

起動するのはWindowsではバッチファイルですが、Ubuntuではシェルスクリプトです。起動オプションを「webui-user.sh」に記載できます。このファイルを開いて、

#export COMMANDLINE_ARGS=""

この行を次のように変更して保存します。

export COMMANDLINE_ARGS="--xformers"

これにより、次回以降は「bash ./webui.sh」で起動できるようになります。

なお、本誌31ページ以降でメニューを日本語化していますが、特に必須というわけではありません。必要な場合は日本語化してください。

いざ画像生成

あとは実際に画像を生成するだけです。本誌53ページと54ページの内容で生成している様子が図3です。

図3 かわいいゴシックドレスちゃん画像を生成する

生成する際、本誌では「サンプリング方法」「DPM++ 2M Karras」にする旨の指示がありますが、筆者が試したところだと現在のバージョンにはこれはないようで、今回は「DPM++ 2S a」にしました。

こうして生成した画像が図4になります。

図4 生成した、かわいいゴシックドレスちゃん画像

ここから先は、本誌に記述されていることはおおむねそのまま反映できるはずです。中にはWindowsとmacOSのみの対応の記述もありますし、本誌内容すべてを筆者が確認したわけではありません。しかしOSに依存するものはほぼないでしょう。

著作権についても学ぼう

筆者が本誌を気に入った理由はいくつかありますが、第5章には「画像生成AIと著作権」と、著作権に関する章が独立して存在してることもその理由の一つです。気を配るべきは著作権ばかりではありませんが、いずれにせよ生成AIという素晴らしいツールによって誰かを悲しませるようなことはしないように気をつけましょう。

おすすめ記事

記事・ニュース一覧