云服务器部署AI绘图记录

最近AI绘图挺火的,但是我的笔记本配置太差了,我GTX 1050TI跑一个图片要三分钟左右,所以就想到了用云服务器部署体验一下。

腾讯云的GPU服务器有45元15天的,每天只要3元,体验还是不错的。服务器配置用的GN7型号,8核32G内存,显卡是NVIDIA T4,显存16G。

服务器有国内的,也有国外的,出口带宽是5M,入口是100M。国内的优点是访问会快一些,缺点是安装非常慢,因为网络问题安装时有可能失败,要重试安装。

国外的安装环境快,基本不太可能安装环境时失败。缺点是国内访问慢,有时候无法访问,要挂特殊工具才能打开。

系统用的是ubuntu20.04,买的时候没有20.04,所以我是重装的系统,勾选了GPU驱动。

安装python3

虽然服务器自带的有python3环境,版本是Python 3.8.10。但是绘图工具要求的python版本更加高。

stable-diffusion-webui 推荐的python版本是 3.10.6

lora模型训练工具推荐的python版本是 3.10.8

我最后安装了3.10.8的python,安装方式是源码编译安装。

首先要安装一些类库,如zlib,openssl等,否则编译出来的python会缺少这些模块。

sudo apt install -y zlib1g-dev libbz2-dev liblzma-dev libssl-dev libssl1.1 libsqlite3-dev

然后下载解压python源代码包

国内地址:https://registry.npmmirror.com/-/binary/python/3.10.8/Python-3.10.8.tar.xz

wget https://www.python.org/ftp/python/3.10.8/Python-3.10.8.tar.xz
tar -xf Python-3.10.8.tar.xz

编译安装python

cd Python-3.10.8
#创建一个文件夹放生成的临时文件,防止污染源文件
mkdir build
cd build
#安装到$HOME/python3,也就是/home/ubuntu/python3 目录
../configure --enable-optimizations --prefix=$HOME/python3
make
make install

安装好了之后,把python的bin目录加入PATH环境变量,我是直接修改/etc/environment文件

 

更新一下pip版本

pip3 install --upgrade pip

安装绘图工具

先安装一个下载工具aria2,方便下载东西

sudo apt install -y aria2

下载安装脚本,并进行安装

cd ~
aria2c -o install.sh https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh
chmod +x ./install.sh
./install.sh
# 因为网络一断就会中断执行,而且安装又比较耗时间,推荐用nohup在后台执行
# nohup ./install.sh &

下载基础模型 ChilloutMix

自带的模型是很难画出好看的图片的,如果画真人,推荐用ChilloutMix模型

cd ~/stable-diffusion-webui/models/Stable-diffusion
aria2c -x4 https://civitai.com/api/download/models/11745

下载Lora模型

日本女孩和韩国女孩的脸

cd ~/stable-diffusion-webui/models/Lora
aria2c -x4 -o japaneseDollLikeness_v10.safetensors https://huggingface.co/WuLing/SD-WebUI-TW/resolve/main/LoRA/DollLikeness/japaneseDollLikeness_v10.safetensors
aria2c -x4 -o koreanDollLikeness_v15.safetensors https://huggingface.co/WuLing/SD-WebUI-TW/resolve/main/LoRA/DollLikeness/koreanDollLikeness_v15.safetensors

下载VAE

有点模型画出的图片偏灰,可以用这个vae解决。

cd ~/stable-diffusion-webui/models/VAE
aria2c -x4 -o vae-ft-mse-840000-ema-pruned.safetensors https://huggingface.co/stabilityai/sd-vae-ft-mse-original/resolve/main/vae-ft-mse-840000-ema-pruned.safetensors

下载一些好用的webui扩展

cd ~/stable-diffusion-webui/extensions
git clone https://github.com/DominikDoom/a1111-sd-webui-tagcomplete.git
git clone https://github.com/VinsonLaro/stable-diffusion-webui-chinese.git
git clone https://github.com/AlUlkesh/stable-diffusion-webui-images-browser.git
git clone https://github.com/toshiaki1729/stable-diffusion-webui-dataset-tag-editor.git

创建一个密码文件

用于登录的时候验证,你也不想其他人也能用你的webui吧

touch /home/ubuntu/auth.txt

内容为:用户名:密码

启动webui

./webui.sh --xformers --listen --theme dark --enable-insecure-extension-access --gradio-auth-path /home/ubuntu/auth.txt

如果想后台运行,就nohup执行。

炼丹工具的安装

项目地址是:https://github.com/Akegarasu/lora-scripts

Linux安装脚本是 install.bash,有些地方可以改一下。

source改成点

. ./venv/bin/activate

这个脚本安装的torch和torchvision和webui依赖的版本的不一样,导致这个又要下载很长时间,实测用webui的torch和torchvision版本也是可以的,推荐改成下面的。

pip install torch==1.13.1+cu117 torchvision==0.14.1+cu117 --extra-index-url https://download.pytorch.org/whl/cu117

然后xformers同样用webui版本的

pip install xformers==0.0.16rc425

训练脚本train.sh加一个标头,告诉系统用bash执行,否则nohup会用sh执行,会报错的

#!/bin/bash
# 加在train.sh第一行

 

posted @ 2023-03-23 17:06  流光掠影  阅读(900)  评论(0编辑  收藏  举报