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

Window本地化部署stable diffusion AI绘图+问题汇总

目录

一、前言 1. 为什么要本地部署 2. 本地化部署要求 3. Stable diffusion WebUI项目简介 二、电脑环境配置 1. 安装anaconda3 2. 在anaconda3中创建虚拟环境 3. 激活环境 4. 安装git 5. 安装cuda 三、stable diffusion环境配置 1. 下载stable diffusion源码 2. 下载stable diffusion的训练模型 3. 安装GFPGAN 4. 运行stable-diffsion-webui 四、开始作画和调试 五、借鉴博客 六、遇到的问题 七、最终成功截图

一、前言

1. 为什么要本地部署

本地部署没有生成数量的限制,不用花钱,生成时间快,不用排队,自由度高很多,可以调试和个性化的地方也更多。 部署过程可以熟悉环境配置的流程,熟悉工程化部署步骤。对于PM来说也是一种技术成长。 部署过程遇到各种问题,在尝试解决的过程中更加锻炼自己能力。

2. 本地化部署要求

需要拥有NVIDIA显卡,GT1060起,显存4G以上。(已经不需要3080起,亲民不少) 操作系统需要win10或者win11的系统。 电脑内存16G或者以上。 最好会魔法上网,否则网络波动,有些网页打不开,有时下载很慢。 我的电脑配置供大家参考,Win11,i5-11400H,NVIDIA RTX 3050 4G,16G 生成一张20step的图大概20-30s(若使用更高性能的电脑,生成速度更快)。

3. Stable diffusion WebUI项目简介

Stable diffusion大家都知道了,是当前最多人使用且效果最好的开源AI绘图软件之一。stable diffusion webui,是基于stable diffusion 项目的可视化操作项目。通过可视化的网页操作,更方便调试prompt,及各种参数。同时也附加了很多功能,比如img2img功能,extra放大图片功能等等。因此stable diffusion webui项目是很多人部署到本地的首选。

二、电脑环境配置

1. 安装anaconda3

安装此软件的原因: 不需要再安装python了 并且anaconda3方便安装依赖 可以创建虚拟环境,如果搞坏了,删除重创建就好了。

官方地址:https://www.anaconda.com/download#Downloads

安装教程网上很多,不再赘述。

检查是否安装成功 打开anaconda prompt(windows开始中搜索) 输入命令conda -V,显示conda版本则说明安装成功。

2. 在anaconda3中创建虚拟环境

还是打开anaconda prompt,输入指令:conda create -n sdw python=3.10.6。注意:sdw为环境名,你可以自己命名。 系统提示y/n, 输入y,按回车即可。显示done,那就完成了。 可以输入conda env list查看自己刚刚创建的名字为sdw的环境

3. 激活环境

在anaconda prompt中,输入指令conda activate sdw,然后回车。发现环境激活 升级pip,并设置pip的默认库包下载地址为清华镜像。输入指令:pip install --upgrade pip回车;再输入指令:pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple回车

4. 安装git

用来克隆下载github的项目,比如本作中的stable diffusion webui 前往git官网git-scm.com/download/win
下载好后,一路默认安装,next即可。 开始菜单-输入“git”,找到git cmd。
打开并输入下面指令:git --version 查看git的版本,显示了版本号即安装成功。

5. 安装cuda

cuda是NVIDIA显卡用来跑算法的依赖程序,所以我们需要它。 打开NVIDIA cuda官网,developer.nvidia.com/cuda-toolkit-archive(这里有人可能会打不开网页,如果打不开,请用魔法上网。)你会发现有很多版本,下载哪个版本呢?
回到一开始的anaconda prompt的小窗,输入nvidia-smi,查看你的cuda版本
比如我的是11.6的版本,我就下载11.6.2的链接。

然后安装自己的系统选择win10或者11,exe local,download。下载完后安装,这个软件2个G,可以安装在c盘以外的地方。比如D盘。

好了,完成这步,电脑的基础环境设置终于完事了。

下面开始正式折腾stable diffusion了。

三、stable diffusion环境配置

1. 下载stable diffusion源码

在anaconda prompt中进入其他盘。(默认C盘,但是最好下载在别的盘)。我下载再F盘中的Project中。 接着执行:git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git。直到显示done即可。

2. 下载stable diffusion的训练模型

在https://huggingface.co/CompVis/stable-diffusion-v-1-4-original/tree/main中下载 点击file and versions选项卡,下载sd-v1-4.ckpt训练模型。(需要注册且同意协议,注册并同意协议之后即可下载)
下载好之后,请把模型更名成model.ckpt,然后放置在sd-webui的models/stable-diffusion目录下。比如我的路径是F:\Project\stable-diffusion-webui\models\Stable-diffusion

