Stable Diffusion AI绘画工具本地部署教程
参考文章:
Stable Diffusion本地部署NovelAI及网络共享教程22.10.16更新 - 哔哩哔哩 (bilibili.com)
Stable Diffusion安装指南 | WINDOWS 10 & 11| AUTOMATIC1111中文汉化 | 指定PYTHON版本3.10.6 | 自动更新 - YouTube
Stable Diffusion安装指南 | WINDOWS 10 & 11| AUTOMATIC1111中文汉化 | 指定PYTHON版本3.10.6 | 自动更新 (notion.site)
7分钟学会AI绘画Stable Diffusion——C站模型一样惊艳的图片_哔哩哔哩_bilibili
最近部署了一个ai绘画工具,本来打算写一个教程的,但是这个大佬写的已经非常详细了,跟着他做就行,我在这就更新一下我在本次部署中遇到的问题已及解决方案
Stable Diffusion安装指南 | WINDOWS 10 & 11| AUTOMATIC1111中文汉化 | 指定PYTHON版本3.10.6 | 自动更新 - YouTube
文字教程:Stable Diffusion安装指南 | WINDOWS 10 & 11| AUTOMATIC1111中文汉化 | 指定PYTHON版本3.10.6 | 自动更新 (notion.site)
局域网或者公网访问本地部署的Stable Diffusion
用记事本编辑webui-user.bat在COMMANDLINE_ARGS= 后面增加参数,可以实现局域网或者公网访问搭建的Stable Diffusion,具体说明如下:
使用 --listen 参数,可以让让服务器监听网络连接。 这将允许本地网络上的设备访问 UI界面,如果您配置了端口转发,互联网上的计算机也可以访问。用此参数启动后,你可以按win+R键,输入CMD回车,打开命令提示符窗口,输入ipconfig命令回车,查看本机的局域网地址,比如192.168.1.XX,然后在局域网其他机器或者手机上的浏览器输入192.168.1.XX:7860(修改端口看下面说明)这个地址就能访问WebUI界面了,生成的图片照样会保存在本地部署的机器上。
使用 --port xxxx 参数,让服务监听指定端口, xxxx 是你期望的端口。记住所有小于1024的端口都需要root/admin权限,因此建议使用大于1024的端口,默认端口为7860。
使用 --gradio-auth 用户名:密码 参数可以添加共享认证功能,可选的,你可以在命令上分别添加多组用户名和密码(用户:密码1, 用户2:密码2),命令里的符号记得用英文符号。
初始化设置
设置基础参数
将Settings--Stable-Diffusion中的Clipskip调整为2
将Settings--SamplerParameters(采样器参数)中的EtaNoiseSeedDelta调整为31337
添加快捷列表
在设置-用户界面-快捷设置列表中添加下列代码
sd_model_checkpoint,sd_vae,sd_hypernetwork,CLIP_stop_at_last_layers
推荐分辨率
我们的画布大小会影响出来图片的结构和质量,因为现在大部分的模型都是基于512分辨率进行训练的,所以大分辨率并不一定是好事,如果你需要得到高清的图像,可以在生成图像时勾选Hires.fix(高分辨率修复)
512512 ,512768
StableDiffusion的施法的构成基础
1.CheckPoint (主模型)
这个是我们作图的基础,大家可以根据自己的需求,在Civital上进行下载
安装路径:\软件文件夹\Models\Stable-diffusion\
2.lora (微调模型,类似模型的mod)
可以让我们更轻松的获得我们想要的图像结果,比如特定的脸型衣服姿势风格等
lora是一个通过少量图片训练的小模型,可以和大模型结合使用,干涉大模型产生的结果,帮助我们得到一个更想要的效果
lora的模型一般分为两类,风格类和角色类
安装路径:\软件文件夹\models\Lora\
3.VAE(美化模型,变分自编码器)
VAE 是一种生成模型,可以用来对图像进行编码和解码。
为 Stable-diffusion 的模型提供:
低维的隐空间,可以在这个空间中控制图像的风格和特征。
初始化的图像,可以在这个图像的基础上进行细化和改进。
颜色校正的功能,可以让生成的图像更加鲜艳或者柔和。
可以让我们生成图片的细节更加的丰富
安装路径: \软件文件夹\models\VAE\
4.TextualInversion(Embeddings) (嵌入式语言模型)
TextualInversion是StableDiffusion中的一种变体,它基于文本数据生成图像。该算法将输入的文本数据转换成稳定随机过程的参数,然后使用这些参数来生成纹理和形状。因此,TextualInversion可以用于将文本数据可视化,并探索文本数据的结构和模式。
安装路径:\软件文件夹\embeddings\
5.Hypernetwork(超级网格)
通过画风训练产出,能够指定特定画风
安装路径:\软件文件夹\Models\hypernetworks
我常用的一些好用的模型下载地址
Protogen x3.4 (Photorealism) Official Release | Stable Diffusion Checkpoint | Civitai
Protogen v2.2 (Anime) Official Release | Stable Diffusion Checkpoint | Civitai
添加插件
添加提示词插件 教程视频
添加ControlNet插件 教程视频
提示词的使用方法
提示词使用教程 教程视频
提示词网站
图生图使用方法
AI绘画Stable Diffusion——图生图详解及小显存如何制作4K图片_哔哩哔哩_bilibili
学习如何使用
7分钟学会AI绘画Stable Diffusion——C站模型一样惊艳的图片_哔哩哔哩_bilibili
遇到的问题
第一次运行webui-user.bat,提示未找到pip程序
解决方法为删除bat文件生成的tmp,venv文件夹,再次重新运行bat即可,原因可能是网络问题导致下载一些必要支持程序时下载不下来报错,如果多次重复本操作还是不能使用的话,可以试试科学上网.
安装拓展时提示拓展访问被禁用
在启动WebUI的时候添加一个参数--enable-insecure-extension-access
set COMMANDLINE_ARGS= --enable-insecure-extension-access
生成图片时提示没有足够的精度来表示图像
modules.devices.NansException: A tensor with all NaNs was produced in VAE. This could be because there's not enough precision to represent the picture. Try adding --no-half-vae commandline argument to fix this. Use --disable-nan-check commandline argument to disable this check.
翻译过来就是
modules.devices.NansException:一个包含所有nan的张量在VAE中生成。这可能是因为没有足够的精度来表示图像。尝试添加——no-half-vae命令行参数来修复这个问题。使用——disable-nan-check命令行参数禁用此检查。
在启动WebUI的时候添加一个参数--no-half-vae
set COMMANDLINE_ARGS= --no-half-vae
运行时报错 share = True,
To create a public link, set `share=True` in `launch()`. Startup time: 11.3s (import torch: 1.0s, import gradio: 0.7s, import ldm: 0.4s, other imports: 0.6s, setup codeformer: 0.1s, load scripts: 0.6s, load SD checkpoint: 3.1s, create ui: 0.5s, gradio launch: 4.1s).
这是因为内网穿透问题导致的
将webui.py文件中的share=cmd opts.share 替换成 share=True,之后重新运行即可
显存优化相关
第一步: 用记事本编辑 webui-user.bat
第二步: 找到COMMANDLINE_ARGS= , 在后面输入参数
比如: COMMANDLINE_ARGS=--medvram
如果你是4GB显存想生成512x512 (或更大) 图片,
使用 --medvram 参数
如果你是2GB显存,
使用 --lowvram参数