综合介绍
Stable Diffusion WebUI Forge是基于Stable Diffusion WebUI (Gradio版本)建立的平台,目的是为了简化开发流程、优化资源管理并加速推理处理速度。它提供了许多原始WebUI没有的加速和优化措施。Forge支持的特性包括GPU推理加速、资源管理优化、UNet补丁简化集成新方法、扩展开发便捷性和自动资源管理等。此外,开发者还提供了ControlNet扩展示例来帮助用户开发自己的特性。
功能列表
GPU推理加速
资源管理优化
UNet补丁:集成新方法
扩展开发便捷
自动资源管理
使用帮助
访问GitHub仓库获取最新代码
根据文档安装和运行
使用Stable Diffusion WebUI Forge进行图像生成
利用UNet补丁和ControlNet示例开发自定义扩展
与原始的 WebUI(用于在 1024px 下进行 SDXL 推理)相比,你可以期待以下加速效果:
如果你使用的是常见的 GPU,比如 8GB 显存,你可以期待推理速度(it/s)提升约 30~45%,GPU 内存峰值(在任务管理器中)将从约 700MB 下降到 1.3GB,最大扩散分辨率(不会发生内存不足)将增加约 2 倍至 3 倍,最大扩散批量大小(不会发生内存不足)将增加约 4 倍至 6 倍。
如果你使用的是像 6GB 显存这样的较低性能 GPU,你可以期待推理速度(it/s)提升约 60~75%,GPU 内存峰值(在任务管理器中)将从约 800MB 下降到 1.5GB,最大扩散分辨率(不会发生内存不足)将增加约 3 倍,最大扩散批量大小(不会发生内存不足)将增加约 4 倍。
如果你使用的是像 4090 这样的高性能 GPU,拥有 24GB 显存,你可以期待推理速度(it/s)提升约 3~6%,GPU 内存峰值(在任务管理器中)将从约 1GB 下降到 1.4GB,最大扩散分辨率(不会发生内存不足)将增加约 1.6 倍,最大扩散批量大小(不会发生内存不足)将增加约 2 倍。
如果你使用 SDXL 的 ControlNet,最大 ControlNet 计数(不会发生内存不足)将增加约 2 倍,使用 SDXL+ControlNet 的速度将提升约 30~45%。
Forge 带来的另一个非常重要的变化是 Unet Patcher。通过使用 Unet Patcher,像 Self-Attention Guidance、Kohya High Res Fix、FreeU、StyleAlign、Hypertile 等方法都可以在大约 100 行代码内实现。
得益于 Unet Patcher,现在许多新事物成为可能,并在 Forge 中得到支持,包括 SVD、Z123、masked Ip-adapter、masked controlnet、photomaker 等。
不再需要对 UNet 进行 monkeypatch 或与其他扩展发生冲突了!
Forge 还增加了一些采样器,包括但不限于 DDPM、DDPM Karras、DPM++ 2M Turbo、DPM++ 2M SDE Turbo、LCM Karras、Euler A Turbo 等(LCM 自 1.7.0 起已在原始 webui 中)。