seiのエンジニア成長記

stable diffusion web uiをpyenvでインストールできないときの対処法

備忘録
stable diffusion web uiをpyenvでインストールできないときの対処法

公式のインストール手順の確認

いろんな記事あるけど、こういうのはなんだかんだ公式のインストール方法読んだ方が良いよね。
https://github.com/AUTOMATIC1111/stable-diffusion-webui

windowsだとリポジトリをクローンして、python3.10.6で実行すればよいみたいです。(2023.5/11現在)
グラフィックボードはNVidiaが推奨されています。

pyenv使ってるから、pyenv から3.10.6をインストールしよう!

インストールできるバージョン確認

pyenv version -l

あれ?3.10.6がない…
※3.10.6が表示された方は下のほうに飛んでください。

pyenv最新化

pyenvが古いのでpyenvを最新化しましょう。

pyenvをアップデートするには、公式発行のプラグインをインストールする必要があります。(なぜpyenv自体組み込んでくれないんだろう?)

なお、公式を参照したい方は↓
https://github.com/pyenv/pyenv-update

プラグインインストール。

git clone https://github.com/pyenv/pyenv-update.git {pyenv rootのパス}/plugins/pyenv-update

pyenv最新化。

pyenv update

3.10.6インストール。

pyenv install 3.10.6
pyenv global 3.10.6 //使うバージョン指定
pyenv versions // 使用されているバージョン確認

stable diffusionのインストール

好きなディレクトリでリポジトリクローン

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

しかしこのままだと、リポジトリをクローンしてbatファイルを実行しても、ターミナルが一瞬で落ちて起動できません。

pyenvを使っているので起動バッチの環境変数にしっかり設定してあげましょう。

git clone実行したディレクトリで

cd stable-diffusion-webui // クローンしてきたディレクトリに移動 code webui-user.bat // webui-user.batをvscodeで開く

以下のようにPYTHON定数にpyenv内のpythonの実行ファイルを記述します。

実行します。

./webui-user.bat //バッチファイル実行

無事にインストールが始まりました!
めちゃ時間かかります。

自分は15分くらいかかりました。

インストール成功すると、このポートで立ち上がります。

ctrl押しながらクリックで開きます。

日本語化対応

せっかくなので日本語化対応しましょう!

Extentions>Availableでlocalizationのチェックを外します。

load fromを押すと「ja_JP Localization」がでてくるのでinstallします。

settings>user interfaceの最後のほうにlocallizationの項目があり、日本語を選択できるようになります。

一番上にスクロールして「apply setting」「reload ui」を押すと適用されます。

お疲れ様でした!

まとめ

pyenvとかnvmとかバージョン管理ツール使ってるときは、パスを明示指定する必要があるときもあるということを学びました。
特にネイティブインストールしたやつと競合しないように注意ですね!