Stable Diffusion AI算圖使用手冊(2-1):安裝Stable Diffusion WebUI與NVIDIA RTX 40顯示卡最佳化

Stable Diffusion AI算圖使用手冊(2-1):安裝Stable Diffusion WebUI與NVIDIA RTX 40顯示卡最佳化

ADVERTISEMENT

在這篇文章中,筆者將介紹Stable Diffusion WebUI與執行所需相關程式的安裝方式,並以NVIDIA GeForce RTX 40顯示卡為範例進行效能最佳化。

此教學已不適合最新版本,請參考下方新版教學

Stable Diffusion AI算圖使用手冊(2-1 更新):為NVIDIA與AMD顯示卡安裝Stable Diffusion WebUI 1.7版

文章目錄

安裝必要軟體

相關軟體下載點
Git:https://git-scm.com/download/win
Python 3.10:https://www.python.org/downloads/windows/
Miniconda:https://docs.conda.io/en/main/miniconda.html

Stable Diffusion WebUI本體發布於Git網站,並需透過Git程式更新,另外在需要Python執行環境,因此除了安需要安裝Git與Python,此外也建議安裝Miniconda以便透過Conda虛擬環境執行Stable Diffusion。需要注意的是,目前Stable Diffusion WebUI限定需搭配Python 3.10版,因此不能使用撰稿時最新的3.11版。

讀者將上述軟體下載好後,除了在安裝Python的過程中需要勾選「Add Python.exe to PATH」選項外,其餘可以使用預設值。

在安裝完成後,到可以在任意路徑建立1個Stable Diffusion工作用資料夾,但為了確保程式執行順利,建議完整路徑皆僅使用英文。之後在該資料夾內點擊滑鼠右鍵並選擇「Git Bash Here」,接著在跳出的視窗輸入

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

就能下載Stable Diffusion WebUI。未來若要更新程式,則開啟此視窗並輸入「git pull」即可。

接著進到下載的「stable-diffusion-webui資料夾」(即內有launch.py的資料夾),然後建立1個純文字檔將下列文字寫入檔案中,然後將重新命名為RunSD.bat。

@echo off

 

set PYTHON=

set GIT=

set VENV_DIR=

set COMMANDLINE_ARGS=--listen --share --enable-insecure-extension-access

 

call webui.bat

其中set COMMANDLINE_ARGS段落的參數功能如下,如果使用不到可視情況刪除。

set COMMANDLINE_ARGS參數說明:
--listen:讓區域網路中的別台電腦可以連入並操作
--share:產生時效為72小時的網址,讓外部電腦可以連入並操作
--enable-insecure-extension-access:執行不安全延伸程式(使用ControlNet時需啟用此設定)

接下來找到Anaconda Prompt執行檔的位置或捷徑,點擊滑鼠右鍵並選擇以系統管理員身份執行,然後在指令列切換至「stable-diffusion-webui資料夾」並執行RunSD.bat,首次執行會自動安裝相依程式與基礎算圖AI模型。至此即可完成所有安裝手續,以後透過Anaconda執行RunSD.bat,即可使用Stable Diffusion WebUI。

Anaconda指令範例:
F:
cd F:\Stable Diffusion\stable-diffusion-webui
RunSD.bat
(切換至其他硬碟分割區,此處範例為「F槽」
切換至Stable Diffusion WebU資料夾
執行RunSD.bat)

在準備執行環境的前置作業中,我們首先下載Git。建議選擇Windows 64位元安裝版本。

如果不熟悉各項設定,安裝過程全部保留預設設定即可。

下載Python時注意需要選擇3.10版,撰稿時對應的版本為3.10.10。進入下載網頁時先選擇Python 3.10.10。

然後建議選擇Windows 64位元安裝版本。

安裝過程需勾選「Add Python.exe to PATH」,其餘設定可以保留預設值。

Miniconda部分一樣建議選擇Windows 64位元安裝版本。

安裝過程全部保留預設設定即可。

安裝完成後,在工作用資料夾點擊滑鼠右鍵並選擇「Git Bash Here」。

在跳出的視窗輸入「git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git」即可下載Stable Diffusion WebUI主程式。未來若要更新,則一樣開啟此視窗並輸入「git pull」即可。

到「stable-diffusion-webui資料夾」(即內有launch.py的資料夾)建立1個純文字檔,並將下圖文字寫入檔案,然後將檔案重新命名為RunSD.bat。

需要寫入RunSD.bat檔案的文字範例。

接下來找到Anaconda Prompt執行檔的位置或捷徑(圖例為在開始搜尋ana),點擊滑鼠右鍵並選擇以系統管理員身份執行。

在Anaconda視窗中透過指令切換至「stable-diffusion-webui資料夾」並執行RunSD.bat。

首次執行時會自動安裝相依程式,並下載基礎算圖AI模型。

