【手把腳教程】從零到1,stable-diffusion騰訊云部署
本文目的:從零到1記錄stable-diffusion在云服務(wù)器上的部署步驟,努力在前人的基礎(chǔ)上,規(guī)避部分可能遇到的問題。至于搭建完成后使用優(yōu)化,那就另一個(gè)故事了
首先感謝JASO前輩的手把手教程。在前輩的基礎(chǔ)上,我從頭到尾走了一遍并補(bǔ)充了一些自己碰到的問題。
一、服務(wù)器購(gòu)買
鑒于本地的就是一個(gè)辦公本,沒有獨(dú)顯,跑起來肯定卡。而且這也是玩票性質(zhì)的,所以就買個(gè)服務(wù)器吧,用完就扔~~~~
云服務(wù)商的選擇上,很普通,大家隨意選擇騰訊云/阿里云/移動(dòng)云/華為云....都可以。我是之前用的騰訊云,在騰訊云上搶的GPU云服務(wù)器(https://cloud.tencent.com/act/pro/gpu-study?from=10680),每天10點(diǎn)開始(準(zhǔn)點(diǎn)去基本能搶到),45元/15天,夠用了。配置如下

注意,預(yù)裝鏡像要選擇“Ubuntu Server 18.04.1”,之后系統(tǒng)會(huì)默認(rèn)自動(dòng)安裝GPU驅(qū)動(dòng)。如果當(dāng)時(shí)搶購(gòu)太緊張了,也可以后面重裝系統(tǒng)下(必要的歸零操作是菜鳥必須,都怪云服務(wù)器的重裝系統(tǒng)太方便了,全過程我重裝了5次,。。。。)。


可以買好云服務(wù)器后,就重裝一次,以免莫名其妙的問題
二、環(huán)境配置
1、顯卡驅(qū)動(dòng)安裝
先等服務(wù)器自己安裝顯卡驅(qū)動(dòng)。預(yù)計(jì)等個(gè)5分鐘。等不及的可以通過一下命令看下是否完成

2、更新Python到python3.10
參考文檔(https://cloud.tencent.com/developer/article/1819871)
服務(wù)器自帶的python是3.6.9,但直接使用中會(huì)出現(xiàn)莫名其妙的問題,經(jīng)過探索,需要將python更新,用參考文檔中的方法一即可
其中第三步命令要進(jìn)行替換
原命令:
修改后:
完成標(biāo)志如下:

3、將更新后的python3.10設(shè)置成默認(rèn)
參考文檔(https://www.cnblogs.com/STangQL/p/15647583.html)
安裝了3.10后,我們系統(tǒng)中有多個(gè)python版本,要將我們需要的3.10版本設(shè)置成默認(rèn)。
使用命令
會(huì)列出所有的python版本,但你現(xiàn)在高概率會(huì)出現(xiàn)“update-alternatives: error:no alternatives for python”,就說你的版本沒有錄入。那就補(bǔ)充下好了。
注意:要同時(shí)補(bǔ)充python和python3。
不想研究的,直接復(fù)制如下代碼即可
驗(yàn)證方法

4、創(chuàng)建python3的虛擬環(huán)境
代碼如下
三、部署webui
1、克隆庫(kù)
當(dāng)你看到“done”的時(shí)候就OK了
2、修改launch.py文件
進(jìn)入到對(duì)應(yīng)的文件夾
修改launch.py的代碼
主要兩個(gè)目的:
①前輩說
由于騰訊源沒有“torch==1.13.1+cu117“,導(dǎo)致需要從“--extra-index-url”的“https://download.pytorch.org/whl/cu117”中進(jìn)行下載,速度非常慢。故此處對(duì)launch.py代碼進(jìn)行修改
找到torch_command?=?os.environ.get('TORCH_COMMAND',?"pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117"),并修改
修改后:torch_command = os.environ.get('TORCH_COMMAND', "pip install torch==1.13.1 torchvision==0.14.1")
修改方法:輸入“i”,再移動(dòng)到對(duì)應(yīng)位子上進(jìn)行刪除
②因?yàn)楸娝苤木W(wǎng)絡(luò)原因,要對(duì)github的連接做處理
在每個(gè)? https://github.com/? (就在下面幾行,注意每一個(gè)都要改)開頭的鏈接前面添加? ?https://ghproxy.com/? ?,變成如圖所示的? https://ghproxy.com/https://github.com/的樣子
兩步修改完成后的樣子如下

然后再按“esc”鍵,退出編輯
輸入“:wq”,回車,保存并推出。
不確認(rèn)自己有沒有修改成功的,可以cat看一下
3、下載chilloutmix模型
進(jìn)入stable-diffusion-webui/models/Stable-diffusion文件夾,下載chilloutmix模型到本地。
4、刪除venv文件夾(必要的歸零動(dòng)作)
之前按照前輩的方法,直接開始./weiui.sh。結(jié)果出現(xiàn)以下報(bào)錯(cuò),查了半天,簡(jiǎn)單除暴的刪除就行了。

步驟如下:
在stable-diffusion-webui文件夾中刪除venv文件

5、重頭戲./webui.sh
因?yàn)槭窃品?wù)器,為了完成后可以遠(yuǎn)程訪問,對(duì)命令做如下修改

電腦訪問http://云主機(jī)ip:7860
就可以Happy了~
最后的成果

至于“stable-diffusion”怎么玩,那就是另外一個(gè)故事了