在Windows部署Stable Diffusion

opendotnet 發佈 2024-01-01T14:52:19.167519+00:00

Part1前言分享玩AI繪畫Stable Diffusion工具Stable Diffusion是一個AI 繪圖軟體 (開源模型),可本地部署,可切換多種模型,且新的模型和開源庫每天都在更新發布,最重要的是免費,沒有繪圖次數限制。

Part1前言

分享玩AI繪畫Stable Diffusion工具

Stable Diffusion是一個AI 繪圖軟體 (開源模型),可本地部署,可切換多種模型,且新的模型和開源庫每天都在更新發布,最重要的是免費,沒有繪圖次數限制。

考慮到因為沒有生成數量的限制,不用花錢,生成時間快,不用排隊,自由度高,插件豐富,功能眾多,可以調試和個性化的地方也更多。

所以我迫不及待地把Stable Diffusion裝在自己電腦上,供我在平時無聊的時候隨便玩玩。我又想畫畫又沒有個畫畫的本事,只能圖個心理滿足。現在藉助AI繪畫工具,我也能滿足體驗一番畫畫的衝動,將腦海中的靈感變成圖片。

先放一張圖欣賞:

Part2硬體需求

本地化部署運行雖然很好,但是也有一些基本要求,可以先對系統進行檢查,看看顯卡是否支持

1顯卡(GPU)

  1. 需要用到 cuda 架構,推薦使用 N 卡。(目前已經有了對 A 卡的相關支持,但運算的速度依舊明顯慢於 N 卡,參見:

Install and Run on AMD GPUs · AUTOMATIC1111/stable-diffusion-webui Wiki · Github)

  1. 顯存越大越好。顯存越大,可以生成的圖片解析度就越大,最低配置4GB顯存,基本配置6GB顯存,推薦配置8GB顯存以上

  2. 性能越強出圖越快

2內存

內存16G或者以上,至少有一個128G以上的SSD固態硬碟。

3環境

最低要求win10以上

提醒:

  1. 如果不知道自己電腦配置,可以在Windows【開始】點滑鼠右鍵,選擇【任務管理器】,在【性能】一欄中,可以到各項信息或者可以下載魯大師等相關軟體,點擊硬體檢測,就能看到顯卡,顯存,CPU,內存等信息。

  2. 網絡波動,有些網頁會打不開,有些下載很慢,在這裡可能需要會科學上網

如果滿足相關軟硬體要求,請繼續往下看 (當然如果還是想擁有自建的SD,也可以通過購買雲伺服器等方式搭建)

Part3軟體需求

git: https://Gitforwindows.org

python :https://www.Python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe

anaconda:https://www.anaconda.com/ (可選)

41、安裝基礎軟體

1.1.安裝git

https://gitforwindows.org (已安裝的可忽略), 下載,一直下一步便可。

1.2 安裝python

這裡SD WebUI限定版本為3.10.6,可以到python官網下載對應版本:https://www.python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe

安裝前務必勾選Add Python 3.10 to PATH,將Python加到環境變量中。

已經安裝的,可以通過「cmd」,回車,在命令行里輸入:

python --version

來檢測是否安裝成功

1.3 安裝顯卡驅動程序

確認本機已經安裝最新的顯卡驅動程序,主要是用來跑算法的依賴程序

這裡用的是NVIDIA顯卡,所以通過安裝cuda依賴程序

https://developer.nvidia.com/cuda-toolkit-archive

在命令行窗口輸入 nvidia-smi,查看本機cuda版本,再下載對應的cuda版本

注意:如果輸入nvidia-smi報錯,請將命令行的路徑切換到 C:\Program Files\NVIDIA Corporation\NVSMI 再試

operating system: windows

Version: 選你自己的作業系統版本

Installer Type: 安裝類型,這裡可以選exe離線包,會快些

52、安裝Stable-Diffusion-WebUI

(網絡不好,可以科學上網)

2.1 下載項目源碼

使用 git 下載項目源碼,假如我們要將 stable-diffusion-webui 放在D盤,在D盤的文件地址欄,輸入cmd回車,再輸入

git clone https://GitHub.com/AUTOMATIC1111/stable-diffusion-webui.git
  1. 本機找一個空間比較大的盤,將項目克隆到自建文件夾中

  2. 如果出現問題:OpenSSL SSL_read: Connection was reset, errno 10054,

    解決方法:關閉git的https證書驗證,再繼續克隆代碼

     git config --global http.sslVerify false

2.2 運行

方式一

找到上面下載好的文件夾,找到 webui-user.bat,雙擊運行

等待下載。。。(可能需要科學上網,或需要通過修改文件,使用國內鏡像源)

一切順利的話,接下來會下載幾個G的東西,中間如果卡住,還是關閉命令行、重新打開 webui-user.bat

當你看到這個網址的時候,表示已經安裝成功了,並已經啟動了服務

把http://127.0.0.1:7860複製到瀏覽器中打開,進入Stable Diffusion界面

方式二

如果你熟悉Python開發的話,改用Anaconda設定Python虛擬環境會更好。

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

1. 安裝Anaconda

https://www.anaconda.com/

