赞
踩
说起 AUTOMATIC1111 的 Stable diffusion-wbui 这个项目,使用过Stable diffusion的人应该无人不知吧,网络上基本一边倒的在使用他家的项目,而且fork量和star量还不小:
但是AUTOMATIC1111 这个名字总给我一些不靠谱的感觉,虽然它的项目还不错,如果你进他这个账号下面,会发现,他还有很多项目,但是都没有这个项目火。
我在部署stable diffusion的过程中,尝试了很多项目,也踩了不少坑,最后找到了这个非常令我心仪的项目:SD.Next。这里我要隆重地介绍给大家,相信看完我的文章,你会马上丢掉AUTOMATIC1111 的webui,为什么这么说呢?
SD.Next 跟 AUTOMATIC1111 WebUI的fork 数量持平了,而且发展势头更强劲。
SD.Next来源于AUTOMATIC1111 webui,但是提供一些高级特征,
这个项目的github名字叫automatic,而这个名字却是前面那个项目的账号名字。听起来要靠谱一点,而SD.Next应该可以叫automatic的别名。。。开个玩笑。
我们直接看他有啥不一般,这里是介绍:
它的界面是这个样子:
作者整理了13个特征,因为他觉得TOP10 表达不尽兴,大家对照着看看就好了,我提几个我认为不错的亮点:
UI界面更漂亮,默认是黑色主题,不同于前者的灰白色主题。Ui界面下面有滚动日志输出,更方便调试。提交任务支持加入队列按钮操作等。
支持多个backend,在前者的基础上增加了diffusers。diffusers是一个开源的Python代码库,为使用扩散模型进行图像生成提供了一致的接口。最流行的扩散模型是Stable Diffusion。当前唯一支持Stable diffusion xl的就是diffusers,所以大家知道SD.Next支持diffusers意味着什么了吧。
支持多种扩散模型,除了SD.Next支持Stable Diffusion,还支持SD-XL, Kandinsky, DeepFloyd IF,而 DeepFloyd IF这个扩散模型在图像中精确生成文字方面有着重要地位。关于这个模型的详细信息,后续我会另外介绍。Stable Diffusion 包括 v1,v2都支持的,也就是继承了 stable diffusion webui已有的功能。
跨平台支持,包括Windows / Linux / MacOS with CPU / nVidia / AMD / IntelArc / DirectM。
其他系统优化,比如提示词解析能力,队列管理,Lora等模型训练增强,企业级的日志和接口增强,系统自更新和依赖管理,生态兼容等
关于这个项目的目标,作者也说了:为了跟进最新的文生图方面的技术,同时提供跨平台能力,保证在不同平台上的性能、直观易用和一致性的体验。
为追求技术,跟易用性往往不容易那么兼顾,如果你不像我这样在意这些特征,也可以看看InvokeAI 这个项目,她部署更自动化和易用。当然如果你已经习惯了 stable duffusion ui,那么你上手SD.Next 一点儿问题也没有。
如果你想尝试 InvokeAI ,欢迎留言和支持,我接下来看反馈情况,决定要不要写这方面的文章。
SD.Next的界面,前面大家也看了,她内置了这些功能,比如常用的文生图,图生图,图像处理,扩展管理,openpose,模型。训练等:
接下来,我们来看怎么部署和使用SD.Next吧。
首先,你得先准备好git和Python的安装环境。
然后:下载源代码到本地目录。
git clone https://github.com/vladmandic/automatic
再然后:进入代码目录,运行:
webui.bat --debug (Windows) 或者 webui.sh --debug (Linux/Mac) t
最后,在启动过程中,询问是否下载默认model,选择N。如果一切运行正常,浏览器输入:
http://127.0.0.1:7860
Enjoy yourselves!
简单输入 a cat,测试下系统运行情况,如果能够正常生成图像,说明系统安装没问题。
但是系统默认使用的是v1.5的某模型,如果要使用最新的SDXL模型(SDXL模型包括:base和refiner),你需要手动去下载它。这里有点儿让人不爽,SDXL 大模型本来跟其他Sd模型一样,直接丢进 Stable diffusion models文件夹就能用的,但是SD.Next不行,加载会报错,所以还不能这么用。它需要这么干:
在SD.Next Web-UI 页面上,导航到Models page 和 Huggingface tab,在 Select model框中输入:
stabilityai/stable-diffusion-xl-base-1.0
点击搜索,然后在下面表格中会出现搜索结果:
鼠标点击搜索结果,会自动回填上文的其他空白框,确认没有问题之后,点击 download model 按钮,SD.Next 就会自动下载模型到本地。同样的操作来下载,输入
stabilityai/stable-diffusion-xl-refiner-1.0
等两个模型都下载好了,在Diffusers 文件夹中会发现多了两个目录:
,每个目录都存储了不少内容,这个下载的模型跟我们在Stable diffusion Ui中丢进 Stable diffussion models目录中的完全版不一样:
SDXL下载好了,你还不能马上去用它,你还需要做一件事:切换 backend 引擎,前文我提到SD.Next支持多backend,默认backend是原来的,不是新增的diffusers。此时需要切换到新的backend 才能使用SDXL。方法很简单,在启动命令中增加一个参数,完整命令类似这种:
cd automatic; .\webui.bat --backend diffusers
其他平台也一样,都是增加 --backend diffusers 这样的一个参数。跟前面有一个空格隔开。
执行上述命令,重启服务,刷新页面你发现上面的模型下拉列表中多了SDXL 的base模型:
因为SDXL的base 模型可以独立使用,没有refiner也没关系,测试生成一张图看看:
图片还算清晰,如果某些图不清晰,可以再搭配refiner模型来优化:进入 Settings page, 在 QuickSettings list (search quick to find it), 添加
sd_model_refiner
如果你想要在下来框中有更多的联动选项,还可以增加更多参数:
然后保存设置并重启Server:
重新加载web Ui后会发现,两个模型都出来了:
重新再生成一下刚才的图片,注意图像大小都设置为1024:
两张图都很清晰,通常使用了精修后的图像效果会更好一些,但是也不绝对。在这个场景中,用不用refiner都一样,反正肉眼看不出区别。也可能是我瞅电脑太久了,现在我感觉眼睛发胀。。。
如果你想切换到原来的sd 1.x或者2.x,可以在Settings中勾选original,重启Server即可:
好了,到此关于新的web ui的部署和使用,我已经介绍完了,作为阅读这篇文章的你,有没有感觉比stable diffusion ui 更好啊?如果是我,果断去rm 它,如果上述理由还不够强的话,可以再回去试验下,前者是如何使用SDXL的两阶段模型的,而在新的ui中,两阶段模型是如此丝滑地集成到一起,方便得让人欲罢不能。如果有任何问题欢迎评论和加群交流。
公开微信交流群:
私密知识星球群:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。