Stable diffusion的SDXL模型,针不错!(含实操)

news2024/11/19 5:34:19

与之前的SD1.5大模型不同,这次的SDXL在架构上采用了“两步走”的生图方式:

图片

以往SD1.5大模型,生成步骤为 Prompt → Base → Image,比较简单直接;而这次的SDXL大模型则是在中间加了一步 Refiner。Refiner的作用是什么呢?简单来说就是能够自动对图像进行优化,提高图像质量和清晰度,减少人工干预的需要。

简单来说,SDXL这种设计就是先用基础模型(Base)生成一张看起来差不多的图片,然后再使用一个图像精修模型(Refiner)进行打磨,从而让图片生成的质量更高。而在没有这个之前,我们往往需要通过其他手段,如高清修复或面部修复来进行调优。

除了有出图质量更高这个优势,SDXL还有以下优点:

  • 支持更高像素的图片(1024 x 1024)

  • 对提示词的理解能力更好,比较简短的提示词也能达到不错的效果

  • 相比SD1.5模型,在断肢断手多指的情况上有所改善

  • 风格更为多样化

当然,每件事物不可能是完美的,所以SDXL也有一些局限性:

1、低像素出图质量不高

由于SDXL都是用1024x1024的图片训练的,这既导致它在这个像素级别上生成的质量比较高。但同时也导致了它在低像素级别(如512x512)生成的质量反而比较低,甚至不如SD1.5等模型。

2、与旧Lora不兼容

过去一些适用于SD1.5, 2.x 的Lora和ControlNet模型,大概率无法使用,得重新找一些带有SDXL的模型

图片

3、对GPU显存的要求更高(这个下面会着重讲到)

4、出图时间也变久了

好了,简单讲完了SDXL大模型以及它的优缺点,接下来就开始实战了!

一、模型的下载

这次模型的下载有点不同,因为我们需要下载三个模型,分别是:sd_xl_base_1.0.safetensors、[1]sd_xl_refiner_1.0.safetensors 和 [2]sdxl_vae.safetensors[3]

三个模型的地址分别是:

  • https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/tree/main

  • https://huggingface.co/stabilityai/stable-diffusion-xl-refiner-1.0/tree/main

  • https://huggingface.co/stabilityai/sdxl-vae/tree/main

二、模型的加载

如果你的模型下载好了,就把 sd_xl_base_1.0.safetensors、sd_xl_refiner_1.0.safetensors 丢到根目录的 models\Stable-diffusion,把 sdxl_vae.safetensors 丢到 models\VAE 即可。

需要注意的是 Refiner 模型的加载,看发布日志是 SD1.6.0 的时候才支持,所以如果想使用的话得看你的版本有没有达到。另外就是这里的SD1.6.0指的是内核的版本,并不是模型的版本(不要被各种简写误导了)

图片

内核的版本指的是这里的版本

图片

还有一个需要注意的是貌似升级版本容易有一些不兼容的问题,而且在使用SDXL大模型时也不一定就得用Refiner,单纯使用基础模型(base)也是OK的,只不过效果会差点,所以建议升级前也做一下调研工作。

最后Refiner的位置可能没那么显眼,在生成选项卡里面

图片

三、显存的大小

由于SDXL的模型和出图尺寸比之前的SD1.5大得多,所以也间接导致了它在出图方面所需要的显存和时间也变大了。

那到底需要多少显存呢?网上有一个说法是:跑SDXL最低显存是8G。经过我的测试,这个数据具有一定参考性,在进行一些优化的情况下,8G的显存的确能跑;但如果你什么优化都不做的话,8G的显存是不够的。

我自己的显卡是4060Ti 16G,内存32G,在这个配置的基础上我做了几个小测试(都是1024 x 1024的尺寸)

提示词:

a beatuiful real female play guitar

3.1 不开任何优化 + 不使用Refiner

第一个测试是在不开任何优化的情况下出图,结果还是出人意料的,居然爆显存了

图片

图片

3.2 不开任何优化 + 使用Refiner

第二个测试是在第1个的基础上,加了Refiner,但出乎意料的是,并没有爆显存,但从下方的显存使用看,也几乎达到了极限。为什么加了Refiner就没有爆显存我也不太清楚,希望有大佬留言科普下。

图片

这里也简单说明最下方的A、R、Sys 三个指标:

💡

A,Active:peak amount of video memory used during generation(excluding cache data),个人理解就是出图时使用的显存峰值

R,Reserved:total amount of video memory allocated by the Torch library,个人理解就是Torch 库使用的显存总量

Sys:System:peak amount of video memory allocated by all running programs, out of total capacity,个人理解就是使用显存的占比。

3.3 开启VAE模型半精度优化

这个开了之后(貌似这个不是实时生效的,所以每一次修改后我都会重启),发现其实效果不大,显存的使用率和第二个测试是差不多的。

3.4 开启 VAE + UNet模型半精度优化

加了UNet模型半精度优化,显存使用率下降了一部分(12G差不多能跑),而且出图时间也下降了很多!为什么加了UNet显存使用率会下降明显,看网上一篇文章[4]说SDXL用了 larger UNet backbone,猜测是这个原因导致的。

