前言
本篇文章介紹如何在windows本地部署stable diffusion web ui,并且結合cpolar內網穿透實現公網環境遠程訪問。
Stable Diffusion(簡稱SD)是ai繪畫領域的一個核心模型,它目前也是一個完全開源的項目(模型、代碼、訓練數據、論文、生態等全部開源),可拓展性強、 出圖效率高、 數據安全保障,這使得其能快速構建強大繁榮的上下游生態,并且吸引了越來越多的ai繪畫愛好者加入其中。
相比于集成在網絡平臺的SD或者其他AI繪畫平臺來說,自部署平臺沒有生成數量的限制,不用花錢,不用被NSFW約束,生成時間快,不用排隊,自由度高,而且功能完整,插件豐富,可以調試和個性化的地方也更多;更穩定,也更容易讓SD變成生產力或者商業化使用。既然這樣,那就自力更生,在本機上自己部署一個,可以隨心所欲地玩圖、玩圖。
Stable Diffusion只是提供一個模型,提供基礎的文本分析、特征提取、圖片生成這些核心功能,但自身是沒有可視化UI的,用起來就是各種文件加命令行。原始的Stable Diffusion程序(腳本)只能以命令行的方式進行,參數設置很不方便,而且每次調用時,需要事先加載預訓練模型,圖像生成完成后會釋放內存中的模型并結束進程,運行效率低,交互操作極其麻煩。
開源的 Stable Diffusion 社區受到了廣泛民間開發者大力支持,眾多為愛發電的程序員自告奮勇的為其制作方便操控的 GUI 圖形化界面。
那么接下來就教大家如何在WIndiows本地來部署Stable Diffusion Web UI。

1. 本地部署Stable Diffusion Web UI
本篇文章介紹兩種本地部署方式,一種是整合包安裝,另一種是手動安裝。 安裝環境:windows10
1.1 整合包安裝
首先介紹第一種秋葉整合包安裝,Stable Diffusion秋葉整合包是中國大神秋葉基于Stable Diffusion WebUI內核開發的整合包,內置了與電腦本身系統隔離的python環境和git(包含了第三部分需要下載和安裝的依賴項、github依賴包、預訓練模型以及相當多的插件)。可以忽略網絡需求和Python環境的門檻,讓更多人輕松地使用Stable Diffusion WebUI。超簡單一鍵安裝,無任何使用門檻,完全免費使用,支持Nvdia全系列顯卡。
(1)配置要求:
系統:Windows 10及以上系統顯存最低4G,建議使用Nvidia 2060顯卡,顯存6GB以上。內存至少是8GB,而配備16GB或者以上內存,你會有更好的使用體驗
(2)下載文件: 下載到本地,最好不要有中文目錄,整合包地址鏈接:鏈接:https://pan.baidu.com/s/1uFmhO8jwdmseFjRq03YSbg?pwd=6666 提取碼:6666
(3)解壓文件夾到本地,點擊啟動器

(4)點擊一鍵啟動

可以看到出現了命令行

稍等等幾秒鐘,會自動跳到Web UI頁面。

然后就可以在文本框中,輸入指令來進行AI生圖了。
1.2 手動安裝Stable Diffusion Web UI
(1) 下載文件和修改文件
點擊鏈接下載文件:https://huggingface.co/CompVis/stable-diffusion-v-1-4-original
將文件重命名為 model.ckpt
(2)下載Anaconda: 首先我們需要安裝一個Python的虛擬環境的管理器——Anaconda,給我們的Stable Diffusion創建一個獨立的python3.10.6環境
下載地址:https://repo.anaconda.com/archive/
下載完成后,打開Anaconda的終端,創建一個名為 stablediffusion 的環境,指定python版本3.10.6
代碼語言:JavaScript代碼運行次數:0運行復制
conda create -n stablediffusion python=3.10.8
查看是否創建環境成功
代碼語言:javascript代碼運行次數:0運行復制
conda env list
創建成功后,激活虛擬環境
代碼語言:javascript代碼運行次數:0運行復制
active stablediffusion
(3)下載git:https://git-scm.com/
選擇Windows最新版本安裝即可