3. 安装GFPGAN

这是腾讯旗下的一个开源项目,可以用于修复和绘制人脸,减少stable diffusion人脸的绘制扭曲变形问题。
打开https://github.com/TencentARC/GFPGAN。把网页往下拉,拉到readme.md部分,找到V1.4 model,点击蓝色的1.4就可以下载。

下载好之后,放在sd-webui项目的根目录下面即可,比如我的根目录是F:\Project\stable-diffusion-webui

4. 运行stable-diffsion-webui

进入F:\Project\stable-diffusion-webui文件夹。 运行指令:webui-user.bat
直到系统提示,running on local URL: http://127.0.0.1:7860 复制链接到浏览器打开。

四、开始作画和调试

在浏览器,(比如谷歌浏览器),打开http://127.0.0.1:7860(注意,不要关闭anaconda prompt的黑色窗口)

2.在prompt区域输入相关指令,比如beautiful landscape,然后点击右边的generate,即可生成第一张图片啦。

3.生成的状态和操作

网页会显示进度条,anaconda prompt的黑色小窗也会显示进度条。

等进度条跑满,就能看到你生成的图啦。

如果不想生成了,可以点击interrupt停止生成,就会返回你目前为止已经生成的图片。(比如你要生成10张,已经生成了3张,点击interrupt,就会返回3张图片)

如果点击skip,就会跳过本张图片的生成,比如你想生成10张图,现在生成第3张,点击skip,第三张就不生成了,直接开始生成第四张,最后返回9张图片。

4.修改batch count数值,一次性生成多张图片

默认是1,一次性生成1张,建议一次性生成4张或者以上,这样获得满意的图片概率会大一些,可以最多一次性生成最多100张。

但写得越大,一次性生成花费的时间越长,假设一张图30秒,设置10张就是300s,5分钟,100张则是3000s,50分钟。

五、借鉴博客

https://mp.weixin.qq.com/s?__biz=MzI2NTQ0MjY5Nw==&mid=2247484631&idx=1&sn=cc627810f6862baf99d0e8084050c3f9&chksm=ea9c0031ddeb89278f5623560761d3d585e96eb768a15e11ccc7c24de817865056b68fc9e93a&scene=21#wechat_redirect https://blog.csdn.net/SweetHeartHuaZai/article/details/129741856

六、遇到的问题

【问题1】:RuntimeError: Couldn’t clone K-diffusion.


【尝试方法1】:

运行建议的command:git clone “https://github.com/crowsonkb/k-diffusion.git” “F:\Project\stable-diffusion-webui\repositories\k-diffusion”。

但是依旧报错。

【尝试方法2】:

一般是因为服务器的SSL证书没有经过第三方机构的签署,所以才报错。

解除ssl验证后,再次git即可。执行command:git config --global http.sslVerify false

参考博客:https://blog.csdn.net/bblood307/article/details/120307064

【问题2】我之前虚拟环境命名太长,想换个名字,然后就把之前的环境克隆了一个,然后旧环境删除后,一直报错:No Python at '"C:\Users\59341.conda\envs\stable-diffusion-webui\python.exe’。 解决方案:没办法.只能删除这个环境后,重新创建虚拟环境。 【问题3】重新创建的过程中。一旦要下载包,就报错。首先是open_clip下载出错。 解决方案:找到自己的路径。输入F:\Project\stable-diffusion-webui\venv\Scripts\python.exe -m pip install open_clip_torch 等待安装完成后再次启动webui-user.bat即可进入下一步 借鉴链接:https://www.bilibili.com/read/cv22604427 【问题4】运行webui-user.bat后又报错:RuntimeError: Couldn’t clone Stable Diffusion.
Command: “git” clone “https://github.com/Stability-AI/stablediffusion.git” “F:\Project\stable-diffusion-webui\repositories\stable-diffusion-stability-ai”
Error code: 128 解决方案:发现是命令行在拉取/推送代码时并没有使用vpn进行代理(我自己有VPN)。 运行指令: 配置socks5代理 git config --global http.proxy socks5 127.0.0.1:7890
git config --global https.proxy socks5 127.0.0.1:7890 配置http代理 git config --global http.proxy 127.0.0.1:7890
git config --global https.proxy 127.0.0.1:7890 原文链接:https://blog.csdn.net/zpf1813763637/article/details/128340109 其余博主的问题列表:https://www.bilibili.com/read/cv22604427

七、最终成功截图

之前虚拟环境



现在虚拟环境

END

更新时间 2024-01-16