当前位置:AIGC资讯 > AIGC > 正文

GPU部署AI绘画实践(腾讯云部署)

GPU部署AI绘画实践

背景

AI绘画模型(以StableDiffusion为首)自去年推出后快速迭代。近期,市面上又出现了一批效果惊艳的新突破。

本文将演示如何使用 GPU云服务器,快速部署 AI 绘画模型。从创建机器到完成部署。

购买服务器

首先,购买一台腾讯云的GPU服务器,可以访问 GPU云服务器_并行计算_弹性计算_人工智能_深度学习-腾讯云 。

本次使用“GN7”机型。选按量付费机型即可,镜像选择Ubuntu20.04,勾选“后台自动安装GPU驱动”,驱动版本"450.102.04",CUDA版本"11.0.3",cuDNN版本"8.1.0"。

前置配置(1)- 驱动安装

登录机器后,会默认进行驱动的自动安装,可以用以下命令查看当前安装进程,该步骤大约需要5~10分钟:

ps aux | grep -i install

自动安装顺序为: (1)GPU驱动; (2)CUDA; (3)cuDNN

前置配置(2)- 创建虚拟环境

当GPU驱动、CUDA、cuDNN都安装完成后,通过以下命令创建python3虚拟环境,完成前置配置。

sudo apt install wget git python3 python3-venv
部署WebUI(1)- 获取代码
将webui clone到服务器本地:
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
成功后,进入stable-diffusion-webui文件夹:
cd stable-diffusion-webui
部署WebUI(2)- 修改配置

在launch.py的代码中,由于腾讯源没有torch==1.13.1+cu117,导致需要从--extra-index-url的 https://download.pytorch.org/whl/cu117 中进行下载,速度非常慢。故此处对 launch.py 代码进行修改:

原代码: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")

可通过如下代码实现上述内容

export TORCH_COMMAND="pip install torch==1.13.1 torchvision==0.14.1"
部署WebUI(3)- 下载模型
进入stable-diffusion-webui/models/Stable-diffusion文件夹,通过如下命令行下载模型到本地。该步骤下载速度较快,大约需要3-5min即可完成。a) 本文通过civitai(c站)下载模型,无需注册且下载速度较快。b) 若需使用其他模型,可访问 https://huggingface.co/CompVis/stable-diffusion-v-1-4-original 或 https://civitai.com 进行下载。
cd stable-diffusion-webui/models/Stable-diffusion

wget -O pastelMixStylizedAnime_pastelMixPrunedFP16.safetensors https://civitai.com/api/download/models/6297

下载其他模型模版:wget -O 模型名称 模型下载链接
部署WebUI(4)- 完成安装

最后,进入stable-diffusion-webui文件夹,输入=“./webui.sh”。通过自动化脚本完成安装。该步骤会自动安装webui所需的各依赖项,如gfpgan,k_diffusion等。

实测 完成全部安装大概需要10-20min。

./webui.sh

若希望生成可以分享给他人使用的的链接,在./webui.sh后增加 "--share"即可

./webui.sh --share
部署WebUI(5)- 访问链接

等待10分钟左右,全部安装完成后就可以看到链接了

提示: 由于服务器和github连接不是很稳定,中途可能出现网络错误。若出现网络问题,重新输入“./webui.sh”即可。或可通过报错提示信息,手动执行相应步骤安装后,重新输入“./webui.sh”继续剩余步骤的自动安装。

将上个步骤最后生成的链接粘贴至浏览器即可完成实践内容。

其他(自由探索)

Q&A
如果希望服务器页面关闭后,仍然保留该页面运行,可通过screen指令实现。输入“screen”,在新页面中输入“./webui.sh --share”,即可关闭页面。其余screen实现方式可自行百度
screen
若希望使用其他SD模型(主要以.ckpt和.safetensors为主),都可以过直接下载或本地上传的方式放置在“stable-diffusion-webui/models/Stable-diffusion”文件夹中。重启webui页面,即可在页面左上角看到模型切换选项

更新时间 2024-03-10