Stable Diffusion 教學 - 在 MacBook M1 安裝 web UI
說明
Stable Diffusion web UI 是一套基於 Gradio 開發的開源軟體,提供網頁介面的方式來使用 Stable Diffusion 。在自己的電腦安裝之後,就可以無限地進行免費算圖。本篇文章將說明如何在 MacBook M1 上安裝 Stable Diffusion web UI ,以及提升效能加速算圖的方法。在開始安裝之前,建議 OS 先升級到 Ventura 版本以上。
算圖需要較好硬體配備,使用顯示卡進行 GPU 運算才會快,而我使用的電腦 MacBook M1 並不適合,速度不快但還勉強可以試試,配備如下:
- 機型: MacBook Pro M1, 2020
- OS版本: Ventura 13.2.1
- 記憶體: 16 GB
前置作業
請先安裝好以下軟體
- Homebrew
安裝
首先開啟終端機,輸入以下指令:
1 | brew install cmake protobuf rust [email protected] git wget |
上面是官方文件說要安裝的套件,如果已經有的套件例如 git, python 3 就可以不重複安裝。
接著下載專案,輸入指令:
1 | git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui |
會下載一個資料夾 stable-diffusion-webui
,進入資料夾
1 | cd stable-diffusion-webui |
直接執行
1 | ./webui.sh |
第一次執行它會自動開始下載和安裝一些套件和模組,可能要等幾十分鐘或幾小時。安裝完成之後他會跑起網站,如下圖
執行
跑起來後會看到中間有 http://127.0.0.1:7860
的文字,這時候就可以去瀏覽器輸入這個網址開啟介面。類似下圖
直接在上方 Prompt 輸入框輸入文字試試看吧!例如產出下圖
要結束程式就回到終端機按 Ctrl
+ C
即可,之後要跑起來一樣在終端機到 stable-diffusion-webui
的資料夾下執行 ./webui.sh
就好了。
加速
(新版 webui 已經包含以下設定)
MacBook Pro M1 可能還可以嘗試下面這個方法提升效能來加速算圖,但系統必須是 Ventura 以上版本。先到 stable-diffusion-webui
的資料夾下,備份 webui-user.sh
檔案,例如複製一份存為 webui-user.sh.bak
。你可以用終端機指令或者使用 Finder ,如果上面 git clone
沒有修改資料夾的話,應該會在使用者資料夾下,Finder 可以用「前往檔案夾」的功能開啟資料夾,輸入~/stable-diffusion-webui
。
備份完之後要編輯 webui-user.sh
,使用慣用的文字編輯開啟或系統內建的,然後找到下面這行:
1 | #export COMMANDLINE_ARGS="" |
改成
1 | export COMMANDLINE_ARGS="--skip-torch-cuda-test --upcast-sampling --opt-sub-quad-attention --use-cpu interrogate" |
找到
1 | #venv_dir="venv" |
改成
1 | venv_dir="venv-torch-nightly" |
找到
1 | #export TORCH_COMMAND="pip install torch==1.12.1+cu113 --extra-index-url https://download.pytorch.org/whl/cu113" |
改成
1 | export TORCH_COMMAND="pip install --pre torch==2.0.0.dev20230210 torchvision==0.15.0.dev20230210 -f https://download.pytorch.org/whl/nightly/cpu/torch_nightly.html" |
存擋之後再重新執行 ./webui.sh
他會重新安裝一些套件,完成之後再算圖看看速度是否有提升。
以我的電腦為例,在預設的設定條件下:
- 加速前:45秒
- 加速後:28秒
時間減少了將近 40% 。