大家好,我是灵魂画师向阳
今天给大家分享一个基于Stable Diffusion WebUI 构建的AI绘图工具—sd-webui-forge,该工具的目标在于简化插件开发,优化资源管理,加速推理。
Forge承诺永远不会对Stable Diffusion WebUI用户界面添加不必要的改变,对于熟悉Stable Diffusion WebUI的同学,能够借助 WebUI经验,快速上手Forge的操作使用。
题外话:Forge作者一直活跃在AIGC绘图社区。先后开源了ControlNet、Foooucs社区优秀的开源软件,最近他又投入到Forge的开发,目标简化AIGC新手入门绘图门槛。
在分辨率为1024px图像质量下,Forge与原始WebUI在SDXL模型推理速率相比,可获得极大的性能加速提升:
-
如果你使用常见的GPU,如8GB显存,推理速度(it/s)可以提高约30~45%,GPU内存峰值(在任务管理器中)降低约700MB到1.3GB,最大扩散分辨率(不会OOM)提高约2倍到3倍,最大扩散批量大小(不会OOM)提高约4倍到6倍。
-
如果你使用性能较低的GPU,如6GB显存,推理速度(it/s)可以提高约60~75%,GPU内存峰值(在任务管理器中)降低约800MB到1.5GB,最大扩散分辨率(不会OOM)提高约3倍,最大扩散批量大小(不会OOM)提高约4倍。
-
如果你使用性能强大的GPU,如4090,带有24GB显存,推理速度(it/s)可以 提高约3~6%,GPU内存峰值(在任务管理器中)降低约1GB到1.4GB,最大扩散分辨率(不会OOM)提高约1.6倍,最大扩散批量大小(不会OOM)提高约2倍。
-
如果你使用ControlNet来进行SDXL推理,最大ControlNet数量(不会OOM)提高约2倍,SDXL+ControlNet的速度提高约30~45%。
除此之外,Forge还增加了一些高效的采样器,例如:DDPM、DDPM Karras、DPM++ 2M Turbo、DPM++ 2M SDE Turbo、LCM Karras、Euler A Turbo等。
sd-webui-forge安装
安装包安装
对于不熟悉git操作同学,则可以扫描免费获取一键安装包。下载完成安装包后,本地解压缩文件,然后使用update.bat
更新,再使用./webui.bat
运行,便可启动forge软件。
注意:一定要运行update.bat
命令,这个很重要的,因为forge代码还在快速迭代开发中,确保及时更新最新代码和环境,否则可能会遇见一些未知的潜在bug版本。与sd-web-ui共享绘图模型的方式与git方案完全一致。
Git安装
如果是熟悉Git有一定开发经验的用户,可以使用git clone下载最新版forge源码本地安装.
环境安装:
git clone https://github.com/lllyasviel/stable-diffusion-webui-forge.git
cd ./stable-diffusion-webui-forge
# Linux
pip3 install torch torchvision torchaudio
# window
# pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121
pip install -r requirements.txt -U
与sd-web-ui共享模型,节约磁盘浪费。如果是window用户则修改webui-user.bat如下:
@echo off
set PYTHON=
set GIT=
set VENV_DIR=
set COMMANDLINE_ARGS=
@REM Uncomment following code to reference an existing A1111 checkout.
set A1111_HOME=[stable-diffusion-webui目录]
set VENV_DIR=%A1111_HOME%/venv
set COMMANDLINE_ARGS=%COMMANDLINE_ARGS% ^
--ckpt-dir %A1111_HOME%/models/Stable-diffusion ^
--hypernetwork-dir %A1111_HOME%/models/hypernetworks ^
--embeddings-dir %A1111_HOME%/embeddings ^
--lora-dir %A1111_HOME%/models/Lora
call webui.bat
当看见启动命令如下则设置共享成功:
Launching Web UI with arguments: --xformers --forge-ref-a1111-home=sd目录/ --ckpt-dir sd目录/models/Stable-diffusion --vae-dir sd目录/models/VAE --hypernetwork-dir sd目录/models/hypernetworks --embeddings-dir sd目录/embeddings --lora-dir /models/lora --controlnet-dir sd目录/models/ControlNet --controlnet-preprocessor-models-dir sd目录/extensions/sd-webui-controlnet/annotator/downloads
Forge启动
从启动界面可以看到,Forge的用户使用界面与sd-web-ui完美的保持WebUI不变。这对新手用户上手门槛降低了极大的门槛。在启动界面中,能够看见新增的SVD、Z123两个tab,这是前文说的Unet Patcher带来的新特性。
另外作者提到,Forge在保持了前端界面一致性,并承诺永远不增加任何不必要的改变。后端则移除了所有与资源管理相关的WebUI代码,并重新构建了后端的全部基础设施,是一个重大的重构过程。
Forge插件不会共享,和webui一样,使用extension安装或者手工从webui复制。
sd-webui-forge体验
在本地rtx4090 24G显存的Linux环境中,使用sd_xl_base_1.0模型绘图,能够看见对应性能提升。耗时3.2秒,平均7.18GB显存使用,最高峰8.46GB,系统使用率42.1%。相信对于其他低显存机器,有更显著的推理提升。
使用图像扩大算法R-ESRGAN 4x+,扩大2X体验。工具设置参数如下:
耗时18.1秒,平均13.6GB显存使用,最高峰17.72GB,系统使用率82.3%。
forge主要是对显存使用做了有效优化,对30系显卡提升比较明显,40系显卡提升空间不大。但是有一些新增插件支持会很好,比如:sd-forge-layerdiffusio,以及官方feature列表中的Playground v2.5支持也是期待的功能。
绘图体验
1girl, solo, portrait, dark hair, slicked back hair, simple background, shirt, parted lip, lips, expressionless
感兴趣的小伙伴,赠送全套AIGC学习资料,包含AI绘画、AI人工智能等前沿科技教程和软件工具,具体看这里。
AIGC技术的未来发展前景广阔,随着人工智能技术的不断发展,AIGC技术也将不断提高。未来,AIGC技术将在游戏和计算领域得到更广泛的应用,使游戏和计算系统具有更高效、更智能、更灵活的特性。同时,AIGC技术也将与人工智能技术紧密结合,在更多的领域得到广泛应用,对程序员来说影响至关重要。未来,AIGC技术将继续得到提高,同时也将与人工智能技术紧密结合,在更多的领域得到广泛应用。
一、AIGC所有方向的学习路线
AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。
二、AIGC必备工具
工具都帮大家整理好了,安装就可直接上手!
三、最新AIGC学习笔记
当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
四、AIGC视频教程合集
观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
五、实战案例
纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。