こちらはAMDのRadeonでStable Diffusionを試してみたい方向けの記事になります。NVIDIAのグラフィックボードでStable Diffusionを試してみたい方は以下の記事をご覧ください。
実行環境
今回使用するグラフィックボードは、VRAM8GBありますが古い世代の物になります。
OS | Windows11 |
グラフィックボード | RX480 8GB |
インストール
インストール手順は、NVIDIA環境とほとんど同じでクローンするリポジトリが違うだけです。RadeonではCUDAが使えないのでDirectML版を使用します。
Git インストール
GitHubからリポジトリをクローンするのに使います。
Click here to downloadから最新版がダウンロードできます。ダウンロードしたら起動してください。
特に設定する項目はないのでひたすらNextでSetupを進めてください。
Python 3.10.6 インストール
Pythonをインストールします。現在バージョンは3.10.6が指定されています。(マイクロバージョンは後方互換性が高いので新しいので大丈夫そうですが)
Windows installer (64-bit) ダウンロードして起動
Add Python 3.10 to PATHにチェックを入れてインストールを進めてください。
ファイルのダウンロード
Gitコマンドでリポジトリをクローンします。
エクスプローラーでダウンロードしたい場所にアクセスしたらアドレスバーにcmdと入力してEnterでコマンドプロンプトを起動します。
下のコードを入力してEnter
git clone https://github.com/lshqqytiger/stable-diffusion-webui-directml && cd stable-diffusion-webui-directml && git submodule init && git submodule update
ファイルがダウンロードされます。
batファイル実行
ダウンロードされたフォルダ内のwebui-user.batを実行します。
初回起動時は、ファイルのダウンロードなどで時間がかかります。
正しくインストールされるとRunning on local URL: http://127.0.0.1:7860というメッセージが表示されブラウザが起動します。
生成結果
デフォルトでGenerateしたらRuntimeError: Not enough memory(メモリー不足)で生成できませんでした。メモリの使用量を削減できるコマンドライン引数を追加することで生成できるようになりました。
webui-user.batを編集して以下のコマンドライン引数を追加してください。
--medvram --opt-split-attention --opt-sub-quad-attention
速度は512×512の20stepsで1枚約30秒ほどでした。Hires.fixは768×768まで可能でしたが、NVIDIAのグラフィックボードと比べるとパフォーマンスも悪く拡張機能がうまく機能しない場合もあります。やはりNVIDIAのグラフィックボード(VRAM12GB以上)に乗せ換えることをお勧めします。