AI繪圖:Windows安裝Stable Diffusion WebUI教學

在這篇文章中,Ivon將教你Stable Diffusion WebUI的安裝方法,介紹提示詞寫法,並套用至「文生圖」、「圖生圖」、「內補繪製」進行實戰演練。最後再介紹一些擴充功能,還有如何訓練模型。

Stable Diffusion (穩定擴散) 是一個擴散模型,最早由德國CompVis發表並推出相關程式。後來AUTOMATIC1111開發了圖形化界面:「Stable Diffusion WebUI」,成為最多人使用的版本。下面簡稱SD WebUI。

SD WebUI是能用AI技術繪製圖片的開源軟體,只要給定一組描述文字,AI就會畫圖出來;亦能模仿現有的圖片,畫出另一張圖片。甚至給它一部分塗黑的圖片,AI也能按照你的意願將圖片填上適當的內容。除此之外還支援自行訓練模型加強繪製效果。

一些Stable Diffusion WebUI的繪圖,無後製。
一些Stable Diffusion WebUI的繪圖,無後期處理。

與其他雲端AI繪圖軟體Midjoruney、NovelAI、DALL-E相比,SD WebUI最大優點是可以免費在自己的電腦或伺服器跑,且只要遵照Creative ML OpenRAIL-M授權條款的話,幾無使用限制。因其開放原始碼的特性,任何人都可以貢獻程式碼,參與改進專案。

SD WebUI支援Linux/Windows/MacOS系統,以及Nvidia/AMD/Apple Silicon M的GPU。其圖形界面是透過網頁存取的,上手無難度,還有社群製作的界面中文化擴充功能。

不過AI繪圖十分吃GPU性能,建議:電腦作業系統Windows 10以上,需配備獨立顯示卡且為Nvidia GTX1050 Ti (VRAM 4GB)以上等級,RAM大於8GB,再來嘗試Stable Diffusion WebUI。

0. 測試環境

本文為Windows系統的安裝過程,Linux參考這篇,macOS參考這篇

AI繪圖很吃GPU性能,硬體不夠力可考慮用Google Colab雲端跑。

  • 作業系統: Windows 11 22H2
  • CPU: Intel i5-7400
  • GPU: Nvidia GTX1050 Ti 4GB
  • RAM: 16GB
  • 準備至少10GB的硬碟空間

1. 下載Stable Diffusion的模型

存檔點模型(checkpoint)是AI繪圖的重要依據,檔案普遍在2GB以上所以建議先下載。繪圖用的模型可以一次安裝很多個。

HuggingFaceCivitai有很多類別可以下載,看要畫真人還是動漫風格,至少需要下載一個模型。

點進下載模型的連結,選擇下載副檔名為.ckpt.safetensors的模型。後者因不具備執行程式碼的能力因此較前者安全。

這裡推薦一些Ivon綜合個人以及網路上的意見覺得不錯的模型。

1.1. 寫實風模型

Stable Diffusion v2.1,簡稱SD,是CompVis與合作團隊發表的模型,不斷更新中。網路上很多模型都基於此模型訓練而來。適合畫真人、動物、自然、科技、建築的圖像,亦學習過歷史上許多畫家的畫風。

Chilloutmix寫實風格的模型,適合畫出2.5次元,融合日韓真人與動漫風格的圖像。

Deliberate基於SD-1.5模型,適合繪製精緻寫實風格的人物、動物、自然風景。

Realistic Vision v1.4,寫實風人物模型。

1.2. 動漫風模型

Anything v4.5適合畫動漫圖,作者宣稱不需要打一堆提示詞也能出漂亮的圖。

Waifu Diffusion v1.4是純粹使用Danbooru圖庫訓練而成,適合畫動漫圖。

Hentai Diffusion適合畫動漫圖,模型已使用大量負向提示詞訓練過以排除不良結果,另提供embeddings方便繪圖時使用。

DreamShaper是基於SD-1.5模型,繪製精細動漫人物與油畫風格的模型。

OrangeMix3,混合多種風格的動漫繪圖模型,偏寫實。

2. 安裝Stable Diffusion WebUI

為什麼要使用指令而不使用懶人一鍵安裝包?因為SD WebUI上游原始碼更新很快,還沒有穩定發表版本更新的模式。為此自行設定環境再用Git下載程式是目前最好的方式,自由度高,未來也方便更新。

如果你因為出錯需要整個重裝SD WeBUI的話,已下載的模型(models資料夾)和擴充功能(extensions資料夾)可以先備份,不需要重新下載。複製SD WebBUI的儲存庫後再將其放回原處。

2.1. 安裝顯示卡驅動程式

請確認電腦已經安裝最新版的顯示卡驅動程式。

Nvidia顯示卡建議用Geforce Experience安裝最新驅動,會順便安裝CUDA。或者你想手動下載CUDA也行。

AMD請用驅動程式自動偵測工具安裝顯示卡驅動。

2.2. 安裝Git和Python

  1. 下載Git版本管理工具。至Git for Windows下載安裝檔,一直下一步即可。

  2. 接著安裝Python。SD WebUI限定Python版本需為3.10.6。請至Python官網下載Python 3.10.6的64位元安裝檔。

  3. 安裝前務必勾選Add Python 3.10 to PATH,將Python加到環境變數。再按Install Now

(進階) 如果你熟悉Python開發的話,改用Anaconda設定Python虛擬環境會更好。點選展開

Anaconda是針對資料科學打造的Python發行版,能管理一部電腦上的多重Python版本。如果之前已經裝過舊版Python,不需要解除安裝。

