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

文章目录

    • Windows安装git
    • 下载 Stable Diffusion web UI GitHub 源码
    • stable-diffusion模型下载
    • 生成错误排查处理
    • 推荐阅读

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

Windows安装git

Git安装包下载地址:https://git-scm.com/download/win
Python开源库Stable Diffusion web UI搭建AI生图工具_第1张图片
git 安装过程就略掉了,国内网络下载确实很慢,相信大家都会有办法的。

下载 Stable Diffusion web UI GitHub 源码

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

git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git

Python开源库Stable Diffusion web UI搭建AI生图工具_第2张图片

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格式到本地安装
Python开源库Stable Diffusion web UI搭建AI生图工具_第3张图片

stable-diffusion模型下载

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

Python开源库Stable Diffusion web UI搭建AI生图工具_第4张图片
模型大小4GB,等待下载完成……
Python开源库Stable Diffusion web UI搭建AI生图工具_第5张图片
将模型复制到stable-diffusion-webui\models\Stable-diffusion目录:C:\Users\86186\stable-diffusion-webui\models\Stable-diffusion

同时在stable-diffusion-webui目录下找到webui-user.bat 双击并运行这个bat文件。
Python开源库Stable Diffusion web UI搭建AI生图工具_第6张图片
bat运行成功的话,会开始自动安装并启动。从运行提示来看,需要python至少是3.10.6版本。我们电脑上python的版本是3.11.5。
Python开源库Stable Diffusion web UI搭建AI生图工具_第7张图片
接着就耐心等待下载安装torch==2.0.1 等等python文件。
Python开源库Stable Diffusion web UI搭建AI生图工具_第8张图片
Python开源库Stable Diffusion web UI搭建AI生图工具_第9张图片
Python开源库Stable Diffusion web UI搭建AI生图工具_第10张图片
Python开源库Stable Diffusion web UI搭建AI生图工具_第11张图片

安装完成后,会自动打开本地的Web窗口:http://127.0.0.1:7860/ 基本上就算完成了。
Python开源库Stable Diffusion web UI搭建AI生图工具_第12张图片

安装完成后,我们需要增加模型。下载后的模型仍然放到stable-diffusion-webui\models\Stable-diffusion目录,并点击刷新按钮,就可以看到新的模型了。
Python开源库Stable Diffusion web UI搭建AI生图工具_第13张图片
Python开源库Stable Diffusion web UI搭建AI生图工具_第14张图片
在增加模型的过程,观察GPU和内存使用率都非常高,这点也对应了前面提到的硬体资源占用问题。
Python开源库Stable Diffusion web UI搭建AI生图工具_第15张图片

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

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 参数:

@echo off

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

call webui.bat

Python开源库Stable Diffusion web UI搭建AI生图工具_第16张图片
重新执行bat文件:

C:\Users\86186\stable-diffusion-webui>webui-user.bat

Python开源库Stable Diffusion web UI搭建AI生图工具_第17张图片

再重新打开模型:http://127.0.0.1:7860/,输入提示词,简单输了一个古风,侠客。发现已经开始有进图条了,看起来终于调好了。
Python开源库Stable Diffusion web UI搭建AI生图工具_第18张图片
Python开源库Stable Diffusion web UI搭建AI生图工具_第19张图片
经过耐心的等待,可以正常的文字生图了,不过,跟提示词粘了古风的边,侠客估计还在睡觉没起来。
Python开源库Stable Diffusion web UI搭建AI生图工具_第20张图片

重新来一次,这次的提示词是古风长发美女,执行过程顺便看了一下GPU,显存100%。
Python开源库Stable Diffusion web UI搭建AI生图工具_第21张图片
再次等待后,这次正常了,来了一位古装翩翩美少女。
Python开源库Stable Diffusion web UI搭建AI生图工具_第22张图片
以上就是运用开源库Stable Diffusion web UI搭建AI生图工具的过程,耗了一些时间,不过最终有成功完成。结果还是不错的。

推荐阅读

  • 程序猿无烦恼:让养生专家来写代码!!!
  • 如何使用 Google 的 Gemini
  • Python包管理器PIP用法大全
  • 【网络安全】Suspicious DNS Query(可疑的DNS查询)
  • 【Linux】Linux MTR(My TraceRoute)command
  • 【Linux】在Windows WSL (Linux的Windows子系统)上运行的Ubuntu如何更改主机名

你可能感兴趣的:(运维技术,人工智能,AI,文字生图)