本文以Ubuntu 24.04 LTS為例子。
請使用一般使用者,不可以用Root使用者安裝。
1 安裝顯示卡驅動#
此處以Nvidia GPU為例。
安裝專有Nvidia驅動,之後重開機。
安裝CUDA
確認驅動安裝是否正確安裝
nvidia-smi
nvcc --version
2. 安裝Anaconda#
- 安裝Python、wget、git。
sudo apt install python3 python3-pip python3-virtualenv wget git
安裝Anaconda。裝Anconda的用意是鎖Python版本,讓Stable Diffusion WebUI的Python版本跟系統的隔離,防止系統Python版本太新導致程式出錯。
建立Python 3.10.6的虛擬環境
conda create --name sdwebui python=3.10.6
3. 複製Stable Diffusion WebUI儲存庫#
- 將Stable Diffusion WebUI複製至使用者家目錄
cd ~
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
- (選擇性) 預先將模型下載至
stable-diffusion-webui/models/Stable-diffusion
目錄,這裡使用Anything v4.5
wget -nc -P ~/stable-diffusion-webui/models/Stable-diffusion https://huggingface.co/andite/anything-v4.0/resolve/main/anything-v4.5-pruned.safetensors -O anything-v4.5-pruned.safetensors
- 啟動虛擬環境:
conda activate sdwebui
如果想要於bash script自動以conda啟動虛擬環境,可以把這二行加入至webui-user.sh
頂端:
eval "$(conda shell.bash hook)"
conda activate sdwebui
於conda環境下,最好使用conda指令來安裝套件。不過Stable Diffusion WebUI仍偏好以pip建立虛擬環境。
4. 設定啟動引數#
用VIM編輯webui-user.sh
。
顯示卡VRAM在8GB以上,將# COMMANDLINE_ARGS=
替換成COMMANDLINE_ARGS=--xformers --enable-insecure-extension-access
引數。
若顯示卡VRAM小於等於4GB,將# COMMANDLINE_ARGS=
替換成COMMANDLINE_ARGS=--medvram --opt-split-attention --xformers --enable-insecure-extension-access
引數。
額外加上--listen
參數讓其他電腦能以IP存取網頁界面,--share
則是產生一組Gradio網址。
加上--xformers
可進一步減少VRAM佔用,只支援Nvidia顯示卡。加入--no-half-vae
減少使用VAE時算出黑圖的機率。
加上--enable-insecure-extension-access
讓你在網頁界面直接裝擴充功能。加上--nowebui
則不會啟動網頁界面,單純接收WebUI API之用。
其餘可用引數請見命令列引數
5. 啟動Stable Diffusion WebUI#
執行webui.sh
,它會自動下載PyTorch並安裝依賴套件。跑完它應該會顯示一組網址,本機用瀏覽器開啟http://127.0.0.1:7860
進入網頁圖形界面。
cd ~/stable-diffusion-webui
./webui.sh