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

stable-diffusion-webui踩坑指南

过年刷资讯AI的信息铺天盖地,准备研究研究。最后选择从AI绘画的stable diffusion入手。本地安装了最新的Python(13.12.2)然后直接克隆GitHub - Stability-AI/stablediffusion: High-Resolution Image Synthesis with Latent Diffusion Models 按照说明文档尝试安装pip install -r requirements.txt,碰到了一个错误具体记不太清了。网上说是因为torch和transformers版本不匹配的问题。最后把requirements.txt里面的transformers==4.19.2 改成transformers>=4.19.2之后,成功安装。然后参照文档跑示例,发现没model。尝试找model。发现一时半会解决不了(网站访问不了,model动辄1G+)。所以继续查阅Stable Diffusion的各种文档。

后面发现用Stable Diffusion GUI更容易使用Stable Diffusion。而目前主流的Stable Diffusion GUI是Automatic1111, Invoke AI,and Comfy UI。我打算尝试一下stable diffusion webui。

项目地址:https://github.com/AUTOMATIC1111/stable-diffusion-webui 把它clone下来按照文档安装。碰到的第一个问题就是Python版本太高。没办法把Python降到3.10.6。然后继续运行webui-user.bat。一直报错说没有发现3.12.2的Python。环境变量检查,重新装Python都试过了,还是无法解决。命令行查看当前Python版本也对。但是运行webui-user.bat就报找不到3.12.2的Python。最后发现webui会根据系统里面的Python自己生成一份Python的配置信息。而我第一次运行webui-user.bat的时候,Python是3.12.2。所以生成的配置信息一直是3.12.2。把webui生成的配置文件删掉stable-diffusion-webui-master\venv\pyvenv.cfg或者修正里面的Python路径就可以了。

重新运行webui-user.bat。碰到新的问题如下:

网上查了一下解决方案最后得知要改stable-diffusion-webui-master\webui-user.bat里面的命令行参数项。

尝试方案set COMMANDLINE_ARGS = --skip-torch-cuda-test,结果还是报错。继续搜发现很多人都是通过这么设置解决的。仔细看发现有的解决方案里面等号两边没有多余的空格。删掉空格后, 解决了问题。

重新运行webui-user.bat。遇到无法安装clip的问题。多尝试运行几次解决问题。

重新运行webui-user.bat。遇到无法clone的问题。多尝试运行几次解决问题。

重新运行webui-user.bat。遇到找不到匹配的tb-nightly的问题。网上方案说是python源的问题。

重新设置源:pip config set global.index-url https://mirrors.aliyun.com/pypi/simple

重新运行webui-user.bat。页面终于出来了。

命令行终端中显示如下错误

webui能跑起来了但是没有model。所以又踏上了如何获取model的征程。在网上搜了一些关于model的介绍之后,对model有个大概的了解了。下了sd-v1-4,sd-v1-5的model。把model放到stable-diffusion-webui-master\models\Stable-diffusion下面。然后重新运行webui-user.bat。

选择model之后又出现了新的问题。

在CSDN里面找到两个解决方案:

1. Stable Diffusion WebUI linux部署问题 小哥哥/姐姐上传了clip-vit-large-patch14的文件。我参照这篇文章解决了上面的问题,不过没有按照作者的方法取替换代码里面的路径,我是直接创建stable-diffusion-webui-master\openai\clip-vit-large-patch14目录并把作者的文件直接放进去了。

2. https://blog.csdn.net/ruby0422/article/details/134675224 这个网盘里面3G多的东西有点大,自己在网盘中保存了一份。打算第一个方案不行再试一试这个。

第二天发现可以git clone openai/clip-vit-large-patch14 · Hugging Face 直接把clip-vit-large-patch14 clone下来, 不过这个更耗时间因为资源6.37 GiB。

然后重新运行webui-user.bat。model自动选中了。

查看控制台发现如下报错

网上发现要在启动参数加--precision full --no-half。即stable-diffusion-webui-master\webui-user.bat里面的命令行参数项设为set COMMANDLINE_ARGS=--skip-torch-cuda-test --precision full --no-half

重新运行webui-user.bat。现在所以的问题都没有了。可以输入prompt生成图片了。

prompt生成straw berry bear。

最后结果

后面有空再研究一下怎么训练模型。

更全的参考资料:Command Line Arguments and Settings

更新时间 2024-04-08