首頁 新聞 人工智能 圖像任你生!自建 Stable Diffusion WebUI 圖像生成平台

圖像任你生!自建 Stable Diffusion WebUI 圖像生成平台

圖像任你生!自建 Stable Diffusion WebUI 圖像生成平台

圖像生成是近月 AIGC 其中一個熱門課題,很多人都會利用 Discord 或者網上提供的服務,不過要不是要輪候,就是要付費,有時候更會有「內容限制」,玩起來不夠爽。其實只要您有一部遊戲電腦,要在家中自建圖像生成平台不是甚麼難事!

建立了自己的圖像生成平台之後,就可以隨時無限生成圖像了,ムフフ⋯⋯

本文要介紹的是其中一款受歡迎圖像生成引擎 Stable Diffusion(SD)的網頁版介面 AUTOMATIC 1111 Stable Diffusion WebUI(WebUI)的安裝步驟,完成後大家可以在網上下載生成不同風格圖像的模型和修改模組(Embedding、LoRA 等),隨意無限量生成圖像。

在家中電腦生成圖像,需要安裝的程式包括:

  • git
  • Python 3.10.x
  • AUTOMATIC 1111 Stable Diffusion WebUI
  • 圖像生成模型

以下將會介紹備有 NVIDIA 顯示卡的圖像生成平台架設步驟,當然,AMD Radeon 顯示卡一樣可以架設圖像生成平台。本篇教學以配備 AMD Ryzen 9 5900HX CPU、NVIDIA RTX 3080 獨顯和 32GB DDR4 RAM 的 Lenovo Legion 7 電競筆電來安裝,OS 為 Windows 11 22H2。

電腦最低要求

記憶體:16GB 或以上
顯示卡:NVIDIA GTX 7xx,最少 2GB VRAM(AMD Radeon 顯示卡亦可)
操作系統:Windows 7/8/10/11+、Mac M1/M2 或 Linux
儲存空間:10GB 或以上(包括模型)

第一部:安裝 git

git 是軟件版本管理工具,在安裝和日後維護 WebUI 都經常被調用。安裝時除了指定 Notepad 作為預設編輯器、實驗性功能全部不安裝之外,其他的設定只要選用預設值即可。

git 下載網址:按此

下載 64-bit 版本
選擇 Notepad 作為 git 的預設編輯器

第二部:安裝 Python 3.10.x

Python 是 SD 的執行環境,但要注意雖然 Python 3.11 經已推出一段時間,不過 WebUI 主要根據 Python 3.10 來設定,以其他版本來安裝會在執行時出現這個那個無法安裝的問題。如果不想有麻煩的話,最好是安裝 Python 3.10.x 版本。

撰文時 Python 3.10 最新的版本是 3.10.10,安裝時要注意在第一個畫面勾選「Add python.exe to PATH」,將 Python 安裝在執行路徑上,否則 WebUI 在執行期間可能會出現找不到 Python 的情況。其他就以預設值安裝即可。

Python 3.10.x 下載網址:按此

雖然 Python 3.11 已推出一段時間,但為免麻煩仍然要安裝 Python 3.10。
選擇 Windows Installer (64-bit)
安裝時要注意要在這個畫面勾選「Add python.exe to PATH」

第三部:安裝 CUDA 工具箱

下載 CUDA 工具箱網址:按此

按您的系統選擇,就會自動揀選合適的版本給您。
可能是未趕及更新安裝程式,如果您安裝最新版本 NVIDIA Game Ready 驅動程式會彈出這樣的警告,按「CONTINUE」繼續,其他的用預設值安裝即可。

第四部:安裝 Stable Diffusion WebUI

WebUI 是 SD 的網頁操作介面,免除手動輸入指令的麻煩,而且安裝模型、模組的方法簡單,只要把檔案拷貝到指定目錄內即可。日後想深入研究如自行訓練模型、LoRA,以至 OpenPose 自訂動作等都可以在這個介面搞定。

Step 1. 先在電腦裡找個有 10GB 空間的地方,開設一個名為「Stable Diffusion」的文件夾集中收藏有關 SD 的檔案(名字任意);

Step 2. 在搜尋列輸入「cmd」找尋命令列工具,並開啟它;

Step 3. 用指令移動到剛開設的文件夾位置;

Step 4. 輸入以下指令:「git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git」,就會從 GitHub 下載 WebUI 到當前文件夾;

第五部:按系統規格設定 Stable Diffusion WebUI

接著的設定要視乎您所用的顯示記憶體 VRAM 數量來調整圖像生成時所耗用的資源。

Step 1. 在搜尋列輸入「dxdiag」找尋 DirectX 除錯工具並開啟它;

