寂夜清风 发表于 2023-3-24 22:03

【ZT】从零开始,手把手教你Window本地化部署stable diffusion AI绘图

转自 https://zhuanlan.zhihu.com/p/613530403



作者:觉悟之坡   专注aigc领域分享和教学,欢迎走入AI时代。公众号觉悟之坡


本号之前有发过一篇win平台的教程,由于是去年10月发布的,而Al绘画技术发展很快,那篇教程已经有些不适用了,有些同学执行到第二步就出错了。应广大同学的期望,我更新一版新版详细教程。https://pic2.zhimg.com/80/v2-f8989eefe7090d3175801462f5c0e1c9_1440w.webp一、前言1.为什么要本地部署因为没有生成数量的限制,不用花钱,不用被NSFW约束,生成时问快,不用排队,自由度高,插件丰富,功能众多,可以调试和个性化的地方也更多。如果说,会用各大在线的Al绘图平台来生成图像的话,算是Al绘画领域的小学生级别。那么,如果会使用本地化部署来运行A绘画的话,那就已经算得上是高中毕业,进入成年啦。等你能够使用A绘图指哪打哪,想怎么画怎么画,那就已经是大学毕业,学成归来的牛逼人物啦。2.本地化部署的要求本地化部署运行虽然很好,但是也有一些基本要求(1) 需要拥有NVIDIA显卡,GTX1060 (或者同等算力的N卡)以上,显存4G以上。(2) 操作系统需要win10或者win11的系统。(如果是MacOS的同学,请看这里)(3) 内存16G或者以上,至少有一个128G以上的SSD固态硬盘。(4)如果不知道自己电脑配置的,可以下载一个鲁大师或者类似软件,点击硬件检测,就能看到显卡,显存,CPU,内存等信息。(5) 最好会魔法上网,否则网络波动,有些网页会打不开,有些下载很慢(6)耐心,多尝试,多搜索。这个教程我已经重复过多次,因此很多问题都踩过坑并写出来了,还有很多学员踩坑的问题也都放在里面了。所以请放心,一定能跑通的。(7) 我的电脑配置供大家参考,Win11,i5,NVIDIA GT1060 5G显存,16G内存生成一张20 Step的图大概20-30s (若使用更高性能的电脑,生成速度更快。)如果满足相关软硬件要求,请继续往下看3.部署的AI绘画项目简介AI绘画开源项目其实有蛮多个,但是最受欢迎,功能最丰富,且最易用的开源项目之一,就是Stable diffusion WebUl,因此我们是以Stable diffusion webui的本地部署为例。
https://pic3.zhimg.com/80/v2-1580d5ba9692ee93fb97ac4379376a72_1440w.webp
(本地Webui版AI绘图界面)二.部署算法环境:1.下载miniconda,用于配置基础算法环境。这个是用来管理python版本的,他可以实现python的多版本切换。下载地址:http://docs.conda.io/en/latest/miniconda.html
https://pic4.zhimg.com/80/v2-0cd2defb5e5c836caf987bf6dc3c11bf_1440w.webp
(miniconda下载截图)安装时按默认的一路next就行。2.打开miniconda,
https://pic3.zhimg.com/80/v2-1cfbaed51f856264499e107b27490f46_1440w.webp
(开始-输入mini-找到miniconda3打开)输入conda -V
弹出版本号即为正确安装
https://pic4.zhimg.com/80/v2-ef347326911e2dbf042f8f30efc38713_1440w.webp
(显示conda版本,那就对了)3. 在miniconda小窗里,执行下面语句,conda config --set show_channel_urls yes
接着运行conda clean -i
清除索引缓存4.创建python 3.10.6版本的环境,叫sdwebui好了运行下面语句,(注意,这一步一定要内外网通畅,否则会报错。多执行几次。)conda create --name sdwebui python=3.10.6
提示你是否要继续安装,输入y,并回车。https://pic4.zhimg.com/80/v2-3dd23c1b700c9e3eeffbbcfea8611fef_1440w.webp显示这个界面,这步就完成了。程序已经在你的路径C:\ProgramData\Miniconda3\envs\sdwebui已经创建了一个新的项目。https://pic4.zhimg.com/80/v2-cd212fb95223ffce4498ff2332472e27_1440w.webp5,激活项目环境输入conda activate sdwebui
回车。https://pic2.zhimg.com/80/v2-e76681e08ddb77b8f97f096f3bbb9139_1440w.webp6.升级pip并更改默认库包下载地址为清华镜像站。依次执行下面的两行语句,每一行输入后回车,等执行完再输入下一行,再回车。python -m pip install --upgrade pippip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
不报错就是完成了。报错了就依次执行多几次。7. 安装git,用来克隆下载github的项目,比如本作中的stable diffusion webui这个开源项目。(1)前往git官网http://git-scm.com/download/win下载相关安装包https://pic2.zhimg.com/80/v2-1cb041b39ddb16f5be4fd48c1078d39d_1440w.webp(2)下载好后,一路默认安装,点next即可。安装完成之后,回到刚刚的miniconda小窗口,并输入并执行下面指令。git --version
查看git的版本,显示了版本号即安装成功。https://pic4.zhimg.com/80/v2-8feac4b733508e417c45b19b70e99e8b_1440w.webp(3)如果报错,显示说“'git' 不是内部或外部命令,也不是可运行的程序”。(如果不报错有显示git版本,则跳过这一步,进入第8步)那么,把git的bin文件夹地址和git-core的文件夹地址放到windows系统变量的path里面。默认gitbin文件夹是:C:\Program Files\Git\bin默认gitcore文件夹地址是:C:\Program Files\Git\mingw64\libexec\git-core把地址添加到环境变量的Path里面。操作路径是:开始-设置-系统-高级系统设置-环境变量-path-新建。(具体见下图)https://pic4.zhimg.com/80/v2-17206dc3687994ef1ef50b02c6aeab9b_1440w.webp添加完后,你在miniconda里面,输入git --version
就能出现git版本号啦。8.安装CUDAcuda是NVIDIA显卡用来跑算法的依赖程序,所以我们需要它。打开NVIDIA cuda官网,http://developer.nvidia.com/cuda-toolkit-archive(这里有人可能会打不开网页,如果打不开,请用魔法上网。)你会发现有很多版本的CUDA,下载哪个版本呢?https://pic4.zhimg.com/80/v2-e9a93c8027047df55dfd00981e45cc87_1440w.webp回到一开始的miniconda的小窗,输入nvidia-smi
查看你的cuda版本。https://pic4.zhimg.com/80/v2-0fb99ff633fd291904b27c6e477b7177_1440w.webp(在这里输入nvidia-smi的时候,有可能会显示“'nvidia' 不是内部或外部命令,也不是可运行的程序”。这时候,需要确认你的显卡是否为Nvidia的显卡。如果是,则检查自己的显卡驱动是否最新版,可以用鲁大师或者驱动精灵之类的软件更新驱动至最新。如果更新驱动还不行,则把C:\Program Files\NVIDIA Corporation\NVSMI添加到系统环境变量。)比如我的显卡cuda是11.7版本,所以我就下载11.7.1即可。https://pic4.zhimg.com/80/v2-6db850792818325cdca64f9c17fb04fb_1440w.webp然后安装自己的系统选择win10或者11,exe local,download下载完后安装,这个软件2个多G,可以安装在c盘以外的地方。比如D盘,节省系统盘空间。好了,安装好之后,电脑的基础环境设置终于完事了。下面开始正式折腾stable diffusion了。三、stable diffusion环境配置1.下载stable diffusion源码确认你的miniconda黑色小窗显示的是(sdwebui) C:\Users\Administrator>
这代表着你正在sdwebui这个程序环境里面。接着我们要安装stable-diffusion-webui本体了。先看看你想安装在哪个盘,建议放在非系统盘的其他盘根目录。最好是SSD盘,加载模型速度会快一些。比如我安装在F盘。我就输入下面指令再回车。(安装在其他盘同理)F:
https://pic4.zhimg.com/80/v2-a34e90f9dbf8b8f17786a1225788b9c7_1440w.webp接着执行下面指令克隆SD项目代码:git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
等到页面显示“done”,则克隆完成。https://pic2.zhimg.com/80/v2-221a821cfcdb436c2b4ea42762ab3b31_1440w.webp2.下载SD训练模型打开https://huggingface.co/stabilityai/stable-diffusion-2-1/blob/main/v2-1_768-ema-pruned.ckpt点击download,下载模型。大约5.2G。下载完把这个训练模型v2-1_768-ema-pruned.ckpt放入models\Stable-diffusion文件夹里面。(我的文件夹是“F:\stable-diffusion-webui\models\Stable-diffusion“)注:(1)这里可能提示需要注册或同意协议之后才能下载,那就注册并同意。(2)models\Stable-diffusion这个文件夹,专门存放用于生成AI绘图的绘图元素的基础模型库。后续如果在其他网站比如civitai之类的地方下载的ckpt或者safetensors文件也是放在这个文件夹里面。3.准备开启运行ai绘图程序sd-webui在miniconda的黑色小窗,执行下面指令,进入项目文件夹:cd stable-diffusion-webui
执行下面指令, 打开webui的应用程序,webui-user.bat
接下来就是等待系统自动执行。直到系统提示,running on local URL: http://127.0.0.1:7860这就代表,你可以开始正式使用AI画画啦~注意:(1)这一步要下载不少的依赖程序,网络一点波动都可能会报错。所以安装过程当中多次报错也很正常,需要耐心和时间多次尝试。多次执行webui-user.bat指令。(2)不要关闭黑色小窗,哪怕它几分钟甚至20分钟没有任何变化。直到它报错再进行下一次尝试。(3)如果提示连接错误,可能需要开启或者关闭魔法上网,再重新执行webui-user.bat命令。(4)如果不小心退出了黑色窗口,则重新点击:开始菜单-程序-打开miniconda窗口,依次输入执行conda activate sdwebuiF:cd stable-diffusion-webuiwebui-user.bat
(因为我是安装再f盘,所以我输入”F:”,你如果安装在其他盘,则修改成其他盘符,比如”D:”, “E:”之类)(5)如果长时间卡在Installing gfpgan(或者installing clip,installing open_clip)这个环节,那么进入F:\stable-diffusion-webui文件夹下面,找到launch.py这个文件,用记事本打开。在第200多行到300行的位置,找到这段代码。https://pic4.zhimg.com/80/v2-b4652f303126941135a4b57864db403f_1440w.webp并在“https://github.com/xxx”的最前面,加上:https://ghproxy.com/加三个位置,变成如下状态,https://pic4.zhimg.com/80/v2-a7a79ecc8b83f137a54772cce5b366bb_1440w.webp然后ctrl + s保存后退出。这就相当于让原来从github下载相关程序包变成了走国内镜像下载相关程序包,这样会增加网络的稳定性和网络速度。改完之后,下面继续执行webui-user.bat。(4)如果改了launch.py文件, 还卡在gfpgan环节,那么记得关闭外网功能。让下载走通用线路。(5)安装完gfpgan,clip,open_clip等几个大头之后,后面还有一些自动安装的依赖项,如果比较慢,记得打开外网。总之,感觉卡慢或者报错之后,则切换调节网络后再重新执行webui-user.bat指令。4.打开webui网页版当黑色窗口提示,running on local URL: http://127.0.0.1:7860的时候,如下图https://pic4.zhimg.com/80/v2-d7af73de67183b75a0b64b48021f81f3_1440w.webp不要关闭黑色窗口,接着用浏览器(比如谷歌浏览器chrome)打开http://127.0.0.1:7860,就是AI绘画主界面啦。你可以直接在左上角的文本框输入prompt提示词,比如:pandas eating bamboo (熊猫在吃竹子)然后点击右侧的橙色按钮Generate,过一小会,就能看到你画出来的第一张图啦。https://pic3.zhimg.com/80/v2-2115cc510ba7224ed75e0051cf20360e_1440w.webp(注意,如果写了prompt点击generate后无法生成图片,看见黑色小框显示“float 32“之类的关键字,则在webui页面的Settings-stable-diffusion最下面,勾选float32的选项框。接着点击上方的Apply Settings应用,然后按F5刷新页面后,即可正常使用。)https://pic1.zhimg.com/80/v2-a02c7d80aa37121f6138b8e2fd0dc4c8_1440w.webp恭喜你,历尽千辛万苦,终于完成了stable diffusion webui的安装,也成为新潮的AI玩家之一啦,欢迎来到新世界,为你骄傲,笔芯~
三.答疑1.之后每次打开stable-diffusion-webui都要这么麻烦吗?不用,之后每次打开只要1分钟,简单6步即可完成第一步,打开miniconda,第二步,执行conda activate sdwebui,第三步,执行F:第四步,执行cd stable-diffusion-webui第五步,执行webui-user.bat. 等待黑色小窗出现http://127.0.0.1:7860字样,第六步,浏览器打开http://127.0.0.1:7860现在,即可开始作画。(注意,第三步是因为我安装在F盘,所以输入F: ,你如果安装在其他盘,记得改成自己的盘符,比如D: E: G:等等)2.我还是觉得安装太麻烦,有问题能问你吗?你能帮我吗?可以,私我,但不保证回复时间。也可以点这个,看到就回,会快不少。https://picx.zhimg.com/v2-f29a90c1e6123f212366b20b5f00bcc5_l.jpg?source=f2fdee93觉悟之坡
1 次咨询5.0

2159 次赞同

去咨询


3.安装好了,怎么用呢?请查看本号的AI绘图相关文集,里面有很多好玩的用法介绍。另外,本号觉悟之坡也长期分享AI绘图领域的知识技巧,欢迎关注学习交流。4.内外网问题怎么办?由于某种原因,抱歉不能出相关教程。如果需要协助,可以联系我单独协助,比如通过帮忙下载好大文件再通过网盘分享的方式来解决。5.为什么要自己部署,这么麻烦,不可以下载整合包吗?当然可以,整合包的好处就是方便,快捷。直接下载几个几十G的文件,即可直接打开,动动鼠标就能使用。但是也有缺点,(1)整合包是别人开发和维护的,可能会有后门隐患。(2)Stable diffusion本身就是开源的,具有开放的精神,因此有很多丰富的插件和源源不断的新功能。而整合包又让他变成了封闭版,之后如果自己想要玩新的插件,功能,或者升级stable diffusion,都需要依赖整合包的开发者,会麻烦很多。如果别人没有及时更新呢?如果别人不更新了呢?因此,个人不太建议使用整合包。6.每次启动的时候,miniconda小黑框提示说xformers缺失,要管吗?可以不用管,也能正常使用AI绘画。如果你想管的话,用记事本打开stable-diffusion-webui下面的webui-user.bat文件,找到“COMMANDLINE_ARGS=“,后面增加”--xformers”,如下图,接着保存并关闭窗口。https://pic3.zhimg.com/80/v2-3ef0e1b35c44f26f0ee9e19941d04fda_1440w.webp关闭网页,关闭miniconda黑色小窗。重新打开webui,这时候系统会自动下载安装xformers,下次就不会报错了。有xformers,据说跑图速度会略快一些些。我这边实测感觉没啥区别。

寂夜清风 发表于 2023-3-24 22:04

部分 参与者的反馈

joki


同样最后一步报错,查了其他资料,按下面2个步骤做搞定了。
1.修改launch.py文件,我比作者多改了5处(在第245-253行“github.com/xxx”的最前面,加上:ghproxy.com/)。
2.提示升级pip的时候,输入:python.exe -m pip install --upgrade pip

页: [1]
查看完整版本: 【ZT】从零开始,手把手教你Window本地化部署stable diffusion AI绘图