安裝Stable Diffusion WebUI的依賴套件,同時將conda加入環境變數。

  1. 如果你沒加conda加入環境變量,那麼你需要在在開始菜單輸入Anaconda3 下,打開 Anaconda Powershell Prompt (Anaconda3)或者Anaconda Prompt (Anaconda3)

  2. 建立Pyhton 3.10.6的虛擬環境,輸入:

 conda create --name sdwebui python=3.10.6

2. 創建項目環境

使用conda 創建項目環境

切換上一步下載到本地的Stable Diffusion WebUI所在資料夾

conda create --name stable-diffusion-webui python=3.10

3. 激活項目環境

conda activate stable-diffusion-webui

4. 啟動webui-user.bat

安裝Python依賴套件。

找到之前存放的位置文件夾stable-diffusion-webui,找到 webui-user.bat,點擊執行

執行後,將會自動下載stable-diffusion相關依賴,此步驟需要的時間較長,請確保網絡穩定,耐心等待

5. 安裝成功後

跟方式一一樣,會命令行窗口看到網址,把http://127.0.0.1:7860複製到瀏覽器中打開,進入Stable Diffusion界面

後續每次使用stable-diffusion,找到之前存放的位置文件夾stable-diffusion-webui,找到 webui-user.bat,雙擊運行即可

執行程序使用過程中請勿關閉終端,執行若出錯終端也會輸出對應信息

63、安裝中文語言包

項目地址:GitHub - VinsonLaro/stable-diffusion-webui-chinese: stable-diffusion-webui 的漢化版本

安裝語言包方法

方式一:通過WebUI拓展進行安裝

  1. 打開stable diffusion webui,進入"Extensions"選項卡

  2. 點擊"Install from URL",注意"URL for extension's git repository"下方的輸入框

  3. 粘貼或輸入本Git倉庫地址https://github.com/VinsonLaro/stable-diffusion-webui-chinese

  4. 點擊下方的黃色按鈕"Install"即可完成安裝,然後重啟WebUI(點擊"Install from URL"左方的"Installed",然後點擊黃色按鈕"Apply and restart UI"網頁下方的"Reload UI"完成重啟)

  5. 點擊"Settings",左側點擊"User interface"界面,在界面里最下方的"Localization (requires restart)",選擇"Chinese-All"或者"Chinese-English"

  6. 點擊界面最上方的黃色按鈕"Apply settings",再點擊右側的"Reload UI"即可完成漢化

方式二:直接複製翻譯好的本地化模板

  1. 在任意目錄下使用git clone https://github.com/VinsonLaro/stable-diffusion-webui-chinese

  2. 進入下載好的文件夾,把"localizations"文件夾內的"Chinese-All.json"和"Chinese-English.json"複製到"stable-diffusion-webui\localizations"目錄下

  3. 點擊"Settings",左側點擊"User interface"界面,在界面里最下方的"Localization (requires restart)",選擇"Chinese-All"或者"Chinese-English"

  4. 點擊界面最上方的黃色按鈕"Apply settings",再點擊右側的"Reload UI"即可完成漢化

Part4常見問題

71、RuntimeError

RuntimeError: CUDA Out of memory

顯卡的VRAM不足。Stable Diffusion WebUI的顯卡最低要求為4GB,要無壓力的玩建議8GB以上。

開啟webui-user.bat,在COMMANDLINE_ARGS後面加入--mdevram或--lowvram引數,降低VRAM使用量。如果還是在生圖時出現此錯誤,建議降低解析度,或是買張更好的顯卡,或是改用Google Colab。

82、連接失敗

fatal: unable to access Recv failure: Connection was reset

網絡問題,可能需要科學上網或改DNS或需要通過修改文件,使用國內鏡像源,但是有時只將部份網址換成「國內源」是不夠的,因為Stable Diffussion WebUI還會嘗試從HuggingFace等處下載臉部模型。有可能還是通過科學方式,避免連接中斷。

93. 空間不足

OSError: [Errno 28] No space left on device

硬碟或存儲文件夾沒空間了,需要通過清理空間後,刪除stable-diffusion-webui中的venv文件夾,再重新執行webui-user.bat重裝。

  1. 有時候GitHub下載會比較慢,要耐心等待,如果下載失敗,可以晚點再重新執行。

  2. 你可以到Github對應的ATOMATIC1111儲存庫的Issue查看別人遇過的錯誤信息。

如果遇到了真正無法解決的錯誤,也可以通過Issue提Bug Report,填寫自己安裝的異常問題。

  1. 耐心,多嘗試,多搜索查閱資料。很多問題踩過坑之後,相信是可以解決的。

Part5欣賞

Part6說明

覺得麻煩的同學可以使用整合包,解壓即用。網上有很多相關大神做了整合包,經常更新整合包,也方便安裝使用,只需將啟動器複製到下載倉庫的目錄下即可,更新管理會更方便。(自行網上搜索)

Part7附錄

Stable Diffusion Webui:AUTOMATIC1111/stable-diffusion-webui: Stable Diffusion web UI (github.com)

Stable Diffusion Webui 文檔:Home · AUTOMATIC1111/stable-diffusion-webui Wiki (github.com)

關鍵字: