見出し画像

RTX5090/5080/5070シリーズでStable Diffusionを起動するオススメの方法(Windows&ローカル環境 Linux利用 2025年2月時点)

RTX5090、5080、5070TIまたはそれらのGPUを搭載したPCを購入するまで気づかない人も多いと思うのですが、現状は・・・

「公式PyTorchが最新GPUに対応しない=Stable DiffusionはWindows環境のローカルでは通常の方法では起動出来ない」

という図式が成立してしまいます。

しかし上の投稿の2日後に気づいたのですが、Linux版については公式Pytorchの開発が先行しているため、既にNightly版では対応しています。

この公式での情報を元にRTX5080 & Windows11 でStable Diffusionをローカル環境で起動した具体的方法を、コマンドプロンプトに不慣れな方向けに説明したのがこのnoteの内容です。

現状でもPytourchをビルドする等して使用する方法も有るのですが、仮想環境を使うとはいえやはり公式Pytorchを使用したほうがパフォーマンスが良いと考えられる為、今回はこの方法を選択しました。Dokerに慣れている方はDokerを利用したほうが簡単かもしれません。

念の為考えられる手法についてAIに聞いて作成したのが下記の投稿の表です。

WSL2経由でLinux環境として利用することで起動することを実現しています。

仮想環境を利用した、方法なので理論上はRTX5080だけで無く他の最新GPUのRTX5090やこれから発売されるRTX5070、5070TIでも同様の方法で起動できるはずです。

※2025年2月11日時点の情報に基づいています。公式PyTorch の Windows 向け nightly ビルドが正式リリースされれば、WSL2 を使わずに、より簡単に環境構築できるようになる可能性があります。

公式Pytorchを使用できるので現状としては良い方法だと思いますが仮想環境のため、Windows版の公式で対応した場合はWindows版を使用したほうが確実にパフォーマンスは上がります。
※仮想環境の削除方法は簡単です

最新情報を確認したい場合は著者のXアカウント(2025年2月に作ったばかり)をぜひフォローしてください。
https://x.com/kurodesuyo2525


はじめに

このマニュアルでは、NVIDIA GeForce RTX 5080 を搭載した Windows 11 PC で、Stable Diffusion Web UI を動かすための環境構築手順を、パソコン初心者の方にも分かりやすく、ステップごとに詳細に解説します。

WSL2 (Windows Subsystem for Linux 2) と Ubuntu 24.04 を利用し、PyTorch の nightly ビルドを使うことで2025年2月現在の現環境ではオススメの方法です。

必要なもの

  • Windows 11、Windows10 がインストールされた PC (RTX 5000シリーズ搭載 搭載)

  • インターネット接続

  • 管理者権限 (一部の手順で必要)

1. 必要なツールの確認と準備 (Windows 側)

  • Windows 11:

    • 最新の更新プログラムが適用されていることを確認してください。

    • Windows Update を実行し、利用可能な更新プログラムをすべてインストールします。

  • NVIDIA Driver:

    • Windows 用の最新の NVIDIA Studio Driver がインストールされていることを確認してください。

    • NVIDIA の公式サイト (https://www.nvidia.co.jp/Download/index.aspx?lang=jp) から、RTX 5080 用の最新ドライバをダウンロードしてインストールします。

    • インストール時に「カスタムインストール」を選択し、「クリーンインストール」にチェックを入れることを推奨します (古い設定が削除され、問題が解決することがあります)。

  • Visual Studio 2022 Community (オプション):

    • xFormers を手動ビルドする必要がある場合に備えて、インストールしておくことを推奨します (必須ではありません)。

    • Visual Studio の公式サイト からインストーラをダウンロードして実行します。

    • 「ワークロード」タブで、「C++ によるデスクトップ開発」を必ず選択。

    • 右側の「インストールの詳細」で、以下のコンポーネントが選択されていることを確認 (重要):

      • Windows 10 SDK (最新版)

      • MSVC v143 - VS 2022 C++ x64/x86 ビルド ツール (最新版)

      • C++ CMake tools for Windows

      • (その他、必要に応じて C++ 関連のコンポーネントを選択)

    • 「インストール」をクリックして、インストールを実行。

  • Microsoft Visual C++ 再頒布可能パッケージ (x64):

    • インストールされているか確認します (Windows の「設定」→「アプリ」→「インストールされているアプリ」で確認)。

    • もしインストールされていない場合は、Microsoft の公式サイトからダウンロードしてインストールします。

    • Visual Studio 2022 をインストールしていれば、通常は自動的にインストールされます。

  • Python 3.10.x (Windows 側):

    • 重要: これは Windows 側の Python です。WSL2/Ubuntu 側にも Python をインストールしますが、ここでは Windows 側の Python が存在することを確認します。

    • Microsoft Store からインストールするのが最も簡単です。

      • Microsoft Store を開き、「Python 3.10」を検索してインストールします。

    • Python 公式サイト (https://www.python.org/downloads/windows/) からインストーラをダウンロードしてインストールすることもできます。

    • インストール後、コマンドプロンプトで python --version を実行し、Python 3.10.x がインストールされていることを確認します。

  • Git:

    • Git for Windows をインストールします。

    • 公式サイト (https://gitforwindows.org/) からインストーラをダウンロードして実行します。

    • インストールオプションは、デフォルトのままで問題ありません。

    • インストール後、コマンドプロンプトで git --version を実行し、Git がインストールされていることを確認します。

  • Windows の長いパスの有効化 (済みの場合はスキップ):

    • 管理者権限で PowerShell を開きます (Windows キー + X を押して、「Windows PowerShell (管理者)」を選択)。

    • 以下を実行

New-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem" `
-Name "LongPathsEnabled" -Value 1 -PropertyType DWORD -Force


PC を再起動します。

このラインより上のエリアが無料で表示されます。



2.フォルダの準備 (Windows 側)

  • C: ドライブを開きます。

  • SD という名前のフォルダを新規作成します (C ドライブを右クリック → 新規作成 → フォルダー)。

3. WSL2 のインストールと Ubuntu 24.04 のセットアップ (済みの場合はスキップ)

WSL2 のインストール (済みの場合はスキップ):

  • 管理者権限で PowerShell を開き、以下を実行:

wsl --install
wsl --update

PC を再起動 (指示があった場合)。
既存の Ubuntu の登録解除 (必要な場合):
重要: 既存の Ubuntu 環境に重要なデータがある場合は、必ずバックアップを取ってください。

  • 管理者権限で PowerShell を開き、以下を実行:

wsl -l -v  # 既存のディストリビューションを確認
wsl --unregister <ディストリビューション名>  # 例: wsl --unregister Ubuntu-22.04


Ubuntu 24.04 のインストール:

  • 管理者権限で PowerShell を開き、以下を実行:

wsl --install Ubuntu-24.04


Ubuntu が起動し、初期設定 (ユーザー名とパスワードの設定) が求められます。

  • ユーザー名は sduser に設定 してください (このマニュアルでは sduser を前提としています)。別の名称でも問題有りませんが、その場合はsduserの部分は書き換えて実行してください。

詳細
1.**Microsoft Store を開く**: Windows キーを押して、「ストア」と入力し、Enter キーを押します。
2. **Ubuntu を検索**: ストアの検索バーに「Ubuntu」と入力し、検索します。
3. **Ubuntu を選択**: 検索結果から、「Ubuntu 24.04.1 LTS」(最新)を選んでください。
4. **「入手」をクリック**: Ubuntu のページで、「入手」ボタンをクリックしてインストールします。
5. **Ubuntu を起動**: インストールが完了したら、「開く」ボタンをクリックするか、スタートメニューから「Ubuntu」を選択して起動します。

### **Ubuntu の初期設定**
1. **初回起動時の設定**: Ubuntu を初めて起動すると、初期設定が始まります。
* **ユーザー名の設定**: 好きなユーザー名を入力して Enter キーを押します (例: `sduser`)。ユーザー名は、Ubuntu の中であなたを識別するための名前です。小文字の英数字を使用してください。
* **パスワードの設定**: 好きなパスワードを入力して Enter キーを押し、確認のためもう一度同じパスワードを入力して Enter キーを押します。このパスワードは、Ubuntu の中で管理者権限が必要な操作 (ソフトウェアのインストールなど) を行う際に必要になります。忘れないようにしてください。 * 設定が完了すると、`username@computername:~$` のような表示になります (例: `sduser@DESKTOP-XXXXXXX:~$`)。これは、Ubuntu のコマンドプロンプトです。
### ** Ubuntu の環境構築**
1. **パッケージリストの更新**: * Ubuntu のコマンドプロンプトで、以下のコマンドを実行します (コピー&ペーストして Enter キーを押す)。 ```bash sudo apt update ``` * `sudo` は、「管理者権限で実行する」という意味です。 * `apt` は、Ubuntu でソフトウェアを管理するためのコマンドです。 * `update` は、利用可能なソフトウェアのリストを最新の状態に更新します。 * パスワードの入力を求められたら、ステップ3 で設定した Ubuntu のパスワードを入力して Enter キーを押します (入力しても画面には表示されません)。

4. Ubuntu 環境のセットアップ (WSL2 側)

  • Ubuntu ターミナルを開く: スタートメニューから「Ubuntu 24.04 LTS」を選択。

  • 以降、特に断りがない限り、コマンドは Ubuntu ターミナルで実行します。

  • パッケージリストの更新とアップグレード:

sudo apt update
sudo apt upgrade -y


必要なパッケージのインストール:

sudo apt install -y python3-pip python3-venv git wget


pyenv のインストール:

curl https://pyenv.run | bash


pyenv の設定:

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc \
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc \
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n  eval "$(pyenv init -)"\nfi' >> ~/.bashrc \
source ~/.bashrc


Python 3.10.6 のインストール:

pyenv install 3.10.6


Python 3.10.6 をグローバルに設定:

pyenv global 3.10.6


5. Stable Diffusion Web UI の準備

このマニュアルでは、以下のフォルダ構成を使用します。

  • Windows 側:

C:\SD\
    models\  # モデルファイル (.ckpt, .safetensors) を配置
        Stable-diffusion\


WSL2 (Ubuntu) 側:

/home/sduser/  (または ~/)
└── stable-diffusion-webui/  # Web UI のファイル一式
    ├── venv/  # 仮想環境
    └── models/
        ├── Lora/  # LoRA ファイルを配置
        └── VAE/   # VAE ファイルを配置
        └── Stable-diffusion #ここには何も置かないで!

Stable Diffusion Web UI のダウンロード (WSL2 側)

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

仮想環境の作成と有効化 (WSL2 側)

python3 -m venv venv
source venv/bin/activate


コマンドプロンプトの先頭に (venv) と表示されることを確認。

依存パッケージのインストール (WSL2 側, 仮想環境内)

  1. requirements.txt の作成 (Windows 側):

    • Windows 側 で、C:\SD フォルダ内に requirements.txt という名前のファイルを作成します (メモ帳などで作成し、UTF-8 で保存)。

      • 注意: 拡張子が表示されていない場合は、「表示」タブ → 「表示」→「ファイル名拡張子」にチェックを入れて、拡張子を表示させてください。

      • ファイル名が requirements.txt (すべて小文字)、拡張子が .txt であることを確認してください。

    • requirements.txt に以下の内容を記述します:

numpy
pyyaml
mkl
mkl-include
setuptools
cffi
typing_extensions
future
six
requests
dataclasses
cmake>=3.25.0
ninja>=1.11.0
packaging
pytorch_lightning>=2.0.0
gradio>=3.16.0,<5.0
omegaconf>=2.3.0
safetensors>=0.3.0
Pillow>=8.0,<10
blendmodes>=2022,<2023
  1. パッケージのインストール (WSL2 側):

    • WSL2 ターミナルで、仮想環境が有効化されていることを確認 ((venv) がプロンプトの先頭にあること)。

    • 以下のコマンドを実行:

pcd ~/stable-diffusion-webui
pip install -r /mnt/c/SD/requirements.txt


PyTorch (nightly) のインストール (WSL2 側, 仮想環境内)

  • WSL2 の Ubuntu ターミナルを開き、仮想環境をアクティベート ((venv) が表示されていること)。

cd ~/stable-diffusion-webui
source venv/bin/activate


以下のコマンドで PyTorch, torchvision, torchaudio をインストール。

pip install --pre torch torchvision torchaudio --index-url https://download.pytorch.org/whl/nightly/cu128

モデルの配置

  • WSL2 側:

    • モデル: ~/stable-diffusion-webui/models/Stable-diffusion

  • 配置方法:

  • WSL2 ターミナルで wget コマンドを使って直接ダウンロードする。

    • 例)

cd ~/stable-diffusion-webui/models/Stable-diffusion
wget <モデルのURL>

Windows 側でダウンロードしたファイルを、エクスプローラーを使って WSL2 内のフォルダにコピーする事も出来ます

  • エクスプローラーでWSL2内のフォルダを開くには、アドレスバーに以下のように入力 (sduserはご自身のWSL2ユーザー名に置き換え)。

\\wsl$\Ubuntu-24.04\home\sduser\stable-diffusion-webui\models\Stable-diffusion
 \\wsl$\Ubuntu-24.04\home\sduser\stable-diffusion-webui\models\Lora
  \\wsl$\Ubuntu-24.04\home\sduser\stable-diffusion-webui\models\VAE


Web UI の起動 (WSL2 側)

cd ~/stable-diffusion-webui
./webui.sh --listen --enable-insecure-extension-access

--listen: これを追加すると、Windows 側のブラウザから Web UI にアクセスできるようになります。

Web UI へのアクセス (Windows 側)

  1. Web UI の起動が成功すると、Ubuntu ターミナルに以下のようなメッセージが表示されます。

Running on local URL:  http://127.0.0.1:7860
Running on public URL: http://<your-ip-address>:7860


Windows 側の Web ブラウザ (Chrome, Firefox, Edge など) を開き、アドレスバーに 「http://127.0.0.1:7860」 と入力して Enter キーを押します。

  1. Stable Diffusion Web UI の画面が表示されれば成功です。

※重要

オート版等と違い、WEB UIを実行しても勝手にプログラムが実行されることは有りません
起動成功している場合でも失敗していると勘違いの場合もあります

起動後には必ず下記を自分でブラウザで入力すること

http://127.0.0.1:7860

終了時

下記を入力すること

CTRL+C

終了しないと重くなるケースが有ります。モデルを変更しすぎて重くなった場合も終了しよう

2回目以降の起動

方法

WSL2 (Ubuntu) 環境で Stable Diffusion Web UI を起動するには、以下の手順を実行します。

  1. WSL2 (Ubuntu) ターミナルを開く:

    • スタートメニューから「Ubuntu」を選択するか、Windows Terminal で Ubuntu のプロファイルを選択します。

  2. 下記を入力

cd ~/stable-diffusion-webui
source venv/bin/activate
./webui.sh --listen --enable-insecure-extension-access


起動後には必ず下記を自分でブラウザで入力すること

http://127.0.0.1:7860

終了時

下記を入力すること

CTRL+C


** (オプション) 起動スクリプトの作成**

毎回コマンドを入力するのが面倒な場合は、以下の内容の launch.sh スクリプトをホームディレクトリに作成しておくと次回以降少しだけ楽に起動できます。

#!/bin/bash
cd ~/stable-diffusion-webui
source venv/bin/activate
python launch.py --listen --enable-insecure-extension-access

作成後、chmod +x ~/launch.sh で実行権限を与えれば、./launch.sh だけで Web UI を起動できるようになります。

** (オプション) 拡張機能のインストール (Web UI から)**

  1. Web UI の "Extensions" タブを開きます。

  2. "Available" サブタブで "Load from:" ボタンをクリックし、利用可能な拡張機能の一覧を表示します。

  3. インストールしたい拡張機能の "Install" ボタンをクリックします。

  4. "Installed" サブタブで "Apply and restart UI" ボタンをクリックして、Web UI を再起動します。

    • インストールした拡張機能は、~/stable-diffusion-webui/extensionsに保存されます

** (オプション) 環境の削除方法 (Windows 版 PyTorch リリース後)**

将来的に Windows 版 PyTorch が RTX 50 シリーズに正式対応し、WSL2 が不要になった場合は、以下の手順で環境を削除できます。

  1. WSL2 の Ubuntu 環境の削除:

  2. 管理者権限で PowerShell を開き、以下を実行:

wsl --unregister Ubuntu-24.04
  1. Windows 側のフォルダの削除 (オプション):

    • C:\SD フォルダ (およびその中の models フォルダ) は、Windows 版 Stable Diffusion Web UI でも引き続き使用できます。

    • もし不要であれば、C:\SD フォルダごと削除しても構いません。

  2. pyenv のアンインストール (オプション):

  3. WSL2 環境でのみ pyenv を使用していた場合は、以下の手順でアンインストールできます。

  4. WSL2 の Ubuntu ターミナルを開きます。

  5. ~/.bashrc ファイルから、pyenv 関連の設定を削除します (テキストエディタで開いて、該当行を削除)。

  6. 以下のコマンドを実行します。

rm -rf ~/.pyenv

ターミナルを再起動します。

  1. 環境変数の削除 (オプション):

    • 環境変数 TORCH_CUDA_ARCH_LIST を設定していた場合は、削除しても構いません (Windows の設定 → システム → 詳細設定 → 環境変数 から削除)。

いいなと思ったら応援しよう!