如果選擇以Anaconda來安裝Stable Diffusion WebUI的依賴套件,那麼日後就不能用Windows終端機執行webui-user.bat,而得使用Anaconda Prompt,除非你將conda加入環境變數。

  1. 安裝AnacondaMiniconda

  2. 搜尋應用程式列表,開啟Anaconda Prompt

  3. 切換至Stable Diffusion WebUI所在資料夾 (需先執行下一節的git clone指令)

1
cd C:\user\user\Desktop\stable-diffusion-webui
  1. 建立Pyhton 3.10.6的虛擬環境
1
conda create --name sdwebui python=3.10.6
  1. 啟動虛擬環境,然後再看下下節設定並啟動webui-user.bat,安裝Python依賴套件。
1
conda activate sdwebui

2.3. 複製Stable Diffusion WebUI儲存庫

  1. 開啟檔案總管,在桌面資料夾按右鍵+Shift,點選在這裡開啟Powershell終端機視窗。如果你C槽空間不足的話,也可以切換到其他硬碟資料夾再開啟終端機。

  2. 輸入以下指令,檢查目前Python版本,輸出應為3.10.6

1
python --version
  1. Nvidia顯示卡用戶輸入以下指令,確認CUDA是否有正確安裝,輸出應含有nvcc: NVIDIA (R) Cuda compiler driver
1
nvcc --version
  1. Nvidia顯卡用戶輸入以下指令,複製Stable Diffusion WebUI的儲存庫。複製完成後保持終端機開著。
1
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

* AMD顯卡用戶請暫時先用這個專門設計給AMD DirectML的分支:

1
git clone https://github.com/lshqqytiger/stable-diffusion-webui-directml.git
  1. 複製完成後,桌面會多出資料夾stable-diffusion-webui。將剛剛下載的存檔點模型放到models\Stable-diffusion資料夾。這個資料夾可放入多個存檔點模型檔。

2.4. 設定啟動引數

顯示卡晶片為Nvidia且VRAM大於8GB的可跳過此步驟。

根據Wiki,有些顯示卡需要修改啟動引數才能正常啟動WebUI。對stable-diffusion-webui資料夾裡面的webui-user.bat按右鍵,以記事本開啟,編輯COMMANDLINE_ARGS=這一行後面的啟動引數。(看不到.bat請點選檔案總管檢視 → 顯示/隱藏 → 顯示副檔名)

若顯示卡VRAM小於等於4GB的話加入COMMANDLINE_ARGS=--medvram --opt-split-attention引數。

電腦RAM(不是VRAM)小於等於8GB的話改加入COMMANDLINE_ARGS=--lowvram --opt-split-attention引數。注意使用--lowvram引數會讓高階顯示卡算圖變很慢。

(下面的不加也可以)

加入--xformers引數可進一步減少VRAM使用量。--no-half-vae降低使用VAE時算出黑圖的機率。

加入--listen引數再開放防火牆7860通訊埠,即可用區域網路其他電腦的瀏覽器存取WebUI。

加入--share引數則會產生一組Gradio網址,讓你可以從外部網路或手機使用WebUI。網址72小時後過期。

2.5. 啟動Stable Diffusion WebUI

初次啟動會下載好幾GB的資料,請保持網路順暢,不要開VPN。如果你所在的地方有網路審查干擾Github連線,請想辦法找代理繞過。

  1. 回到終端機,輸入以下指令啟動SD WebUI:
1
2
cd stable-diffusion-webui
./webui-user.bat
  1. 初次啟動會下載依賴套件,大概要等個30分鐘安裝。如果在此步驟遇到錯誤,請先看常見問題

  2. 啟動完成後會顯示一組網址。執行程式時請勿關閉終端機。

  3. 用瀏覽器開啟:http://127.0.0.1:7860就可進入圖形界面了。執行程式時請勿關閉終端機,執行時若出錯終端機也會輸出訊息。

  4. 要關閉SD WebUI,在終端機按Ctrl+C終止,再關閉視窗。

日後要啟動SD WebUI,只要對資料夾裡面的webui-user.bat按二下即可 (不需要用系統管理員執行)。

2.6. 如何更新Stable Diffusion WebUI

SD WebUI專案原始碼是託管在Github,開發迭代速度很快,建議每週適時更新程式。

但更新頻繁也代表功能容易損壞,因此安全的更新方式如下:

  1. stable-diffusion-webui這個資料夾裡面按右鍵+SHIFT開啟終端機,取得目前分支,會印出一組五位數代碼
1
git rev-parse --short HEAD
  1. 接著拉取最新分支,更新到最新版檔案。
1
git pull
  1. 如果更新後出現Merge branch 'master' of的訊息,請按Esc鍵,輸入:q!退出即可。

  2. 更新後如果有功能壞掉就退回之前的分支版本。

1
git checkout "分支代碼"

3. 內建基本功能

講解提示詞(prompt)寫法,以及介紹SD WebUI內建的基本功能:「文生圖」、「圖生圖」、「內補繪製」、LoRA的用法。

請看Stable Diffusion WebUI基本功能使用教學

4. 擴充功能 Extensions

Stable Difussion WebUI的Extensions頁面能安裝擴充功能,在繪圖的時候整合其他AI技術,或是簡化操作。實用的有界面中文化、控制動作的ControlNet、繪製多個人物的Latent Couple,還可以將SD WebUI跟GIMP、Krita修圖軟體串接在一起使用。

請看Stable Diffusion WebUI實用擴充功能使用教學

5. 訓練自己的模型 Training

警告:跟繪圖不同,訓練模型至少需要10GB的VRAM,也就是RTX3060等級以上的GPU。

訓練自己的小模型有很多好處,例如可以在現有模型的基礎上,讓AI懂得如何繪製更精確的風格或者特定角色。

訓練小模型的具體步驟請看這篇:Stable Diffusion模型訓練教學

6. 延伸閱讀

如果本網站文章對您有幫助,歡迎贊助我。