图片

3.5 开启 VAE + UNet模型半精度优化 + 显存优化

前面四个测试都是在不开显存优化的情况下进行的,在第五个测试中,开了显存优化后,显存下降会比之前更加明显(比3.4下降了一半),但是出图时间会略长。

从这里也可以看出,显存优化的作用还是蛮明显的,不过我也试了中等显存(4GB以上)、仅SDXL中等显存(8GB以上),但是两者并没有明显区别。

图片

通过上面的测试,我们也可以初步得到:跑SDXL最低显存是8G的说法是有一定准确性的,不过这个准确性大概率是建立在开了半精度优化和显存优化的基础上。如果你的显存达不到8G,除了上面的手段,也可以试试使用共享显存的优化方案,应该还能降一点。

四、出图测试

4.1 设置图片默认宽高

秋叶安装包默认的宽高是512x512,但是对于SDXL模型,这个尺寸是不适合的,每次刷新页面后又得调整,就想着能不能把默认值改成 1024x1024.

第一步,刷新页面,将尺寸改为 1024x1024

图片

第二步,在设置里面找到“默认设置”

图片

第三步,点击应用按钮即可。如果你想看改了啥,还可以点击“查看更改”按钮

图片

上面的步骤实际改的是ui-config.json 配置的这两个参数,对了,如果要生效必须重启启动器,刷新页面是没用的

txt2img/Width/value
txt2img/Height/value

4.2 提示词理解能力对比

我给的提示词是上篇文章《Stable diffusion 3:跌宕起伏,或许终见彩虹》测试SD3的

Epic anime artwork of a wizard atop a mountain at night casting a cosmic spell into the dark sky that says "Stable Diffusion 3" made out of colorful energy

可以看到SDXL的对自然语言的提示词的理解能力确定吊打之前的模型

图片

4.3 文字拼写能力测试

看网上说SDXL的文字拼写能力比较强,简单来说就是能按要求在图片写字,提示词如下:

// 用的网上的提示词,字面意思就是在头盔上写 future 英文
# a cyberpunk girl is wearing a helmet,the helmet with the words"future" written on it,

总体感觉能力肯定是进步的,但比SD3还是差了不少,这也是从出的图里面选几张比较好的

图片

4.4 优秀的提示词借鉴

50+ Best SDXL Prompts For Breathtaking Images[5]

这是一位SD资深大神整理的,100款Stable Diffusion超实用插件,涵盖目前几乎所有的,主流插件需求。

全文超过4000字。

我把它们整理成更适合大家下载安装的【压缩包】,无需梯子,并根据具体的内容,拆解成一二级目录,以方便大家查阅使用。

单单排版就差不多花费1个小时。

希望能让大家在使用Stable Diffusion工具时,可以更好、更快的获得自己想要的答案,以上。

如果感觉有用,帮忙点个支持,谢谢了。

想要原版100款插件整合包的小伙伴,可以来点击下方插件直接免费获取

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1811733.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Base64编码和ASCII编码

1字节Byte 8比特bit 单位换算关系Byte1Byte 8bitKB1024ByteMB1024KBGB1024MB 网速中的Mbps和MB/s Mbps 1M bit/s 1024 K bit/s 1024 * 1024 bit/s MB/s 1024 KB/s 1024 * 1024 B/s 1024 * 1024 * 8 bit/s 所以:1Mbps 1/8 MB/s 1个bit,可以表示…

利用Python的NLTK库来查询指定单词的同义词

一、NTLK库介绍 NLTK(Natural Language Toolkit) 是Python中最为知名的自然语言处理(NLP)库之一,它提供了丰富的模块和数据结构,专门用于人类语言数据的统计自然语言处理。它包含了文本处理库用于分类、标记…

手机丢失不惊慌,华为手机已升级至楼层级设备查找!

出门总是丢三落四,手机丢了怎么办?不要怕,只要你的华为手机升级至云空间新版本,就可以进行楼层级设备查找,现在可以查看到具体的楼层了! 之前有手机丢失过的朋友,肯定有相似的经历&#xff0c…

网页宽度现在右侧有一个竖条空白,怎么啦车网站都没办法完全铺满宽度,怎么回事怎么解决

问: 网页宽度怎么设置全覆盖 回答: 经过检查,发现 是这个网站的最外层html标签设置了宽度,所以导致,当我们删除html的宽度后就解决了这个问题.

【会议征稿,ACM出版】2024年粤港澳大湾区教育数字化与计算机科学国际学术会议(EDCS 2024,6月21-23)

人工智能、区块链、虚拟现实技术等新一轮技术革命正在推进社会结构变革;数字化转型正在重塑社会、劳动力市场和未来工作形式,其中关于教育领域,2019,2020的冠状病毒病大流行给全球教育带来巨大挑战,加速了教育数字化转…

海南聚广众达电子商务咨询有限公司打造一站式电商服务

