Stable Diffusion Web UI 是一个基于浏览器的图形用户界面,用于 Stable Diffusion,这是一种深度学习文本到图像模型。该界面使用户能够通过各种深度学习技术生成、编辑和增强图像,而无需具备广泛的技术知识。该应用程序为文本到图像、图像到图像、图像修复、图像扩展以及各种其他图像处理功能提供了一套全面的功能。
本概述介绍了 Stable Diffusion Web UI 系统的架构、关键组件和工作流程。有关安装说明,请参阅 安装和设置,有关使用该界面的详细指南,请参阅 Web UI 指南。
Stable Diffusion Web UI 采用模块化架构构建,将用户界面、图像生成管线、模型管理和扩展系统分离开来。这种设计提供了灵活性、可扩展性和高效的资源利用。
来源: webui.py1-162 README.md1-95
该架构包含几个核心组件
应用程序的启动过程遵循特定顺序来初始化组件、加载模型和准备用户界面。
来源: webui.py18-46 webui.py48-154
启动顺序包括
webui.py 文件是主要入口点,它处理两种主要启动模式
webui() 函数)api_only() 函数)系统的核心是图像生成管线,它使用 Stable Diffusion 模型将用户提示和参数转换为图像。
来源: README.md6-73
图像生成管线包括
StableDiffusionProcessing 为基类,具有文本到图像(StableDiffusionProcessingTxt2Img)和图像到图像(StableDiffusionProcessingImg2Img)的专用子类process_images 函数协调生成过程CFGDenoiser 应用无分类器引导Stable Diffusion Web UI 通过其脚本和扩展系统具有高度可扩展性,允许开发人员添加新功能。
来源: README.md66-69 README.md16-22
扩展系统提供
配置系统管理用户偏好、系统设置和命令行选项。
来源: webui.py48-70
配置系统由以下部分组成
cmd_args.py 处理以进行初始设置shared_options.py 管理,用于用户偏好shared.py 模块作为应用程序状态的中央存储库ui_config.json 中,用于 UI 特定设置设置按类别组织,以便在 UI 设置选项卡中轻松管理。
Stable Diffusion Web UI 使用临时目录系统来管理生成的图像和其他临时文件。
来源: modules/ui_tempdir.py1-101
临时文件系统
Stable Diffusion Web UI 提供了丰富的特性集,扩展了基础 Stable Diffusion 模型的功能。有关这些功能的全面指南,请参阅 主要功能。
主要功能包括:
| 功能类别 | 描述 |
|---|---|
| 生成模式 | 文本到图像、图像到图像、图像修复、图像扩展 |
| 特殊技术 | 提示矩阵、X/Y/Z 图、文本反演、超网络、LoRA |
| 图像处理 | GFPGAN 人脸修复、RealESRGAN 放大、各种 VAE 选项 |
| 用户体验 | 实时预览、提示编辑、样式系统、参数管理 |
| 可扩展性 | 自定义脚本、扩展、API 访问 |
来源: README.md6-94
该系统根据所需功能和性能有不同的硬件要求。有关详细要求,请参阅 系统要求。
| 组件 | 最低要求 | 推荐要求 |
|---|---|---|
| 显卡 | 4GB VRAM(优化后可能需要 2GB) | 8GB+ 显存 |
| 内存 | 8GB | 16GB+ |
| 磁盘空间 | 10GB | 20GB+ 用于模型 |
| 操作系统 | Windows 10/11, Linux, macOS | Windows 10/11, Linux |
来源: README.md97-102
Stable Diffusion Web UI 通过模块化、可扩展的架构提供了对 Stable Diffusion 模型全面的界面。其关键组件包括 Web 界面、图像生成管线、模型管理系统和扩展系统。该应用程序遵循结构化的初始化过程,并提供强大的配置选项。
通过支持各种生成模式、模型类型和扩展功能,它为普通用户和开发人员都提供了灵活的平台。该系统设计得易于访问,同时仍为高级用户提供高级功能。