Step 2. 等一會,就會顯示電腦的規格資料,當中「Display 2」一頁就會列出顯示卡的規格,「Display Memory」就是 VRAM 數量;

知道 VRAM 有多少之後,就按情況來選擇以下啟動參數:

  • 2GB 或以下 VRAM:--lowvram
  • 2-6GB:--medvram
  • 6GB 以上 VRAM:不需要額外參數

由於 RTX 3080 筆電版有 16GB VRAM,非常夠用,所以我們加入更多額外指令來提升畫質:

  • --xformers:加速推算
  • --precision full:評估時所用的精度
  • --no-half:不要切換模型至 16-bit 單精度浮點數
  • --autolaunch:程式啟動後立即開啟 WebUI 網頁

決定啟動參數之後,就要用 Notepad 來開啟 WebUI 文件夾裡的「webui-user.bat」檔案,然後將參數添加到「set COMMANDLINE_ARGS=」之後儲存起來即可。

右擊 webui-user.bat 選擇 Edit 即可用 Notepad 來編輯。
將參數添加到「set COMMANDLINE_ARGS=」之後。

第六部:下載模型

接下來只要下載喜歡的模型,放在指定文件夾裡即可生成圖像。以下是一些著名的模型,大家大可以先下載來試試看,往後再在網上找尋其他模型來玩。

(備註:安裝 Anything 時要注意可以同時下載一個用來微調容貌和眼睛的 VAE(變量自動編碼器)anything-v4.0.vae.pt,把它改名為 anything-v4.5.vae.pt 與 anything-v4.5-pruned.safetensors 放在一起即可。)

Stable Diffusion 就是元祖的模型,當然是「人畜無害」的。

以上下載的都是模型,只要把它們搬到 WebUI 文件夾下面,「models\Stable-diffusion」文件夾即可。當中有些模型的文件名稱會加入「-pruned」字樣的,表示那是經過清理的版本,檔案會較小。使用前應將檔名中「-pruned」的部分刪除。

如果模型檔名附有「-pruned」字樣,大可將那部分刪除。

除了以上模型之外,大家還可以到 Hugging FaceCivitAI 這些著名模型庫裡找尋更多模型。

Hugging Face 有排行榜,列出現時最多人下載的模型。
CivitAI 本身就是以流行程度來排列,而且有很多圖片參考,部分更附有生成的「咒語」供大家參考,非常有用。

第七部:生成圖像

到這裡 WebUI 圖像生成平台已經可以使用,大家只要雙擊第四部中修改過的 webui-user.bat 檔,就會打開一個命令列視窗,那就是 WebUI 的本體。

首次執行時,程式會自動下載很多模組。

首次執行時,會安裝一系列必要的模組。由於我們在啟動參數加入了 –autolaunch,所以完成後期安裝和啟動後,就會自動開啟 WebUI 網頁供大家使用。大家要記住命令列視窗才是程式的本體,所有進度和錯誤都會在那裡列出,網頁只是操作介面。如果操作時覺得程式呆了,就應該查看命令列視窗。

介面說明

AUTOMATIC 1111 Stable Diffusion WebUI 介面
  1. 當前選用的模型
  2. 正向提示,是您希望圖中「有」的元素
  3. 反向提示,是您希望圖中「沒有」的元素
  4. 取樣方法,對產生的圖像細節有很大影響
  5. 取樣次數,愈大愈精密,但也愈耗資源。可以由 28 開始,RTX 40 系列顯示卡生成大型圖像時可用到 100。
  6. 修正面部問題
  7. 修正高解像度圖像可能出現古怪情景
  8. 決定 AI 有多遵從您的提示生成圖片,愈低愈「亂來 有驚喜」。最高不可以大於 15。
  9. 種子值,生成圖像的隨機值。即使模型和所有參數相同,這個數不同所產生的圖像都會有很大差別。相對地,如果所使用模型、參數以至種子值都一樣,生成的圖像的變化就會很少。右邊的骰子是將種子值設為隨機(-1),而綠色循環標誌就可以重用上一張圖片的種子值,方便鎖定感到滿意的圖片加以微調。
在工具列視窗按「Ctrl+C」即可關閉程式。

首次使用時大家大可到 CivitAI 參考一下網友貼上的參考圖片,當中如果右下角有「i」字標誌,就可以點擊它查看當中的參數作參考。要留意是圖像尺寸也會對生成的影像有重大影響,參考別人生成的圖片時別忘留意圖像的尺寸。

初次入門使用大可到 CivitAI 參考其他網友的作品參數來學習。

SD 博大精深,網上還有大量模型和修飾模組等。這篇教學只簡單介紹了自建圖像生成平台的方法,只是一個起步點,日後有機會再跟大家討論更多 SD 的技巧。

Exit mobile version