(4) 下載 stable-diffusion webui github 鏈接
在Anaconda命令行中輸入代碼語言:javascript代碼運行次數:0運行復制
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
代碼語言:javascript代碼運行次數:0運行復制
運行之后 git 會將文件下載到當前文件夾中

將 model.ckpt 放到 models 文件夾下 將 repositories 文件夾和 GFPGANv1.3.pth 放到 webui 根目錄下和 webui.bat 同一個文件夾
(5)在conda虛擬環境命令行中進入到根目錄中打開webui-user.bat

等一會之后,自動打開Stable Diffusion Web UI,本地地址為:127.0.0.1:7860
之后就可以在文本框中輸入指令并生成圖片。

目前我們在本地成功部署了Stable Diffusion Web UI,但是如果我們想實現不在局域網下,在公網能夠遠程訪問Stable Diffusion Web UI的話,我們就可以使用Cpolar內網穿透來實現公網隨時隨地訪問了!免去了復雜得本地部署過程,只需要一個公網地址直接就可以訪問。
接下來就教大家如何安裝Cpolar并且將本地部署的Stable Diffusion Web UI實現公網訪問。
2. 安裝Cpolar內網穿透
下面是安裝cpolar步驟:
點擊進入cpolar官網,點擊免費使用注冊一個賬號,并下載最新版本的Cpolar

登錄成功后,點擊下載Cpolar到本地并安裝(一路默認安裝即可)本教程選擇下載Windows版本。

Cpolar安裝成功后,在瀏覽器上訪問http://localhost:9200,使用cpolar賬號登錄,登錄后即可看到Cpolar web 配置界面,結下來在web 管理界面配置即可。

接下來配置一下 Stable Diffusion Web UI 的公網地址,
登錄后,點擊左側儀表盤的隧道管理——創建隧道,
創建一個 Stable Diffusion Web UI 的公網http地址隧道
隧道名稱:可自定義命名,注意不要與已有的隧道名稱重復協議:選擇http本地地址:7860 (本地訪問的地址)域名類型:免費選擇隨機域名地區:選擇China Top

隧道創建成功后,點擊左側的狀態——在線隧道列表,查看所生成的公網訪問地址,有兩種訪問方式,一種是http 和https

使用上面的Cpolar https公網地址,在手機或任意設備的瀏覽器進行登錄訪問,即可成功看到 Stable Diffusion Web UI界面,這樣一個公網地址且可以遠程訪問就創建好了,使用了Cpolar的公網域名,無需自己購買云服務器,即可到公網訪問 Stable Diffusion Web UI了!
3. 實現公網訪問Stable Diffusion Web UI
我們用剛才cpolar生成的公網地址,打開一個新的瀏覽器復制粘貼,可以看到進入到了Stable Diffusion Web UI主界面。

小結
如果我們需要長期進行團隊協作的話,由于剛才創建的是隨機的地址,24小時會發生變化。另外它的網址是由隨機字符生成,不容易記憶。如果想把域名變成固定的二級子域名,并且不想每次都重新創建隧道來訪問Stable Diffusion Web UI,我們可以選擇創建一個固定的http地址來解決這個問題。
4. 固定Stable Diffusion Web UI 公網地址
我們接下來為其配置固定的HTTP端口地址,該地址不會變化,方便分享給別人長期查看你的博客,而無需每天重復修改服務器地址。
登錄cpolar官網,點擊左側的預留,選擇保留二級子域名,設置一個二級子域名名稱,點擊保留,保留成功后復制保留的二級子域名名稱。

保留成功后復制保留成功的二級子域名的名稱

返回登錄Cpolar web UI管理界面,點擊左側儀表盤的隧道管理——隧道列表,找到所要配置的隧道,點擊右側的編輯

修改隧道信息,將保留成功的二級子域名配置到隧道中
域名類型:選擇二級子域名Sub Domain:填寫保留成功的二級子域名
點擊更新(注意,點擊一次更新即可,不需要重復提交)

更新完成后,打開在線隧道列表,此時可以看到公網地址已經發生變化,地址名稱也變成了固定的二級子域名名稱的域名

最后,我們使用固定的公網https地址在任何瀏覽器打開訪問,可以看到訪問Stable Diffusion Web UI成功了這樣一個固定且永久不變的公網地址就設置好了。
