猫心魚心

SUPフィッシングはじめました!原2に乗ったり、アクアリウムを楽しむシステム屋さんの記録(このブログのリンクにはアフィリエイトが含まれています)

画像生成AI「stable diffusion」はpython3.11系でも動くぞ!

   

昨今、画像生成AIの著作が問題となりつつありますが、そんな中で自分のPCに「stable diffusion(ステーブルディフュージョン)」をインストールしてみました。
インストールに際し色々と事前調査をしてみると「Pythonは3.10.6じゃないとダメ」という内容が多かったのですが、2024年4月現在ではPython3.11.7でもインストールできましたので情報共有です。
ただし推奨環境では無いと思われますので、ご利用は各自の自己判断と自己責任でお願いします。

導入方法

Pythonのバージョンが3.11系になったとしても、特別なことは不要でした。

PCに下記を事前にインストールします。
・Python 3.11.7 ※僕はこのバージョンでインストールしていますが、これより上のバージョンだとどうなるかは不明です。
・Git
・CUDAおよびcuDNN ※いわゆるCUDAとToolKitです。ご自身のGPU環境に合わせてインストールしておいてください。

Stable Diffusion WebUIの導入

Stable Diffusion WebUIは以下のgithubで公開されています。
https://github.com/AUTOMATIC1111/stable-diffusion-webui

Stable Diffusionをインストールする場所をPCに作ります。
できればWindowsのシステムが入っているCドライブでは無いところ(例えばDドライブとか)が好ましいですが、なければCドライブでも大丈夫です。
今回は「Dドライブに「SD」というフォルダを作成した」ということにします。

コマンドプロンプトを開き、作成したディレクトリに移動します。

cd /D D:\SD

git cloneコマンドで、Stable DiffusionWebUIをクローンします。

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

クローンが成功すると「D:\SD\stable-diffusion-webui」に各種ファイルが生成されます。

Pythonの仮想環境の準備

もしStable Diffusionを導入した後に何か問題があった場合、既存のPython環境に影響を与えないためにPythonの仮想環境(venv)を作成しておきます。
クローンで作成したフォルダに移動します。

cd D:\SD\stable-diffusion-webui

次のコマンドで仮想環境(venv)を作成します。
Pythonのインストール状態によってパスが変わると思いますので、ご自身の環境に合わせて書き換えてください。下記コマンドでは一般的なパス構成になります。

C:\Users\【ユーザ名】\AppData\Local\Programs\Python\Python311\python.exe -m venv venv

Stable Diffusionのコンポーネントインストール

Stable Diffusion WebUIは「D:\SD\stable-diffusion-webui\webui-user.bat」を実行することで、必要なコンポーネントのインストールと実行ができます。
インストールを実行する前に、上記で作成したvenvのパスなどを設定しておく必要がありますので、このwebui-user.batファイルをvscodeやテキストエディタ、メモ帳などで開き編集します。

@echo off

set PYTHON=D:\SD\stable-diffusion-webui\venv\Scripts\python.exe
set GIT=
set VENV_DIR=D:\SD\stable-diffusion-webui\venv
set COMMANDLINE_ARGS=--autolaunch --xformers

call webui.bat

各項目の設定値は次のようになります。
・PYTHON= :Pythonの実行ファイルを指定します。今回はvenvで環境を作成しましたのでvenv以下のpython.exeを指定します。
・VENV_DIR= :Python仮想環境の位置を指定します。各種PIPインストールはここに指定された環境に行われるとともに、実行時もここの環境を利用するようになります。
・COMMANDLINE_ARGS= :実行時のコマンドライン引数を指定します。いくつかパラメタはありますが、今回は必要最低限を指定しています。

この変更を行った後に「webui-user.bat」をダブルクリックし、インストール処理を実行します。
環境によってはインストールに時間がかかるので、気長に待ちましょう。

ブラウザが立ち上がり、下記のような画面が出たらインストール完了です。

動作も問題なしです。

まとめ

上記のように、特にPython3.11系であることを意識しないでも、通常のインストール方法で問題なく導入ができそうです。(2024年4月時点)
恐らくPyTorchが3.11系をサポートするようになったからかと思いますが、詳しいところはわからないです。

実行時のコマンドプロンプト画面でワーニングが出るので、推奨環境ではないと思われます。この辺りは個人のご判断でお願いします。

==============================================================================================================
INCOMPATIBLE PYTHON VERSIONThis program is tested with 3.10.6 Python, but you have 3.11.7.
If you encounter an error with "RuntimeError: Couldn't install torch." message,
or any other error regarding unsuccessful package (library) installation,
please downgrade (or upgrade) to the latest version of 3.10 Python
and delete current Python and "venv" folder in WebUI's directory.You can download 3.10 Python from here: https://www.python.org/downloads/release/python-3106/

Alternatively, use a binary release of WebUI: https://github.com/AUTOMATIC1111/stable-diffusion-webui/releases

Use --skip-python-version-check to suppress this warning.
==============================================================================================================

 - AI ,