Intel Mac でStable Diffusion

NVIDIAのGPUを積んでないとStable Diffusionが使えないと思っているそこのあなた、安心してください。Macでも使えますよ。ただしいくつか条件があり、特にMacOS Ventureが入っていることと、Python 3.10が使えることは必須。またMetalが使えるハイエンドのRadeonGPUか、M1、M2のGPUが必要です。Intel内蔵グラフィックスのMacbook Pro 2020では使用できませんでした。なおこの記事を書いているのは2023年8月14日です。AI系ライブラリは移り変わりが早いので記載しておきます。

インストール手順

インストールは思っているより簡単です。今回インストールしたい、Stable Diffusion Web UIのGithubの手順を参考に入れていきます。

HomeBrewのインストール

最初にMacでHomeBrewを使えるようにします。公式サイトに行き以下のコマンドを打つことで、インストールが完了します。

/bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”

必要なソフトウェアのインストール

実際にWEBUIインタフェース内蔵のアプリケーションをAUTOMATIC1111さんの手順を皆がら実行しましょう。

$brew install cmake protobuf rust python@3.10 git wget

続いてソースコードのダウンロード

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

WEBUIを起動

git clone でダウンロードしたフォルダに向かい、以下のコマンドを実行するとStable Diffusion WEBUIが立ち上がってくるはずです。初回は様々なライブラリのダウンロードにより、時間がかかりますが、根気よく待ちましょう。
$ cd stable-diffusion-webui
$ ./webui.sh

ノイズ画像しか生成されない

無事に起動ができたのならば、早速画像生成していることとおもいます。しかしながら、私の環境ではノイズ画像しか生成されません。

こんな画像しか出てこない

色々調べたところ、実行時に以下のオプションを付けることで解消できるらしい。そこで以下のファイルを編集し、以下の一行に –no-half と加える。

$ vi webui-macos-env.sh

export COMMANDLINE_ARGS="--skip-torch-cuda-test --upcast-sampling --no-half-vae --use-cpu interrogate --no-half"

上記を加えて再度実行したところ、無事に画像が出てきた。no-halfは調べるとGTX1660や1650などの16系に必要だと出てくる。16系のバグだという解説で、Radeonにもはまるのかわかりませんがとりあえずは動いた。

記念すべき1枚目 プロンプトは 「a girl」

なお、私が使っているiMac 2020 Corei9 Radeon 5700XT 環境では20ステップの上記画像は10秒で生成できました。GPU使用率も20%ぐらいまでは上がるので使用している模様。もしかしたらM1とかM2マックだともっと早いのだろうか?これでMacの皆さんも画像生成をお楽しみください。

投稿を作成しました 112

コメントを残す

関連する投稿

検索語を上に入力し、 Enter キーを押して検索します。キャンセルするには ESC を押してください。

トップに戻る
%d人のブロガーが「いいね」をつけました。