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生图工具的过程,耗了一些时间,不过最终有成功完成。结果还是不错的。

推荐阅读

相关推荐
LZXCyrus26 分钟前
【杂记】vLLM如何指定GPU单卡/多卡离线推理
人工智能·经验分享·python·深度学习·语言模型·llm·vllm
我感觉。44 分钟前
【机器学习chp4】特征工程
人工智能·机器学习·主成分分析·特征工程
YRr YRr1 小时前
深度学习神经网络中的优化器的使用
人工智能·深度学习·神经网络
DieYoung_Alive1 小时前
一篇文章了解机器学习(下)
人工智能·机器学习
夏沫的梦1 小时前
生成式AI对产业的影响与冲击
人工智能·aigc
jwolf21 小时前
Elasticsearch向量搜索:从语义搜索到图搜图只有一步之遥
elasticsearch·搜索引擎·ai
goomind1 小时前
YOLOv8实战木材缺陷识别
人工智能·yolo·目标检测·缺陷检测·pyqt5·木材缺陷识别
只怕自己不够好1 小时前
《OpenCV 图像基础操作全解析:从读取到像素处理与 ROI 应用》
人工智能·opencv·计算机视觉
幻风_huanfeng1 小时前
人工智能之数学基础:线性代数在人工智能中的地位
人工智能·深度学习·神经网络·线性代数·机器学习·自然语言处理
嵌入式大圣1 小时前
嵌入式系统与OpenCV
人工智能·opencv·计算机视觉