关于【Stable-Diffusion WEBUI】基础模型对应VAE的问题

文章介绍了VAE在图像生成模型中的重要性,当VAE出现问题时可能导致图像色彩和细节异常。新模型通常已内置VAE,但用户仍需注意检查并选择合适的VAE以优化生成效果。通过模型工具箱插件可以查看和替换模型的VAE,对比不同VAE产生的图像差异以进行调整。

(零)前言

本篇主要提及模型的VAE,通常情况下我们不用考虑它,但是有些特别是早期模型并没有整合VAE……
更多不断丰富的内容参考:🔗《继续Stable-Diffusion WEBUI方方面面研究(内容索引)》

(一)什么是VAE

VAE(Variational Auto-Encoder 变分自动编码器)
虽然简称是编码器,实际上是编码解码器(我们用到的就是解码器部分啊)。
负责将把潜在表征重新转回图片形式。 原理可以参考:🔗这里

如果VAE不对那么你生成的图片色彩、细节、之类就会怪怪的。
比如下面是同个模型同样参数,不同VAE生成的图片:

错误的VAE:
请添加图片描述

正确的VAE:
请添加图片描述

(二)模型嵌入VAE了么

为啥之前完全不关注这个呢,因为大部分(新的)模型都嵌入了VAE,这样不会选错也便于使用。
只是有些模型是在介绍中说嵌入了VAE,有些模型会在文件名中包含VAE Baked字样。

这部分其实通常都不会有问题。
但是如果发现某个模型生成的图就像上面例子中一样不太对,就得考虑VAE的问题了。

我们可以通过之前文章《插件:模型工具箱》提到的模型工具箱插件。

  • 查看模型是不是包含了VAE
  • 替换或增加模型的VAE

可是偶然发现即使模型嵌入了VAE可能也有问题,这种估计只会出现在MIX融合模型上吧?
这个时候要么在生成图像时选择一个VAE,要么用工具箱修改模型,替换掉VAE。

(三)我们能做什么

(3.1)准备常见的VAE

这两个标准的先准备着:

  • vae-ft-ema-560000-ema-pruned.safetensors,参考:🔗这里
  • vae-ft-mse-840000-ema-pruned.safetensors,参考:🔗这里

(3.2)下载模型对应的VAE

如果模型和VAE是分别提供的,请都下载下来放在一起,别只下载模型文件。
当然VAE也可以放在Your SDWEBUI path/models/vae/里面。

(3.3)快捷设置中打开VAE下拉列表选择

一般保持auto自动就可以了,但想要方便换VAE,还是在快捷设置中打开吧。
什么是快捷设置?就是最上方左可以选基础模型的地方。把选择VAE也打开。
在这里插入图片描述

开打的方式就是【设置Setting】->【用户界面User Interface】->【快捷设置列表Quicksettings list】
加入“sd_vae”。(请不要删除前面的基础模型选择)。
在这里插入图片描述

(3.4)对比不同VAE生成的效果

如果感觉生成的图片色彩等不对劲的时候,可以对比不同VAE的效果。

保持模型和所有参数不变,选择“自动”和其它的VAE进行对比。
如果像最上面的例子一样,画质明显区别,说明这个模型没有VAE或者用错了。

修正方式就是根据模型的说明,加载VAE。
或者用工具箱插件,将对应VAE融入模型。


😄 … 完

构建和部署 `stable-diffusion-webui` 模型涉及多个步骤,包括环境准备、模型下载、文件存放路径配置以及服务启动。以下是详细的流程说明: ### 环境准备 在开始之前,请确保系统中已经安装了以下组件: - **Python**(建议版本为 3.8 或更高) - **Git** - **CUDA Toolkit**(如果使用 NVIDIA GPU) - **Docker**(可选,用于容器化部署) 此外,还需安装必要的依赖库,例如 `PyTorch` 和 `transformers` 等。 ### 下载 stable-diffusion-webui 可以通过克隆官方仓库来获取 `stable-diffusion-webui` 的源码: ```bash git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git cd stable-diffusion-webui ``` ### 模型文件存放路径 为了确保模型能够正常加载,需要将不同类型的模型文件放置到指定的目录中: - **LoRA 模型**:`/root/stable-diffusion-webui/models/Lora/` - **Checkpoints 模型**:`/root/stable-diffusion-webui/models/Stable-diffusion/` - **ControlNet 模型**:`/root/stable-diffusion-webui/models/ControlNet/` - **Embeddings 模型**:`/root/stable-diffusion-webui/embeddings/` - **Hypernetworks 模型**:`/root/stable-diffusion-webui/models/hypernetworks/` - **VAE 模型**:`/root/stable-diffusion-webui/models/VAE/` 每次添加新模型后,都需要重启 `stable-diffusion-webui` 服务以使更改生效 [^1]。 ### 部署方式 #### 使用 Docker 部署 可以使用 Docker 来简化部署过程,并通过挂载卷的方式将本地目录映射到容器内部: ```bash docker run -it -d --name stable-diffusion \ -p 7860:7860 \ --gpus all \ --network host \ -v /data/stable-diffusion-webui/openai:/app/stable-diffusion-webui/openai \ -v /data/stable-diffusion-webui/models:/app/stable-diffusion-webui/models \ -v /data/stable-diffusion-webui/outputs:/app/stable-diffusion-webui/outputs \ --rm registry.example.com/stable-diffusion-webui:latest-cuda \ bash webui.sh --share --listen --gradio-auth username:password ``` 此命令会启动一个包含所有必要依赖的 Docker 容器,并将模型、输出等目录映射到宿主机上 [^2]。 #### 手动部署(Ubuntu) 如果你选择手动部署,可以按照以下步骤操作: 1. 解压模型文件: ```bash tar -xvf models--bert-base-uncased.tar.gz -C ~/.cache/huggingface/hub/ ``` 2. 进入项目目录并运行启动脚本: ```bash cd stable-diffusion-webui ./webui.sh ``` 该脚本会自动检测并安装所需的依赖项,并启动 Web UI 服务 [^3]。 ### 启动服务 无论是通过 Docker 还是手动方式,启动服务后都可以通过浏览器访问 `http://localhost:7860` 来打开 `stable-diffusion-webui` 的界面。 ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值