当前位置:首页|资讯|Stable Diffusion|腾讯|华为

【手把脚教程】从零到1,stable-diffusion腾讯云部署

作者:啟雲发布时间:2023-02-24

本文目的:从零到1记录stable-diffusion在云服务器上的部署步骤,努力在前人的基础上,规避部分可能遇到的问题。至于搭建完成后使用优化,那就另一个故事了


首先感谢JASO前辈的手把手教程。在前辈的基础上,我从头到尾走了一遍并补充了一些自己碰到的问题。


一、服务器购买

鉴于本地的就是一个办公本,没有独显,跑起来肯定卡。而且这也是玩票性质的,所以就买个服务器吧,用完就扔~~~~


云服务商的选择上,很普通,大家随意选择腾讯云/阿里云/移动云/华为云....都可以。我是之前用的腾讯云,在腾讯云上抢的GPU云服务器(https://cloud.tencent.com/act/pro/gpu-study?from=10680),每天10点开始(准点去基本能抢到),45元/15天,够用了。配置如下

所选服务器配置

注意,预装镜像要选择“Ubuntu Server 18.04.1”,之后系统会默认自动安装GPU驱动。如果当时抢购太紧张了,也可以后面重装系统下(必要的归零操作是菜鸟必须,都怪云服务器的重装系统太方便了,全过程我重装了5次,。。。。)。


重装系统第一步
重装系统第二步(注意这个后台自动安装驱动一定要选上)

可以买好云服务器后,就重装一次,以免莫名其妙的问题

二、环境配置

1、显卡驱动安装

先等服务器自己安装显卡驱动。预计等个5分钟。等不及的可以通过一下命令看下是否完成

完成以后的样子,只有一行

2、更新Python到python3.10

参考文档(https://cloud.tencent.com/developer/article/1819871)

服务器自带的python是3.6.9,但直接使用中会出现莫名其妙的问题,经过探索,需要将python更新,用参考文档中的方法一即可

其中第三步命令要进行替换

原命令:

修改后:

完成标志如下:

显示进入python3.10

3、将更新后的python3.10设置成默认

参考文档(https://www.cnblogs.com/STangQL/p/15647583.html)

安装了3.10后,我们系统中有多个python版本,要将我们需要的3.10版本设置成默认。

使用命令

会列出所有的python版本,但你现在高概率会出现“update-alternatives: error:no alternatives for python”,就说你的版本没有录入。那就补充下好了。

注意:要同时补充python和python3。

不想研究的,直接复制如下代码即可

验证方法

当如上两行代码均显示3.10就代表你成功了

4、创建python3的虚拟环境

代码如下

三、部署webui

1、克隆库

当你看到“done”的时候就OK了

2、修改launch.py文件

进入到对应的文件夹

修改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")

修改方法:输入“i”,再移动到对应位子上进行删除

②因为众所周知的网络原因,要对github的连接做处理

在每个  https://github.com/  (就在下面几行,注意每一个都要改)开头的链接前面添加   https://ghproxy.com/   ,变成如图所示的  https://ghproxy.com/https://github.com/的样子

两步修改完成后的样子如下

修改完成

然后再按“esc”键,退出编辑

输入“:wq”,回车,保存并推出。

不确认自己有没有修改成功的,可以cat看一下

3、下载chilloutmix模型

进入stable-diffusion-webui/models/Stable-diffusion文件夹,下载chilloutmix模型到本地。


4、删除venv文件夹(必要的归零动作)

之前按照前辈的方法,直接开始./weiui.sh。结果出现以下报错,查了半天,简单除暴的删除就行了。

报错

步骤如下:

在stable-diffusion-webui文件夹中删除venv文件

必要的归零动作

5、重头戏./webui.sh

因为是云服务器,为了完成后可以远程访问,对命令做如下修改

当看到这行就大功告成了

电脑访问http://云主机ip:7860就可以Happy了~


最后的成果




至于“stable-diffusion”怎么玩,那就是另外一个故事了

圣殿地址:https://civitai.com/


补充附录:

1、如果想关闭云服务器页面后,服务仍然运行,可以使用nohup命令,具体是将启动时的命令做如下调整(即第3.5步)。*后续想关的时候使用kill命令即可

2、使用其他SD模型。将civitai上的模型下载到/stable-diffusion-webui/models/Stable-diffusion目录下。

     2.1在C站找到想要的模型,右键复制连接

     2.2参考前面的下载连接,修改相关命令。wget -O 文件名 文件url。示例如下

下载完成后

  2.3重启webui页面,即可在页面左上角进行模型切换



3、添加Lora

     3.1 克隆lora到/stable-diffusion-webui/extensions/sd-webui-additional-networks文件夹

  3.2进入到lora文件夹

3.3下载模型。地址获取方式同上,在C站中右键复制“下载连接”

3.4重启webui页面,即可在“Additional Networks”中找到相关内容。

注意:要勾选Enable,并将权重设置在0以上



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1