背景
前两天在某公众号的软文刷到了AI绘画领域最新的ChilloutMix模型。大概是下面这张图的效果:
激动的心颤抖的手,学了这么多年计算机,就是为了走在时代前沿,事到如今终于可以活学活用了
然而自己的电脑配置完全不够用,咋整?开台GPU云服务器吧。
踩了无数坑之后,终于总结出此流程。力求以最简单的方式,快捷的在云服务器部署chilloutmix,以及lora,以及各种其他绘画模型。
在腾讯云实测,从创建机器到完成部署,总时长在30分钟左右。
废话不多说,下面进入正题
一. 购买服务器(3-5分钟)
首先需要购买一台腾讯云的GPU服务器。GPU卡型本次选择“T4”,性能完全够用,对应“GN7”机型。我是从GPU实验室活动页抢购到的折扣机型(GPU实验室)
注意,点击立即购买后,预装镜像要选择“Ubuntu Server 18.04.1”,之后系统会默认自动安装GPU驱动。若选择其他镜像,可能会导致无法顺利跑通本流程。
(如果子弹充足,或者做图心切,也可直接从腾讯云官网购买GPU服务器,丰俭由人。建议选按量付费机型即可,镜像选择Ubuntu20.04,勾选“后台自动安装GPU驱动”,驱动版本等按默认配置。)
二. 前置配置(10-15分钟)
1.登录机器后,会默认进行驱动的自动安装,可以用以下命令查看当前安装进程,该步骤需要5~10分钟:
代码语言:actionscript复制ps aux | grep -i install
自动安装顺序为(1)GPU驱动;(2)CUDA;(3)cuDNN
2.当GPU驱动、CUDA、cuDNN都安装完成后,通过以下命令创建python3虚拟环境,完成前置配置。
代码语言:actionscript复制sudo apt install wget git python3 python3-venv
注意:此处需检查自己的python版本,若低于3.7则需手动进行升级
三. 部署webui,完成配置(10-15分钟)
1.将webui clone到服务器本地:
代码语言:actionscript复制git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
2.成功后,进入stable-diffusion-webui文件夹:
代码语言:actionscript复制cd stable-diffusion-webui
3.在launch.py的代码中,由于腾讯源没有“torch==1.13.1 cu117“,导致需要从“--extra-index-url”的“https://download.pytorch.org/whl/cu117”中进行下载,速度非常慢。故此处对launch.py代码进行修改:
代码语言:actionscript复制原代码: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")
可使用如下命令行实现上述修改:
代码语言:actionscript复制export TORCH_COMMAND="pip install torch==1.13.1 torchvision==0.14.1"
4.下载chilloutmix模型:进入stable-diffusion-webui/models/Stable-diffusion文件夹,通过如下命令行下载chilloutmix模型到本地。该步骤下载速度较快,大约需要3-5min即可完成
代码语言:actionscript复制cd stable-diffusion-webui/models/Stable-diffusion
wget -O chilloutmix_NiPrunedFp32Fix.safetensors https://civitai.com/api/download/models/11745
5.最后,进入stable-diffusion-webui文件夹,输入激动人心的“./webui.sh”。通过自动化脚本完成安装。该步骤会自动安装webui所需的各依赖项,如gfpgan,k_diffusion等。实测完成全部安装大概需要10-20min。
代码语言:actionscript复制./webui.sh
若希望生成可以分享给他人使用的的链接,在./webui.sh后增加 "--share"即可
代码语言:actionscript复制./webui.sh --share
如果顺利的话,等待10分钟左右,全部安装完成后就可以看到链接了
提示: 由于服务器和github连接不是很稳定,中途可能出现网络错误。若出现网络问题,重新输入“./webui.sh”即可。或可通过报错提示信息,手动执行相应步骤安装后,重新输入“./webui.sh”继续剩余步骤的自动安装。
此处若有问题,可在评论区评论,看到后都会回复~
6.将上个步骤最后生成的链接粘贴至浏览器,可以愉快的做图了
四. 其他(自由探索)
1.如果希望服务器页面关闭后,仍然保留该页面运行,可通过screen指令实现。输入“screen”,在新页面中输入“./webui.sh --share”,即可关闭页面。其余screen实现方式可自行百度
代码语言:actionscript复制screen
2.若希望使用其他SD模型(主要以.ckpt和.safetensors为主),都可以过直接下载或本地上传的方式放置在“stable-diffusion-webui/models/Stable-diffusion”文件夹中。重启webui页面,即可在页面左上角看到模型切换选项
3.若希望使用Additional Networks,安装lora插件,可通过如下方式完成配置
a. 首先将lora插件clone到extensions文件夹中
代码语言:actionscript复制git clone https://github.com/kohya-ss/sd-webui-additional-networks extensions/sd-webui-additional-networks
b. 进入“stable-diffusion-webui/extensions/sd-webui-additional-networks/models/lora”文件夹
代码语言:actionscript复制cd stable-diffusion-webui/extensions/sd-webui-additional-networks/models/lora
c. 下载lora(以当下最火爆的koreanDollLikeness_v10为例)
代码语言:actionscript复制wget -O koreanDollLikeness_v10.safetensors https://civitai.com/api/download/models/8750
d. 之后重启webui,即可在页面中看到Additional Networks并选择相关模型
4.提示词不会写,可以考虑参考这里:ChilloutMix | Stable Diffusion Checkpoint | Civitai