引言:
Stable Diffusion是一个AI 绘图软件 (开源模型),可本地部署,可切换多种模型,且新的模型和开源库每天都在更新发布,最重要的是免费,没有绘图次数限制。
Stable Diffusion 的 Web 界面,使用 Gradio 库实现。
特征
Detailed feature showcase with images:
- 原始 txt2img 和 img2img 模式
- 一键安装并运行脚本(但您仍然必须安装 python 和 git)
- 外画
- 修复
- 彩色素描
- 提示矩阵
- 稳定扩散高档
- 注意,指定模型应更加注意的文本部分
- 穿A的男人-会更加注意燕尾服
((tuxedo))
- A Man in a - 替代语法
(tuxedo:1.21)
- 选择文本并按 或(如果您使用的是 MacOS,则按 或 或)自动调整对所选文本(匿名用户提供的代码)的关注
Ctrl+Up
Ctrl+Down
Command+Up
Command+Down
- 穿A的男人-会更加注意燕尾服
- 环回,多次运行 img2img 处理
- X/Y/Z 图,一种绘制具有不同参数的图像的 3 维图的方法
- 文本反转
- 拥有任意数量的嵌入,并使用您喜欢的任何名称
- 使用多个嵌入,每个令牌具有不同数量的向量
- 适用于半精度浮点数
- 8GB 上的火车嵌入(也有 6GB 工作的报告)
- “附加功能”选项卡,其中包含:
- GFPGAN,修复人脸的神经网络
- CodeFormer,作为GFPGAN替代品的人脸修复工具
- RealESRGAN,神经网络升频器
- ESRGAN,具有许多第三方模型的神经网络升频器
- SwinIR 和 Swin2SR(见此处),神经网络升频器
- LDSR, 潜伏扩散超分辨率升频
- 调整宽高比选项的大小
- 取样方法选择
- 调整采样器 eta 值(噪声倍增器)
- 更高级的噪音设置选项
- 随时中断处理
- 支持 4GB 显卡(也有 2GB 工作的报告)
- 批次的正确种子
- 实时提示令牌长度验证
- 生成参数
- 用于生成图像的参数将与该图像一起保存
- 在 PNG 块中用于 PNG,在 EXIF 中用于 JPEG
- 可以将图像拖拽到PNG信息选项卡以恢复生成参数并自动复制到UI中
- 可以在设置中禁用
- 将图像/文本参数拖放到提示框
- 读取生成参数按钮,将提示框中的参数加载到 UI
- “设置”页面
- 从 UI 运行任意 python 代码(必须运行才能启用)
--allow-code
- 大多数 UI 元素的鼠标悬停提示
- 可以通过文本配置更改 UI 元素的默认值/混合值/最大值/步长值
- 平铺支持,一个复选框,用于创建可以像纹理一样平铺的图像
- 进度条和实时图像生成预览
- 可以使用单独的神经网络来生成预览,几乎不需要 VRAM,也不需要计算
- 否定提示,一个额外的文本字段,允许您列出您不想在生成的图像中看到的内容
- 样式,一种保存部分提示并稍后通过下拉列表轻松应用它们的方法
- 变体,一种生成相同图像但差异微小的方法
- 种子调整大小,一种生成相同图像但分辨率略有不同的方法
- CLIP询问器,一个试图从图像中猜测提示的按钮
- 提示编辑,一种改变提示中代的方法,比如说开始做一个西瓜,中途切换到动漫女孩
- 批处理,使用img2img处理一组文件
- Img2img 替代,反向欧拉交叉注意力控制法
- Highres Fix,一个方便的选择,只需单击一下即可生成高分辨率图片,而不会出现常见的失真
- 动态重新加载检查点
- 检查点合并,一个选项卡,允许您将最多 3 个检查点合并为一个
- 具有许多来自社区的扩展的自定义脚本
- Composable-Diffusion,一种同时使用多个提示的方法
- 使用大写字母分隔提示
AND
- 还支持提示的权重:
a cat :1.2 AND a dog AND a penguin :2.2
- 使用大写字母分隔提示
- 提示没有令牌限制(原始稳定扩散允许您使用多达 75 个令牌)
- DeepDanbooru 集成,为动漫提示创建 danbooru 样式标签
- xformers,选择卡的主要速度提升:(添加到命令行参数)
--xformers
- 通过扩展:历史选项卡:在UI中方便地查看,定向和删除图像
- “永久生成”选项
- “培训”选项卡
- 超网络和嵌入选项
- 预处理图像:裁剪、镜像、使用 BLIP 或 deepdanbooru 自动标记(用于动漫)
- 剪辑跳过
- 超网络
- Loras(与超网络相同,但更漂亮)
- 一个单独的 UI,您可以在其中选择,预览,哪些嵌入、超网络或 Loras 添加到您的提示中
- 可以从设置屏幕选择加载不同的VAE
- 进度条中的预计完成时间
- 应用程序接口
- 支持RunwayML的专用修复模型
- via extension:美学渐变,一种通过使用剪辑图像嵌入生成具有特定美学的图像的方法(实现 https://github.com/vicgalle/stable-diffusion-aesthetic-gradients)
- Stable Diffusion 2.0 支持 - 有关说明,请参阅 wiki
- Alt-Diffusion 支持 - 有关说明,请参阅 wiki
- 现在没有任何不好的字母!
- 以安全张量格式加载检查点
- 放宽分辨率限制:生成的图像尺寸必须是 8 的倍数,而不是 64
- 现在有了许可证!
- 从设置屏幕对 UI 中的元素重新排序
- Segmind Stable Diffusion 支持
安装和运行
确保满足所需的依赖项,并按照以下说明进行操作:
- NVidia(推荐)
- AMD公司GPU。
- Intel CPU、Intel GPU(集成和独立)(外部 wiki 页面)
或者,使用在线服务(如 Google Colab):
- 在线服务列表
使用发布包在 Windows 10/11 上使用 NVidia-GPU 进行安装
- 从 v1.0.0-pre 下载并解压其内容。
sd.webui.zip
- 跑。
update.bat
- 跑。
run.bat
有关详细信息,请参阅在 NVidia-GPU 上安装和运行
在 Windows 上自动安装
- 安装 Python 3.10.6(较新版本的 Python 不支持 torch),选中“将 Python 添加到 PATH”。
- 安装 git。
- 下载 stable-diffusion-webui 存储库,例如通过运行 .
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git
- 以普通、非管理员、用户身份从 Windows 资源管理器运行。
webui-user.bat
在 Linux 上自动安装
- 安装依赖项:
# Debian-based:
sudo apt install wget git python3 python3-venv libgl1 libglib2.0-0
# Red Hat-based:
sudo dnf install wget git python3 gperftools-libs libglvnd-glx
# openSUSE-based:
sudo zypper install wget git python3 libtcmalloc4 libglvnd
# Arch-based:
sudo pacman -S wget git python3
- 导航到要安装 webui 的目录,然后执行以下命令:
wget -q https://raw.githubusercontent.com/AUTOMATIC1111/stable-diffusion-webui/master/webui.sh
- 运行:
webui.sh
- 检查选项。
webui-user.sh
安装在 Apple 芯片上
Mac 用户:请提供反馈,说明这些说明是否适合您,以及是否有任何不清楚的地方,或者您仍然遇到此处当前未提及的安装问题。
重要提示
目前,Web UI中的大多数功能都可以在macOS上正常工作,最值得注意的例外是CLIP询问器和训练。虽然训练似乎确实有效,但它非常慢,并且消耗了过多的内存。可以使用 CLIP 询问器,但它无法与 macOS 使用的 GPU 加速一起正常工作,因此默认配置将完全通过 CPU 运行它(速度很慢)。
众所周知,大多数采样器都可以工作,唯一的例外是使用 Stable Diffusion 2.0 模型时的 PLMS 采样器。在 macOS 上使用 GPU 加速生成的图像通常应与具有相同设置和种子的 CPU 上生成的图像匹配或几乎匹配。
自动安装
新安装:
- 如果未安装 Homebrew,请按照 https://brew.sh 中的说明进行安装。保持终端窗口打开状态,然后按照“后续步骤”下的说明将 Homebrew 添加到您的 PATH 中。
- 打开新的终端窗口并运行
brew install cmake protobuf rust python@3.10 git wget
- 通过运行克隆 Web UI 存储库
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui
- 将要使用的 Stable Diffusion 模型/检查点放入 。如果您没有,请参阅下面的下载稳定扩散模型。
stable-diffusion-webui/models/Stable-diffusion
cd stable-diffusion-webui
,然后运行 Web UI。将使用 venv 创建和激活 Python 虚拟环境,并自动下载和安装任何剩余的缺失依赖项。./webui.sh
- 若要稍后重新启动 Web UI 进程,请再次运行。请注意,它不会自动更新 Web UI;若要更新,请在运行之前运行。
./webui.sh
git pull
./webui.sh
现有安装:
如果您有使用 创建的 Web UI 的现有安装,请从文件夹中删除该文件和文件夹。然后运行以更新 Web UI,然后运行它。setup_mac.sh
run_webui_mac.sh
repositories
stable-diffusion-webui
git pull
./webui.sh
下载稳定扩散模型
如果您没有任何模型可以使用,可以从 Hugging Face 下载 Stable Diffusion 模型。要下载,请单击模型,然后单击标题。查找带有“.ckpt”或“.safetensors”扩展名的文件,然后单击文件大小右侧的向下箭头进行下载。Files and versions
一些流行的官方 Stable Diffusion 模型是:
- 稳定扩散 1.4 (sd-v1-4.ckpt))
- 稳定扩散 1.5 (v1-5-pruned-emaonly.ckpt))
- 稳定扩散 1.5 修复 (sd-v1-5-inpainting.ckpt)
Stable Diffusion 2.0 和 2.1 需要模型和配置文件,生成图像时需要将图像宽度和高度设置为 768 或更高:
- 稳定扩散 2.0 (768-v-ema.ckpt)
- 稳定扩散 2.1 (v2-1_768-ema-pruned.ckpt))
对于配置文件,按住键盘上的选项键并单击此处下载(它可以下载为)。在 Finder 中,选择该文件,然后转到菜单并选择>。在出现的窗口中,选择文件名并将其更改为模型的文件名,但文件扩展名而不是 ,按键盘上的回车键(如果出现提示,请确认更改文件扩展名),并将其放在与模型相同的文件夹中(例如,如果您下载了模型,请将其重命名为并将其与模型一起放入)。v2-inference-v.yaml
v2-inference-v.yaml.yml
File
Get Info
.yaml
.ckpt
768-v-ema.ckpt
768-v-ema.yaml
stable-diffusion-webui/models/Stable-diffusion
此外,还提供 Stable Diffusion 2.0 深度模型 (512-depth-ema.ckpt)。通过按住键盘上的选项并单击此处下载配置文件,然后以与上述相同的方式使用扩展名重命名它并将其与模型一起放入。请注意,此模型适用于宽度/高度为 512 或更高的图像尺寸,而不是 768。v2-midas-inference.yaml
.yaml
stable-diffusion-webui/models/Stable-diffusion
故障 排除
Web UI 无法启动:
如果在尝试启动 Web UI 时遇到错误,请尝试从文件夹中删除 and 文件夹,然后在再次运行之前更新 Web UI。./webui.sh
repositories
venv
stable-diffusion-webui
git pull
./webui.sh
性能不佳:
目前,macOS 上的 GPU 加速会占用大量内存。如果性能较差(如果使用任何采样器生成 512x512 图像需要 20 个步骤超过一分钟)
- 尝试从命令行选项(即 )开始,看看是否有帮助。
--opt-split-attention-v1
./webui.sh --opt-split-attention-v1
- 没有太大区别吗?
- 打开位于 /Applications/Utilities 中的 Activity Monitor 应用程序,并在“内存”选项卡下检查内存压力图。生成图像时,内存压力以红色显示
- 关闭 Web UI 进程,然后添加命令行选项(即 )。
--medvram
./webui.sh --opt-split-attention-v1 --medvram
- 该选项的性能仍然很差,内存压力仍然很红?
- 尝试(即)。
--lowvram
./webui.sh --opt-split-attention-v1 --lowvram
- 尝试(即)。
- 使用任何采样器生成 512x512 图像仍然需要几分钟以上的时间,其中包含 20 个步骤?
- 您可能需要关闭 GPU 加速。
- 在 Xcode 中打开
webui-user.sh
- 更改为 .
#export COMMANDLINE_ARGS=""
export COMMANDLINE_ARGS="--skip-torch-cuda-test --no-half --use-cpu all"
- 在 Xcode 中打开
- 您可能需要关闭 GPU 加速。