天天看点

Stable-diffusion 本地部署

作者:直率山丘XYp

突然发现,学习IT专业也挺好,赶上这波潮流可以了解一些新鲜玩意,虽然只是知道皮毛。尝试了很多种,最后觉得还是Stable diffusion 比较适合我自己。特意还搞了个便宜的兼容机测试。效果挺不错。末尾发几张效果图镇楼。

Stable Diffusion是什么。Stable diffusion应该是上天派来帮我画图的吧,没有画画天分,没有想象力。部署过程其实也挺简单的,在保证网络畅通的情况下主要是要有点耐心。

一、机器要求

Macbook OS 和 Windows10 系统我都测试过。两个系统都可以,需要一定的命令基础。我个人感觉Macbook 实际上操作起来更适合我使用,但是机器太贵买不起,只能搞一个跑Windows的机器。总体上,显卡显存8G以上、固态硬盘128G以上、内存16G以上即可

我买的机器是最独断的RTX 3060显卡,按照30Steps来看,大概一张图1-2分钟,也看分辨率的要求,我是作为爱好学习,不影响我的使用,所以这个就够了,初学者可以考虑一下。重点还是显卡和内存。

二、准备工作

1、网络要快

2、Stable diffusion 本地代码包

3、软件需求:

git: https://gitforwindows.org

python :https://www.python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe

anaconda:https://www.anaconda.com/

大概有了这几个以后就基本具备安装的条件了

三、安装过程

1、安装git

https://gitforwindows.org 下载,一直下一步便可。

2、安装python

这里SD WebUI限定版本为3.10.6,可以到python官网下载对应版本,安装前务必勾选Add Python 3.10 to PATH,將Python加到环境变量中。已经安装的,可以通过“cmd”,回车,在命令行里输入: python --version 来检测是否安装成功

3、安装显卡驱动程序

确认本机已经安装最新的显卡驱动程序,主要是用来跑算法的依赖程序,我用的是Nvidia显卡,所以通过安装cuda依赖程序 https://developer.nvidia.com/cuda-toolkit-archive

在命令行窗口输入 nvidia-smi,查看本机cuda版本,再下载对应的cuda版本

4、使用 git 下载项目源码

假如我们要将 stable-diffusion-webui 放在D盘,在D盘的文件地址栏,输入cmd回车,再输入

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

5、运行源码

找到上面下载好的文件夹,找到 webui-user.bat ,双击运行

等待下载。。。(可能需要科学上网,或需要通过修改文件,使用国内镜像源)

如果比较顺利的话,接下来会下载几个G安装包

中间如果网络断开了,关闭命令行、重新打开 webui-user.bat

当你看到这个网址时,http://127.0.0.1:7860 表示已经安装成功了,将它复制到浏览器中打开,进入Stable Diffusion界面

Stable-diffusion 本地部署

其他还有好几种方式可以使用,比如下载conda来使用,也可以,这里不做介绍

6、常见的一些问题

比如:RuntimeError

RuntimeError: CUDA Out of memory

显卡的VRAM不足。Stable Diffusion WebUI的显卡最低要求为4GB,要无压力的玩建议8GB以上。开启webui-user.bat,在COMMANDLINE_ARGS后面加入--mdevram或--lowvram引数,降低VRAM使用量。如果还是在生图时出现此错误,建议降低解析度,或是买张更好的显卡,或是改用Google Colab。

又比如:连接失败

fatal: unable to access Recv failure: Connection was reset

网络问题,可能需要科学上网或改DNS或需要通过修改文件,使用国内镜像源,但是有时只将部份网址换成“国内源”是不够的,因为Stable Diffussion WebUI还会尝试从HuggingFace等处下载脸部模型。有可能还是通过科学方式,避免连接中断。

另外,经常遇到安装gfpgan时 遇到 RuntimeError: Couldn't install gfpgan

解决方法是直接到github下载 GFPGAN 代码到本地,并进行本地安装。

因为stable diffusion会在其根目录创建虚拟python环境venv,因此安装方法与github有所不同。可参考以下方法:

从github将GFPGAN的源文件下载到本地,这一步可以使用git clone也可以直接下载zip文件。

下载后,解压(如果用git clone就不需要)到d:\\stable-diffusion-webui\venv\Scripts目录下(stable-diffusion-webui是你stable diffusion webui的根目录,这个地址只是我电脑中的,请根据自己放的位置调整)。

打开cmd,cd到d:\\stable-diffusion-webui\venv\Scripts\GFPGAN-master下。

使用命令

d:\\stable-diffusion-webui\venv\Scripts\python.exe -m pip install basicsr facexlib

安装GFPGAN的依赖。

再使用

d:\\stable-diffusion-webui\venv\Scripts\python.exe -m pip install -r requirements.txt

安装GFPGAN的依赖。

最后使用

d:\\stable-diffusion-webui\venv\Scripts\python.exe setup.py develop

安装GFPGAN。

其中的路径需要根据自己的环境来填,安装完毕后,再打开stable diffusion根目录的webui-user.bat,发现可以正常使用了。如果遇到其他github上的模块无法安装也可以用同样的方法。

由于初学,欢迎大家一起探讨,最后附上几张试验品。

Stable-diffusion 本地部署
Stable-diffusion 本地部署
Stable-diffusion 本地部署
Stable-diffusion 本地部署
Stable-diffusion 本地部署