所以工作都順利完成後,會看到程式提示Stable Diffusion WebUI已經啟動,並顯示本地端的連接網址。

透過瀏覽器打開連接網址,就可以看到Stable Diffusion WebUI的操作介面。

RTX 40顯示卡最佳化

為了讓NVIDIA顯示卡的效能最佳化,建議開啟Transformer引擎並安裝RTX 40系列顯示卡CuDNN函數庫(先前顯示卡的效能不會因為安裝函數庫而有影響)。

前者的方式相當簡單只需在RunSD.bat檔案的set COMMANDLINE_ARGS參數段落加上「--xformers」即可。

而後者可以下載支援CUDA 11的CuDNN 8.6安裝壓縮檔,將其解壓縮後,把「\cudnn-windows-x86_64-8.6.0.163_cuda11-archive\bin」資料夾中所有副檔名為.dll的檔案複製到「stable-diffusion-webui資料夾」中的「\venv\Lib\site-packages\torch\lib」。

完成上述步驟後,就能提升算圖過程的效率。

在RunSD.bat檔案加上「--xformers」參數即可。

CuDNN函數庫則需下載並解壓縮後,製到「stable-diffusion-webui資料夾」中的「\venv\Lib\site-packages\torch\lib」。

在完成安裝手續後,雖然已經可以開始使用,但為了強化算圖的效果,請繼續跟著筆者一起瞭解如何安裝更多模型。

回到Stable Diffusion AI算圖系列文章目錄

國寶大師 李文恩
作者

電腦王特約作者,專門負責硬派內容,從處理器、主機板到開發板、零組件,尖端科技都一手包辦,最近的研究計畫則包括Windows 98復活與AI圖像生成。

使用 Facebook 留言
國寶大師 李文恩
2.  國寶大師 李文恩 (發表於 2023年4月24日 15:34)
※ 引述《Arvin Lin》的留言:
> 請問我輸入RunSD.bat 但沒有反應,要如何解決

請問你有先透過指令切換至「stable-diffusion-webui資料夾」嗎?(即內有launch.py的資料夾)
軒轅皇龍
3.  軒轅皇龍 (發表於 2023年5月13日 15:23)
請問我在切換過去資料夾之後,輸入RunSD.bat,都一直顯示RunSD.bat不是內部或外部命令 可執行的程式或批次檔,要如何解決?
國寶大師 李文恩
4.  國寶大師 李文恩 (發表於 2023年5月14日 18:32)
※ 引述《軒轅皇龍》的留言:
> 請問我在切換過去資料夾之後,輸入RunSD.bat,都一直顯示RunSD.bat不是內部或外部命令 可執行的程式或批次檔,要如何解決?

RunSD.bat檔案需要自行建立,請問你有參考本文教學,建立該檔案並填寫正確內文嗎?
軒轅皇龍
5.  軒轅皇龍 (發表於 2023年5月14日 18:59)
※ 引述《國寶大師 李文恩》的留言:
> ※ 引述《軒轅皇龍》的留言:
> > 請問我在切換過去資料夾之後,輸入RunSD.bat,都一直顯示RunSD.bat不是內部或外部命令 可執行的程式或批次檔,要如何解決?
>
> RunSD.bat檔案需要自行建立,請問你有參考本文教學,建立該檔案並填寫正確內文嗎?
就是照著教學內容打的跑不出來才想請教...
軒轅皇龍
6.  軒轅皇龍 (發表於 2023年5月15日 10:49)
※ 引述《國寶大師 李文恩》的留言:
> ※ 引述《軒轅皇龍》的留言:
> > 請問我在切換過去資料夾之後,輸入RunSD.bat,都一直顯示RunSD.bat不是內部或外部命令 可執行的程式或批次檔,要如何解決?
>
> RunSD.bat檔案需要自行建立,請問你有參考本文教學,建立該檔案並填寫正確內文嗎?
您好,我已經找到問題在哪了,就是.bat後面還多了一個.txt的檔案,
國寶大師 李文恩
7.  國寶大師 李文恩 (發表於 2023年5月15日 10:55)
※ 引述《軒轅皇龍》的留言:
> ※ 引述《國寶大師 李文恩》的留言:
> > ※ 引述《軒轅皇龍》的留言:
> > > 請問我在切換過去資料夾之後,輸入RunSD.bat,都一直顯示RunSD.bat不是內部或外部命令 可執行的程式或批次檔,要如何解決?
> >
> > RunSD.bat檔案需要自行建立,請問你有參考本文教學,建立該檔案並填寫正確內文嗎?
> 您好,我已經找到問題在哪了,就是.bat後面還多了一個.txt的檔案,

嗯嗯,主要的問題應該是副檔名設定錯誤,修正過來應該就可以執行了吧
發表回應
謹慎發言,尊重彼此。按此展開留言規則