Python开源库Stable Diffusion web UI搭建AI生图工具

文章目录

使用的开源库为 Stable Diffusion web UI,它是基于 Gradio 库的 Stable Diffusion 浏览器界面。
运行 Stable Diffusion 需要硬件要求比较高,运行时会消耗较大的GPU资源,硬件环境最好是有独立显卡。所以我在家里的PC上进行部署环境,此前玩WOW,买了一张独立显卡GTX 1660 Ti,看看能不能运行起来。

Windows安装git

Git安装包下载地址:https://git-scm.com/download/win

git 安装过程就略掉了,国内网络下载确实很慢,相信大家都会有办法的。

下载 Stable Diffusion web UI GitHub 源码

从github下载Stable Diffusion web UI GitHub 源码,下载链接:https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

bash 复制代码
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
bash 复制代码
admin@DESKTOP-6EEG99D MINGW64 ~
$ git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
Cloning into 'stable-diffusion-webui'...
remote: Enumerating objects: 28998, done.
remote: Counting objects: 100% (46/46), done.
remote: Compressing objects: 100% (29/29), done.
remote: Total 28998 (delta 26), reused 28 (delta 17), pack-reused 28952
Receiving objects: 100% (28998/28998), 32.90 MiB | 2.83 MiB/s, done.
Resolving deltas: 100% (20282/20282), done.

admin@DESKTOP-6EEG99D MINGW64 ~

git安装后,stable-diffusion-webui在路径:C:\Users\86186\stable-diffusion-webui

如果不想安装git,也可以下载zip格式到本地安装

stable-diffusion模型下载

模型下载地址:https://huggingface.co/CompVis/stable-diffusion-v-1-4-original

模型大小4GB,等待下载完成......

将模型复制到stable-diffusion-webui\models\Stable-diffusion目录:C:\Users\86186\stable-diffusion-webui\models\Stable-diffusion

同时在stable-diffusion-webui目录下找到webui-user.bat 双击并运行这个bat文件。

bat运行成功的话,会开始自动安装并启动。从运行提示来看,需要python至少是3.10.6版本。我们电脑上python的版本是3.11.5。

接着就耐心等待下载安装torch==2.0.1 等等python文件。



安装完成后,会自动打开本地的Web窗口:http://127.0.0.1:7860/ 基本上就算完成了。

安装完成后,我们需要增加模型。下载后的模型仍然放到stable-diffusion-webui\models\Stable-diffusion目录,并点击刷新按钮,就可以看到新的模型了。

在增加模型的过程,观察GPU和内存使用率都非常高,这点也对应了前面提到的硬体资源占用问题。

尝试进行文字生图时,产生图片失败,报错如下,按照提示和网上找了一些建议,一直没有解决。

NansException: A tensor with all NaNs was produced in Unet. This could be either because there's not enough precision to represent the picture, or because your video card does not support half type. Try setting the "Upcast cross attention layer to float32 " option in Settings > Stable Diffusion or using the --no-half commandline argument to fix this. Use --disable-nan-check commandline argument to disable this check.

生成错误排查处理

网络上也有一些解决这个问题的提问,大家也可以参考一下:
Stable Diffusion 生成出现错误
加载不了safetensor模型


第二天......


找到文件目录webui-user.bat文件,并增加--no-half 参数:

bash 复制代码
@echo off

set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=--no-half

call webui.bat

重新执行bat文件:

bash 复制代码
C:\Users\86186\stable-diffusion-webui>webui-user.bat

再重新打开模型:http://127.0.0.1:7860/,输入提示词,简单输了一个古风,侠客。发现已经开始有进图条了,看起来终于调好了。

经过耐心的等待,可以正常的文字生图了,不过,跟提示词粘了古风的边,侠客估计还在睡觉没起来。

重新来一次,这次的提示词是古风长发美女,执行过程顺便看了一下GPU,显存100%。

再次等待后,这次正常了,来了一位古装翩翩美少女。

以上就是运用开源库Stable Diffusion web UI搭建AI生图工具的过程,耗了一些时间,不过最终有成功完成。结果还是不错的。

推荐阅读

相关推荐
黑心萝卜三条杠4 分钟前
解码微生物适应性的关键:基因组序列与栖息地预测的深度关联
人工智能
黑心萝卜三条杠27 分钟前
Everywhere Attack:通过多目标植入提升对抗样本的目标迁移性
人工智能
carpell39 分钟前
【语义分割专栏】3:Segnet原理篇
人工智能·python·深度学习·计算机视觉·语义分割
ahead~1 小时前
【大模型原理与技术-毛玉仁】第五章 模型编辑
人工智能·深度学习·机器学习
迪娜学姐1 小时前
GenSpark vs Manus实测对比:文献综述与学术PPT,哪家强?
论文阅读·人工智能·prompt·powerpoint·论文笔记
宝桥南山1 小时前
Microsoft Copilot Studio - 尝试一下Agent
microsoft·ai·微软·copilot·rpa·low-code
TDengine (老段)1 小时前
TDengine 在电力行业如何使用 AI ?
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据
猎板PCB厚铜专家大族1 小时前
高频 PCB 技术发展趋势与应用解析
人工智能·算法·设计规范
l0sgAi1 小时前
SpringBoot整合LangChain4j实现RAG (检索增强生成)
人工智能
祐言QAQ1 小时前
浅谈边缘计算
人工智能·边缘计算