在数字经济的浪潮中,电商行业蓬勃发展,各种平台和服务商如雨后春笋般涌现。其中,海南聚广众达电子商务咨询有限公司凭借其专业的团队和丰富的经验,在抖音电商服务领域独树一帜,成为业界的佼佼者。 海南聚广众达电子商…

Advanced Intelligent Systems 清华大学曲钧天团队设计了基于光纤传感技术的多模态触觉感知仿生机械手

随着软体机器人技术的发展,触觉感知在人机安全交互、可穿戴设备和医疗器械领域发挥着重要作用。如何用简单的系统集成更多的触觉感知、获取更多交互信息面临着诸多挑战。 近日,清华大学国际研究生院曲钧天助理教授团队在国际期刊Advanced Intelligent S…

python的resample()函数

介绍 在Python中,resample()函数是一个常用的工具,用于对时间序列数据进行重新采样。这个函数可以将时间序列数据从一个频率转换为另一个频率,比如将每天的数据转换为每月的数据。在本教程中,我将向你展示如何使用resample()函数,并解释每个步骤的具体含义。 整体流程 首先…

泉城济南的隐秘珍宝与山东旅游必去十大景点

泉城济南的隐秘珍宝与山东旅游必去十大景点 济南,这座历史悠久的城市,不仅以其丰富的人文底蕴著称,还拥有诸多引人入胜的自然景观。在这片华夏神州广阔的齐鲁大地上,济南特别以其“三无风景区”——无影山、无影潭、无影泉——而闻…

云联HIS系统源码,二级医院信息系统源码,支持云架构部署模式

采用java语言开发B/S广域互联模式,支持云架构部署模式,支持大数据分析技术;支持与医保平台接口、电子票据对接。 云HIS系统相关技术: 后台:JavaSpring,SpringBoot,SpringMVC,Sprin…

Facebook商城号怎么做?思路与操作分析

2016 年,Facebook打造了同名平台 Facebook Marketplace。通过利用 Facebook 现有的庞大客户群,该平台取得了立竿见影的成功,每月访问量将超过 10 亿。对于个人卖家和小企业来说,Facebook Marketplace是一个不错的销货渠道&#xf…

电商项目-day02

文章目录 分析项目结构登录请求项目搭建Result总结 分析项目结构 语法的限制打开 端口修改 修改port 前端的入口工程是main.js 登录请求 早期的登录是使用session 称为 会话 也称为域 使用jwt进行验证 模块 spzx-partent 父工程 使用pom 其他的模块都是 jar包 项目搭…

《Brave New Words 》5.1 传递真相:偏见和虚假信息现状

Part V: Keeping Kids Safe 第五部分:确保孩子安全 Never travel faster than your guardian angel can fly. —Mother Teresa 永远不要比你的守护天使飞得更快。 ——特蕾莎修女 Distrust and caution are the parents of security. —Benjamin Franklin 不信任和谨…

LabVIEW轴承试验机测控系统

开发了一种基于LabVIEW软件开发的大功率风电机组增速箱轴承试验机测控系统。系统主要用于模拟实际工况,进行轴承可靠性分析,以优化风电机组的性能和可靠性。通过高度自动化的测控系统,实现了对试验机的精确控制,包括速度、振动、温…

白嫖Cloudflare Workers 搭建 Docker Hub镜像加速服务|

简介 基于Cloudflare Workers 搭建 Docker Hub镜像加速服务。 首先要注册一个Cloudflare账号。 Cloudflare账号下域名的一级域名,推荐万网注册个top域名,再转移到Cloudflare,很便宜的。 注意 Worker 每天每免费账号有次数限制,为…

48.HTTP 规范规定,跟随重定向时必须使用 GET 方法

起因: 今天在练习一个Django功能时,把form的method设置为POST,但是实际提交时,一直是GET方法。最后,从下面这张图发现了端倪: 第一次是method是POST方法,被重定向时,变成了GET。 继…

综合型驱鸟装置:光伏电站集束冲击波驱鸟器

光伏电站作为绿色、清洁的能源生产方式,正在全球范围内得到快速发展。在光伏电站的建设和运营过程中,鸟类活动所带来的影响逐渐凸显,成为电站管理者需要面对的重要问题。在此背景下,光伏电站驱鸟器的需求也不断增长。 目前市场上的…

echart盒子没有跟着当前div大小变化而自适应

一、问题描述 当echarts图表在一个盒子里的时候,盒子大小变化了,但是图表没有跟着自适应,比如这样,盒子变大了,但是图表没变化 二、解决方法 在盒子大小更改的同时,调用图表的resize方法,记…

RERCS系统开发实战案例-Part02 创建BOPF对应的业务对象(Business Object)

1、通过事务码 BOBF创建业务对象 2、输入debug,进入编辑模式新建BO对象; 选择对应的BO对象属性类别: 3、激活BO对象 接口页签: 属性页签:自动带出标准的常量 改接口类部分源码: 4、BO对象Node Elemen…

1、链接(link)

链接的作用 链接:将各种代码和数据片段收集组成一个单一文件的过程,这个文件可以加载(复制)到内存并执行。 分为:编译时、加载时(加载器加载到内存并执行时)、运行时 1、构造大型程序 2、避免…