在线生图

轻舟

Q裙:673619373 「怪诞美学」诡谲美学聚集地 「病名为爱」丧系唯美插画向 「玉软花柔」美女的自我养成 「一夕千念」妖冶多画风合集 「奇思妙想」多功能系工具箱 「重启人生」自定义游戏设计 开新坑中......
254
粉丝
2
关注
254.4K
运行
223
下载人数
2.1K
获赞

AI小工具

查看全部
699441789322523299
CHECKPOINT
全网独家

「一夕千念」致幻世界美式迷幻视觉插画设计- v1

4.3K 54
697585680555055308
CHECKPOINT
全网独家

「一夕千念」绝赞二次元超万用精美向- v1

9.4K 96
635714387434345250
CHECKPOINT
全网独家

VirtualWorld|全能向真实模型CO**IX- v1

90K 273
655525941994349118
LORA
全网独家

「奇思妙想」超强氛围感和细节滤镜增强器- v1

15K 112
703771163605602516
LORA
全网独家

「重启人生俱乐部」➤ 魔法之眼【小红书同款】- v1

27K 327
727514790790012128
LORA
全网独家

毛绒材质LOGO视觉设计-v1

79 2
725712334749698326
LORA
全网独家

膨胀材质LOGO视觉设计- v1

131 3
715264264161570986
LORA
全网独家

「一夕千念」➤西方中世纪精致蒸汽朋克概念画风- v1

923 11
709695409565532990
CHECKPOINT
全网独家

「病名为爱」➤神祈- v1

2.6K 60
709061687141123648
LORA
全网独家

「一夕千念」卡通彩色仿纹身稿件插画设计- v1

239 5
702812702998878024
LORA
全网独家

「一夕千念」复古巴洛克边框卡牌背景- v1

219 11
699412995865905194
CHECKPOINT
全网独家

「一夕千念」灵魂切割极客美学视觉插画设计- v1

597 18
696059957847570292
LORA
全网独家

「一夕千念」仿日式纹身稿件插画设计- v1

1.2K 17
703822836357267799
LORA
全网独家

「一夕千念」七宗罪Saligia概念插画设计- v1

779 19
659841679752423697
LORA
全网独家

「奇思妙想」魅惑御姐脸妆容+滤镜噪点真实人像-v1

29K 77
656829821051014478
LORA
全网独家

「一夕千念」➤儿童插画绘本画风- v1

54 11
656727729678471166
LORA
全网独家

「一夕千念」➤平涂温柔系二次元画风- v1

171 14
654592323478495178
LORA
全网独家

「怪诞美学」➤绝对诡谲·恐怖爱好者的狂欢- v1

3.2K 66
643052489383408945
CHECKPOINT
全网独家

「奇思妙想」万物皆可手办化PVC超还原质感-v1

3.7K 81
642265741569282768
CHECKPOINT
全网独家

「一夕千念」超治愈赛璐璐平涂二次元通用-v1

6.3K 193
【吐司创造营】第三期第四课:520浪漫特辑!多人图片的实现方法!

【吐司创造营】第三期第四课:520浪漫特辑!多人图片的实现方法!

该文章由【吐司创造营】直播的部分脚本编成,部分操作向和演示向内容无法用文本撰写,故推荐配合回放观看效果更佳。部分观点来源网络,如有错误欢迎指正! 本期文章对应回放为👉:BV1sE421G7UA 文生图 主要是通过【条件合并】这个节点来实现双人效果。有以下几点需要注意的地方 将人物主体单独列出,然后通过条件合并节点合并 将1中合并的两个主体作为一个整合提示词输入到下一层的提示词中 设置背景提示词,并与2中的合并条件再次合并 将3中的合并条件作为正向提示词输入到ksampler采样器中 条件采样区域控制实际上提示词影响的图片范围 宽度/高度:你想占据的画布尺寸 xy:用来调整画面走向。是以图片左下角为轴心,横向为X,纵向为Y轴。 如图设置,画面人物将会是均分效果(画布宽度为1024x1024) 【更方便的高清放大——SD放大:纯演示向】   图生图 主要是通过【混合遮罩】这个节点来实现双人效果。有以下几点需要注意的地方 纯块遮罩:带有亮度信息和尺寸信息 目标遮罩:输入的纯块遮罩可以理解为你生成图片的画布,所以纯块遮罩的尺寸等于最后生成图片的尺寸 源遮罩:输入的纯块遮罩代表你想要控制画面遮住或者绘制的那部分的大小 源遮罩和目标遮罩的明度:怎么控制遮罩是遮住还是控制画面 明度0,遮罩为黑色,画面被遮住不受影响 明度1,遮罩为白色,受影响被绘制的部分 遮罩混合有XY两个控制器:调整源遮罩的位置。是以图片左下角为轴心,横向为X,纵向为Y轴。 混合方式:输入源遮罩的纯块遮罩的明度。 明度为0,使用multiply 明度为1,使用add IPA用来复刻上传的单人图片的风格,openpose用来控制最后生成的双人图像的姿势
【吐司创造营】第三期第二课:IPadaptor+ControlNet!所有复杂工作流的起始!

【吐司创造营】第三期第二课:IPadaptor+ControlNet!所有复杂工作流的起始!

该文章由【吐司创造营】直播的部分脚本编成,部分操作向和演示向内容无法用文本撰写,故推荐配合回放观看效果更佳。部分观点来源网络,如有错误欢迎指正! 本期文章对应回放为👉:BV1Vr42177aa 上节课遗留的问题:combine的具体使用方法 当你想分离提示词,分开描述画面的时候可以使用combine,同样用于分隔token,达到提示词不相互污染的效果。 在template中,可以把你想自定义给玩家的提示词通过combine的形式分离开来,讲提示词的使用权交给玩家自定义。 当指定一个物体的颜色污染到其他物体上时,我们称之为bleeding,及颜色污染或者颜色溢出。 clip的分离和组合:类似SD当中break的做法。 concat:隔离提示词,先联结两个提示词,再生成噪音。 combine:将两个提示词单独进行了推理,分别产生噪音最后再把两张图像进行合并再生成一个平均化的内容。生成图像带有偏向性(偏向第一个提示词/第二个提示词),在使用时要先把提示词2的内容复制到提示词1,然后再单独在提示词1中加入想实现的提示词。 average:平均采样,更适合两种不同画风的融合或者两种不同描述的融合。把两个提示词进行一个去重并且融合,再生成噪音。如果两个提示词的token不超过一个提示词token的长度(77),它会把所有的题词打标进一个提示词。 如何过度:右键-高级-设置条件时间,将两个提示词的权重分别设置(类似于controlnet里的介入时机)然后用combine送进正向提示词。 IPadaptor 定义:IP-adapter可以识别参考图的艺术风格和内容,生成相似的作品,还可以搭配其他控制器使用。 输入一张参考图片,需要通过clip vision模型对图像中的内容进行理解,再通过ip-adapter模型和大模型综合一下作为条件输入到潜空间。 IPA结合了text encoding文字编码和image encoding 图像编码两种编码方式,把这个token打包成embedding然后再插入到扩散的过程当中(unet模型管道) 三种关系:Apply所负责的图像编码,prompt词的文字编码,Ksample采样 风格转汇最好的是plus face:作者早期针对面部特征提取的一个模型,更细致的来观测或者是提取我们这个图像当中的面部特征 noise是IPA的重绘幅度   为什么在有了提示词的情况下要降低apply的权重? 两者都是embedding,一方权重高了的话会把另一方大部分的权重给顶掉,如果要加强提示词的权重,要降低apply的权重,适当降低CFG Plus和1.5的区别 1.5的token是8个,plus是16个,plus对图像的理解更好,权重更大,更还原
【吐司创造营】第三期第一课:从0开始学ComfyUI!了解这些效率UpUp!

【吐司创造营】第三期第一课:从0开始学ComfyUI!了解这些效率UpUp!

该文章由【吐司创造营】直播的部分脚本编成,部分操作向和演示向内容无法用文本撰写,故推荐配合回放观看效果更佳。部分观点来源网络,如有错误欢迎指正! 本期文章对应回放为👉:BV1zE421L76b 概念 节点:ComfyUI的核心部分是一个可以自由拖动、放大缩小的操作区域,中间分布着各种连接在一起的功能组件,也就是"节点"(nodes). 端口:一个节点必须先通过左边的端口接收上一个节点的信息开始工作,工作完成后通过右边的端口把它完成的工作传输给下一个节点。端口颜色不一样不能链接,一个输出端口的数据可以输出到多个接收端口上。 Loaders分类内的各种节点一般被用于加载Stable Diffusion生成过程中需要用到的各种模型一一不只是Checkpoint大模型,包括LoRA、VAE乃至ControlNet在内的各种模型都可以借助它里面的节点来加载。 Conditioning分类内的各种节点一般被用于为Stable Diffusion的生成过程添加各种"条件",并对这些条件进行编辑、重组。提示词(Prompt)可以被当做一种文本条件,通常是这些条件里最为核心的一部分。 Latent分类内的各种节点主管与"潜空间"有关的操作。反映到具体本操作上,包括图像的编解码(VAE)、尺寸定义及缩放等。如果你了解了Latent的原理,你会对它在这些流畅中的"作用"有更清晰的认知。 CLIP也是一种机器学习模型,全称叫做"对比性语言-图像预训练"(Contrastive Language-Image Pre-training),是StableDiffusion模型中用于理解图像和文本间关联的部分。此处的连线,可以理解为利用模型内置的CLIP来帮助后续的提示词框解读我们输入的文本信息,并将其转化为"条件"(Conditioning)输送至后续节点。 VAE即"变分自编码器"(Variational Auto Encoder),可以将一张图片转换为潜空间变量(或逆向转换),是像素空间与潜空间的桥梁。在Stable Diffusion中,我们的所有生成操作都是在潜空间内完成的,因而需要VAE将运算的潜空间数据转换为我们肉眼可以辨析的"图片"。 Strength_model/strength_clip:这两个权重数值分别被用于调节模型内的CLIP与主模型的权重。在大多数UI中,这两个选项会被"合并"为一个数字。例如,将LoRA强度设置为0.8与将strength_model和strength_clip都设置为0.8相同。 调度器: Norma:平均降噪,泛用式调度器,是一个线性的降噪。 Karras:曲线降噪,较为平滑,是一个S型的降噪。 Exponential急速降噪:断崖式的降噪,收敛较快。 采样器:采样器和调度器在SD中是一起的,Comfy里分开了 randomize:每次生成后都随机一个新种子 fixed:固定种子 increment:生成后种子数+1 decrement:生成后种子数-1   Comfy基础操作
【吐司创造营】特训班第二课:正则化图片!Lora的更多训练方法等你来解锁!

【吐司创造营】特训班第二课:正则化图片!Lora的更多训练方法等你来解锁!

该文章由【吐司创造营】直播的部分脚本编成,部分操作向和演示向内容无法用文本撰写,故推荐配合回放观看效果更佳。部分观点来源网络,如有错误欢迎指正! 本期文章对应回放为👉:BV1Vt421j7hc 概念 本质上是dreambooth的内容,通过添加额外的约束和惩罚项,来改进学习算法的表现,以减少过度拟合问题,能提高模型的泛化能力。正则化是一种先验知识。就像临摹字帖,提前学习数据,让AI知道它的训练范围在哪儿。   好处 避免了过拟合可能会带来的各种崩坏情况; 给机器一个参考图片,机器就会根据参考图片去学习; 提高模型的精准度 数据集质量不高或者数量少,就需要正则化来限制模型的复杂程度,避免过拟合   正则化图片的选取原则 正则化图片放训练集以外的内容但是和原训练集有某些共通之处 图片数量一般多余数据集 不需要打标 训练细节且原本模型里面体现不出来的特征 相同底模,对想泛化的特征出图   多类型lora的详细用法 多合一lora:通过不同触发词来调用 强调面部特征 10_face 10_body 多服装进一个lora 10_reddress 10_bluedress 强调姿势 5_dance 10_body   功能性lora:加强特征 加强某个关键词的特征,让他更稳定效果更好,如果prompt词里面出现了正则化里的关键词,则效果会被放大 正则化- 先验损失权重prior_loss_weight:默认1,正则本身的影响权重,1的话代表你在正则里放的图片和训练集里图片的权重是一样的,你的正则100%影响你的训练集 dim和alpha尽量小一点,让原本画风对他的污染效果变低   手动正则法:泛化特征,在少量数据集的情况下使用 数据集更少的情况下可以使用镜像翻转,数据集不足势必要在更多地方花更多的时间。比如粗略的用1张图出lora,然后通过lora出图再作为训练集进行下一步的训练。通过控制repeat数可以控制三个文件夹中图片的权重。 原因:不适用系统正则是因为图片少,正则的权重不好控制,不如直接调控repeat 内容: 4-5张各种姿势,内容可以通用。 使用nsfw的内容可以不污染服装,脸部需要涂黑(遮罩)并且绑定在faceless上,只要不输入faceless是不会出现黑块的。 保证reg文件夹中的图片数×repeat等于或略微大于body文件夹中的图片数×repeat 、 tag原则 发色瞳色等简单特征全部删除 为头部、上半身、下半身、脚分别设置触发词 细节,头饰、纹身之类的建议保留 补充 locon:随机洗像素,也是提高泛化性的一个手段,不用卷积会更偏向原数据集的图片,缺点是人物姿势比较固定,比较适合炼画风,更有随机性。 卷积和正则化都是降低模型的拟合度增加模型的泛化性,让模型更有随机性,不适合人物的训练。
【吐司创造营】特训营第一课:模型训练!你想知道的都在这里!

【吐司创造营】特训营第一课:模型训练!你想知道的都在这里!

该文章由【吐司创造营】直播的部分脚本编成,部分操作向和演示向内容无法用文本撰写,故推荐配合回放观看效果更佳。部分观点来源网络,如有错误欢迎指正! 本期文章对应回放为👉:BV1BZ421e7fE 概念 基本定义:将提供数据、引导机器学习的过程叫做训练,训练得到的结果叫做模型,用模型解决问题的过程叫推理。 数据集=图像+文本,图片里蕴含的"像素分布规律",解释这些不同颜色的像素点是如何排列组合形成各种事物的。 Embedding:嵌入向量的本质是一串很长的数字序列,每个数字对应一个维度,用于描述某一种向量空间里的特征。向量指一个同时具有大小和方向的量。 提示词:分解为token(机器学习里的一个最小语义单位),文本编码器会将token里的含义转换成一组拥有768个维度的词元向量token embeddings,vae变分自编码器把向量转换回肉眼可以分辨的正常图片。 生图还原度:将提示词里的各种描述信息转换成了一个个向量然后和训练时掌握的各种规律一一对号入座。 训练方法 Dreambooth——Checkpoint Lora——Lora Textual Inversion——Embedding 正式训练流程 训练集准备:训练集注重的是质量,数量则保持在15 -30张图片以上即可。 一个characters 人物角色需要10 到50 张训练图片, styles 某种风格则需要100 到4000 张,某种concepts 概念则需要50 到2000 张。 eg.如果是训练脸部模型,则需要照片的主体区域大部分为人脸,各个角度,多种表情,不同光线下的,清晰的脸部图片。构图简单一些,尽量少一些背景元素对前景人脸的干扰,避免重复高度相似的图像,以避免过拟合。可以适当有一两张全身像。 其他主题也是一样的考虑,训练什么,训练集的图片中的主体就突出什么。围绕不同角度,多进行取材。避免画面中其他元素的干扰。 图片预处理:让训练集更符合模型训练本身的规范,即裁剪和打标。   裁剪:SD1.5 最低512*512,SDXL 1024*1024,可以裁剪成长方形,但一定要是64x的倍数。   打标:不是越多越好,机器打标不一定100%准确,模型标签的筛选有一个非常简单好记的原则,需要什么就删除什么(绑定在模型上,不需要输入词就可以生成);触发词不能是通用词语需要是词典里没有的单词,不然会让AI产生混乱。任何你没有标注的内容,就是模型要学习的主要对象的天生内在的独有特征。风格、概念的打标不用太过于细致,调一个相对低的打标阈值。 Mixed precision混合精度:no、fp16、bf16 三个选项。此为设置训练期间权重数据的混合精度类型,用以节省CRAM。最初,权重数据是32位的(即在设置为no 情况下)。fp16 是一种精度减半的数据格式,它可以节省大量VRAM (显存)并提高速度,但效果没有bf16 好。bf16 是NVIDIA RTX30 系列显卡以后的版本才有的,是一种用于处理与32 位数据相同的数字宽度的数据格式。如果你的硬件支持bf16,最好选择它。如果VRAM 小于16G 的话,请选择fp16。  Save precision储存精度:float、fp16、bf16三个选项。此为指定要保存到LoRA 文件中的权重数据的精度。float 是32 位,fp16 和bf16 是16 位。 默认值为fp16。同样,bf16 的效果要好于fp16,但需要硬件的支持。如果你想缩小模型的文件尺寸,该选项将起到一定的帮助(如果你通过DreamBooth 或Fine-tuning 方式存储模型文件为Diffusers 格式,则设置该选项无效)。 正则化:用于避免图像过拟合的方式(见第二课)  调度器:一般设置为constant 或者constant_with_warmup。 如果下面的Optimizer 优化器设置为Prodigy神童,则Prodigy 在学习率调度器为constant 的设置下可以很好地工作,学习率统一设置为1。如果设置为constant_with_warmup 以配合Prodigy,则需要更多的学习步数。大约10 % 学习率预热LR warmup 时,可能需要一两个额外的epoch 轮数来补偿。 LR warmup (% of steps)滑块:1~100数值选择。此为学习率预热步数,一般以总学习步数的百分比形式出现,即总学习步数的前百分之多少步为逐渐预热期。所谓逐渐预热是指学习率从0直至事先设定的最高学习率的逐渐提高过程(学习率的提高代表着学习速度的提高,即学习得越来越不细腻)。 调度程序中选择了constant_with_warmup 则设置此项,如果你的调度程序不是constant_with_warmup,则可以忽略它。默认为10,即10%。  优化器:决定了AI如何在这个过程里把控学习的方式,直接影响到学习效果。此项默认为AdamW8bit。优化器是确定在训练期间如何更新神经网络权重的设置。LoRA 学习最基础用的是“AdamW”(32位)或“AdamW8bit”(8位)。 AdamW8bit 使用较少的VRAM 并且具有足够的精度,因此如果你不确定哪个更适合,请使用“AdamW8bit” 。另外,融合了Adam方法,根据学习进度适当调整学习率的“Adafactor”也经常被使用(使用Adafactor优化器时,学习率调度设置则被忽略)。 “Lion”是一个相对较新的优化器,尚未得到充分验证,据称AdamW 更好。“SGDNesterov” 学习准确率不错,但速度较慢。DAdaptAdam 是比较稳妥的通用的选择,Prodigy 则是Dadaptation 的升级版,适合在SDXL 的环境,它会随着步数增加寻找最优的学习率,在训练SDXL 的LoRA 模型时选择它可以达到很好的结果。 学习率:AI学习这些训练集图片的强度,学习率越高,AI就更能学的进去。(学习率越大学习速度越快但学得也越粗犷,反之越细腻但效率也越低。) 过拟合:AI过于紧密或精确的匹配训练用的数据集导致它无法良好地根据新的数据生成新的结果。 关于Optimizer 优化器额外的解释和建议 Lion 的训练结果经常给人一种很奇特的感觉,比如你要想训练一个有着白色头发的角色,结果训练出来的模型的头发却呈现出了彩虹色的混乱效果,于此同时用其他优化器训练同样的训练集则会得到正确的白色头发效果,这足以证明Lion 可能存在某种不一样的地方,会为模型添加某些独特的元素,但现在尚无人能总结出确切的规律。 Lion 的学习速度相当快; AdaFactor 在训练时需要很长的时间,每训练一步时间都很长。它可能更适合风格或概念类的模型这种需要更多步数的训练; DAdaptation 目前已经被重命名为DAdaptAdam。它是一种自适应的优化器,即它会动态地自动地调整训练中的数值,省去你手动操作繁琐工作。 只要训练集本身没有问题,它通常会让你以最少的时间付出给出非常好的结果。目前为止,它应该算是最好用的优化器了。 DAdaptation 需要特定的参数设置才能起作用: --optimizer_args “de Couple=True” “weight_decay=0.01” “betas=0.9,0.999” 。 Scheduler 调度程序必须设置为constant 常量。 在使用DAdaption 时,很多网上提供的经验显示U-Net 和TE 的学习率似乎最好都是1.0,这个大家可以自己去尝试看看。不过,有一个问题需要注意, DAdaptation 对VRAM 的需求很重。它在batch size 为1 (512x512) 的情况下,使用6.1GB 的VRAM,因此6GB VRAM 用户将无法使用它。 在这种情况下,AdaFactor 可能是一个较好的替代方案。在尝试了各种Alpha 值来对应Dadaptation 之后,似乎Alpha 1 和Alpha 64( Network Rank (Dimension) 为128)。建议将Alpha 的值保持在Network Rank (Dimension) 的1 到一半之间(也就是说Rank 为128,则Alpha 的值设置为1~64。如果Rank 为32,则Alpha 的值设置为1~16); Prodigy 可是被视为DAdaptation 的升级版本,因此它与DAdaptation 一样, DAdaptation 的所有属性和注意事项也同样适用于Prodigy,VRAM 的使用率和训练速度大致也相同,设置也非常相似。同样的,Prodigy 具有自适应能力,可以随时自动调整数值以优化训练,似乎调整起来比Dadaptation 更精准。 Prodigy 可以用于SDXL 的LoRA 训练和LyCORIS 训练。在少量的测试中,我们发现在使用已经训练成功的LoRA 所配套各种参数和训练集的情况下,把DAdaptAdam 替换成Prodigy 可以得到更好的结果,进一步的确认还需要之后大量的训练实验来确定。尽管在之前的很多次训练尝试中,我们已经能够确认DAdaptAdam 是目前为止最好用的优化器,但是这不妨碍它的升级换代产品Prodigy 在未来成为更优秀的优化器的可能性,让我们拭目以待。Prodigy 可以设置如下的optimizer arguments 优化器参数:--optimizer_args “decouple=True” “weight_decay=0.01” “d_coef=2” “use_bias_correction=True” “safeguard_warmup=False” “betas=0.9,0.999”; 拟合状态判断 Network Rank (Dimension) :1~1024数值选择:LoRA 网络的“秩数”或“维度”(Rank 或DIM)。在LoRA 神经网络中,Rank 可以粗略地指代LoRA 网络的中间层的神经元数目。Rank 常用4~128,不是越大越好。神经元数量越多,可以保留的学习信息越多,但学习到学习目标以外的不必要信息的可能性也会增加。一般设置为64,再高必要性就不大了,超过了128 之后基本不会有什么变化。如果是32,越高的DIM 导致越多的占用VRAM 和越大的模型文件。此项的默认值为8 ;dim越高,要微调的数据量就越多,进而能够容纳更复杂的概念。复杂画风,二次元复杂程度比三次元低。   如何判断rank是否合适 需要增加Rank的情况:训练集图片增加(100张以上);训练复杂概念及画风;疑似欠拟合(学不像) 需要降低Rank的情况:出现突兀细节;出图效果混乱;疑似过拟合   Network Alpha(alpha for LoRA weight scaling):越接近rank则lora对原模型权重的影响越小,越接近0则lora对权重的微调作用越显著;0.1~1024数值选择。(实际上是1~1024 取值)这一参数的引入是为了防止保存LoRA 时权重四舍五入为0,即下溢。由于LoRA 的特殊结构,神经网络的权重值往往很小,如果变得太小,可能会变得与零无法区分,这与没有学习到任何东西的结果是一样的。 因此,提出了这种方法,以使LoRA 保持较大的权重值。在学习过程中,系统总是以恒定的速率将权重削弱一定的百分比,以使权重适当变小,但是削弱的步伐太激进则会下溢。Network Alpha 则决定了这个“权重削弱率”( weight weakening rate )。 权重削弱率是通过公式“Network_Alpha/Network_Rank”来表达的,值在0 到1 之间。 Network Alpha 值越小, “权重削弱率” 则越小,导致LoRA 神经网络的权重值就会保存越大,训练的LoRA 模型越有创造力。但是太小也不好,当到达了Alpha 的默认值1 时,则会与训练集风格差距太远。如果LoRA 训练学习后的准确率不令人满意,则有可能是权重太小以至于崩溃为0。在这种情况下,可以选择尝试降低Alpha 值,以降低削弱率,从而增加权重值来解决。Alpha 的值应该设置得比Rank 值小,如Rank 的一半(适合训练人物LoRA 模型),即Rank 若为64,Network Alpha 设置为32 ,此时的情况下所使用的权重削弱率为32/64 = 0.5 。如果Network Alpha 和Rank 具有相同的值,则该效果自动关闭。Alpha 不能高于Rank 值,虽然可以指定更高的数字,但很可能会导致意外的LoRA。另外,在设置Network Alpha 时,需要考虑到对LR 的影响。比如,权重削弱率为0.5(设置Alpha 为32,DIM 为64),这意味着实际LR 仅为LR 设置值的一半效果。一般在网络上普遍的建议是Alpha 的值是Rank 的一半,且尽量都为16 的倍数。 Enable buckets : “桶”,顾名思义就是“一个桶的容器”。 LoRA 的训练集图像不必具有统一的尺寸,但不同尺寸的图像不能同时进行训练。 因此,在学习之前,需要将图像按照大小分类到不同的“桶”中。尺寸一样图片放在同一个桶中,尺寸不同的图片放在不同的桶中。默认为勾选开启,即系统会自动把不同尺寸的图片放在不同的“桶”中。如果训练集的图像原本尺寸相同,你便可以关闭此选项,但保持打开状态并不会有任何影响;此选项,使得在准备训练集阶段特地将图片尺寸手动剪裁为512*512、或512*768 等等这样的工作变得毫无意义。因为,通过bucket “桶”这个概念可以很好地保留不同尺寸的图像,节省了事先准备的时间,更重要的是保留了图片中应有的细节。  Weights(权重)、Blocks(块)、Conv( Convolutional Neural Network,或CNN,卷积神经网络),这三个子标签是U-Net 中每个块的learning weight 学习权重和Rank 秩的设置。从U-Net 网络结构图中可以看到,U-Net 总共由25 个block “块”(或称为“层”)组成:12个IN 块、1个MID 块和12个OUT 块。这是U-Net 网络的标准结构。如果你想改变每个块的学习率权重,你可以在这里单独设置。选择这三个中的任意一个,下面的设置区域将显示相应设置内容。这些设置适用于高级用户属于更细腻的设置。一般情况下是不需要的,如果你确定了解这些细节,并能对微调这些细节十分了解,再对此区域进行设置。  Blocks: Block dims/Block alphas:在这里,你可以为U-Net 网络的25个块中的每一个设置不同的Rank(DIM)值和Alpha (Network Alpha)值:IN 0~11、MID 和OUT 0~11。(通常Rank 较高的块则可以容纳更多的信息。)此处需要指定25 个数字,即对应U-Net 中的25个块,为每个块都要指定一个数值。但由于LoRA 是将Attention 块作为学习目标的,而Attention 块并不存在于IN0、IN3、IN6、IN9、IN10、IN11、OUT0、IN1 这些块中,因此这25 个数字中的第1、4、7、11、12、14、15 和16 的块在学习过程中将被忽略。尽管如此,你仍需要填写出全部的25 个数字,以“,”半角逗号分割。(确实,此设置的用户界面不够友好,希望以后这个设置能更好用一些)此设置适用于高级用户。 一般情况下,你可以在此处留空。 如果未指定,则Network Rank(DIM)和Network Alpha 处设置的值将应用于所有25个块。  Conv: Conv dims, Conv, alphas:LoRA 针对Attention 注意力块进行训练,Attention 中有一个Conv 卷积神经网络(Convolutional Neural Networks, CNN) ,它也是通过额外的学习进行更新的。 其中使用的“过滤器”的大小是1x1 正方形。另一方面,除了Attention 之外的一些块(Res、Down 块)和OUT 中的一些Attention 块使用的是3x3 “过滤器”进行卷积。 本来这些块并不是LoRA 的默认学习目标,但是通过指定这个参数,Res 块的3x3 卷积也可以作为学习目标。因此,由于学习目标的数量增加了,便可以进行更精确的LoRA 学习。设置方法,同之前的Blocks: Blocks dims, Blocks alphas ,也需要设置25 个值,以“,”半角逗号分割。同样,此设置适用于高级用户。 一般情况下,你可以在此处留空。如果未设置,则Conv 不进行学习。  Clip skip :0~12 数值。Stable Diffusion 使用“CLIP” 来进行提示词的文本的数字化编码。CLIP 也是一种深度神经网络,它由12 个相似的层组成。文本(实际上是token)最初通过这12 个层转换为数字序列的表达,即向量形式的表达。在第12 层,即最后一层输出出来的向量则被发送到U-Net 网络中的Attention 块进行处理。根据经验:如果你选择基础模型是真实质感的,最好选择Clip skip= 1,如果选择的基础模型是绘画与动漫质感的,最好选择Clip skip= 2。  Noise offset type: Original/Multires。噪点偏移类型。此处用于指定在向训练图像添加额外噪点时使用哪种offset 偏移方法。默认为Original。 Multires 则以稍微复杂的方式添加噪点。复杂一点的噪声将更有利于训练出能生成整体更明亮或更昏暗的图像的模型。Stable Diffusion 有一个大多数人都没有注意到的有趣的小瑕疵。如果你试图让它生成特别暗或特别亮的图像时,它几乎总是生成总亮度的平均值相对接近于0.5 的图像(一个完全黑色的图像是0,一个完全白色的图像是1)。这是由Stable Diffusion 模型的噪点预测器的本质所决定的。所以接近办法也自然地是在噪点预测环节进行调整,即添加某些额外的噪点,即Noise offset 噪点偏移。  Noise offset : recommended values are 0.05~0.15 :这是当噪点补偿类型选择为Original “原始”时的附加选项。 如果你在此处输入大于0 的值,则会添加额外的噪点。 设置为0 ,根本不添加噪声。设置为1 增加了强烈的噪音。有报道称,添加约0.1 的噪声可以使LoRA 的颜色更加鲜艳。 默认值为0。  Multires noise discount :recommended values are 0.8. For LoRAs with small datasets, 0.1-0.3 :0~1 数值。与多分辨率噪点迭代选项结合使用。 该值用于在一定程度上减弱各分辨率下的噪点量。 0 到1 之间的值。数字越小,噪点越弱。 衰减量根据分辨率而变化,并且低分辨率的噪点被衰减得更多。默认值为0,通常建议0.8,如果训练图像较少,建议将值降低到0.3 左右。 Multires noise iterations :enable multires noise (recommended values are 6-10) : 0~64 数值。当噪点补偿类型选择Multires “多分辨率”时,则展示该设置项。 Multires “多分辨率”会产生多种分辨率的噪点,并将它们加在一起以创建最终的附加噪点。如果你在此处输入大于0 的值,则会添加额外的噪点,数值则代表分辨率噪点的种类的数量。默认为0,为0 时不添加额外的噪点。 建议设置为6 ~10 中的数值。   进程中如何判断LORA的完成度 loss值:越低说明拟合程度越高,0.08左右最好。   可用于吐司在线训练工作台参数
【吐司创造营】第一期第四课:ControlNet!一网打尽全16种控制方式!

【吐司创造营】第一期第四课:ControlNet!一网打尽全16种控制方式!

 该文章由【吐司创造营】直播的部分脚本编成,部分操作向和演示向内容无法用文本撰写,故推荐配合回放观看效果更佳。部分观点来源网络,如有错误欢迎指正! 本期文章对应回放为👉:BV1Ep421y7KX 一、ControlNet定义 以特定信息引导,实现一些我们通过文生图、图生图不好精准控制的特征。 预处理器可以从图片里提取特征信息,训练过的controlnet模型读取这些信息,并引导SD生成过程。 ControlNet 的核心能力就是能让我们通过设置各种条件来让AI更可控地生成最终图像结果。这些条件就是通过调节预处理器参数来实现的,所以我们首先要先了解下ControlNet 各种预处理器的功能。   二、参数详解 控制权重:主要影响控制力度 引导实际:生成过程中controlnet的生效时间 控制模式:更倾向于提示词还是controlnet 改变控制力度的方式: 加大力度: 提高权重 降低开始引导步数并提高结束引导步数 选用controlnet更重要模式 降低力度: 减小权重 提高开始引导步数并降低结束引导步数 选用提示词更重要模式   三、ControlNet详解 ControlNet的大致分类 轮廓类 Canny:边缘检测预处理器可很好识别出图像内各对象的边缘轮廓,常用于生成线稿。控制线条轮廓,线条粗细是一样的,白底黑线线稿应该用inver,反色成黑底白线才可以正常识别,线条不宜太过密集。 MLSD:M-LSD 线条检测用于识别画面里的直线条,生成房间、直线条的建筑场景效果比较好。M-LSD 直线线条检测预处理后只会保留画面中的直线特征,而忽略曲线特征。 Lineart:跟canny比较像,但是会有一些艺术化的处理,它的使用场景会更加细分,包括Realistic 真实系和Anime 动漫系2 个方向。Lineart 是有的明显笔触痕迹线稿,更像是现实的手绘稿。 SoftEdge:控制线条轮廓,但更加柔和,放松,线条有粗有细;几种预处理器没有太大差别,与canny对比,对轮廓线条的还原更生动,不会太过于刻板。它的特点是可以提取带有渐变效果的边缘线条,由此生成的绘图结果画面看起来会更加柔和且过渡自然。在官方介绍的性能对比中,模型稳定性排名为PiDiNetSafe > HEDSafe > PiDiNet > HED,而最高结果质量排名HED > PiDiNet > HEDSafe > PiDiNetSafe,综合考虑后PiDiNet 被设置为默认预处理器,可以保证在大多数情况下都能表现良好。 Scribble:涂鸦引导画面生成,应用一些灵魂画手,它检测生成的预处理图更像是蜡笔涂鸦的线稿,在控图效果上更加自由。 Segmentation:语义分割,用颜色把不同类型的对象分割开,它可以在检测内容轮廓的同时将画面划分为不同区块,并对区块赋予语义标注,从而实现更加精准的控图效果,让AI能正确识别对象类型和需求生成的区界。比如说绿色代表的是草地,蓝色代表的是天空。 景深类 Depth:深度图,通过提取原始图片中的深度信息,生成具有原图同样深度结构的深度图,越白的越靠前,越黑的越靠后。leres精度高,midas较为泛用,精度越高的预处理,花费时间一般越久。 对比来看,LeReS 和LeReS++的深度图细节提取的层次比较丰富,其中LeReS++会更胜一筹。而MiDaS 和ZoE 更适合处理复杂场景,其中ZoE 的参数量是最大的,所以处理速度比较慢,实际效果上更倾向于强化前后景深对比。   NormalMap:法线贴图,法线贴图能根据原始素材生成一张记录凹凸信息的法线贴图,便于AI给图片内容进行更好的光影处理,它比深度模型对于细节的保留更加的精确。法线贴图在游戏制作领域用的较多,常用于贴在低模上模拟高模的复杂光影效果。更精准的识别物体的凹凸体积关系,甚至是材质,常见用于室内设计,产品设计。对比Bae 和Midas 预处理器的出图效果,也能看出Bae 在光影反馈上明显更胜一筹。 对象类 Openpose:姿势生成,可生成图像中角色动作姿态的骨架图,控制姿势、手部、面部。   重绘类 Inpaint:类似局部重绘,但是融合会更好。局部重绘这里提供了3 种预处理器,Global_Harmonious、only 和only+lama,整体来看出图效果上差异不大,但在环境融合效果上Global_Harmonious 处理效果最佳,only 次之,only+lama 最差。 Tile:无缝拼接,用来添加细节和高清放大;Tile 中同样提供了3 种预处理器:colorfix、colorfix+sharp、resample,分别表示固定颜色、固定颜色+锐化、重新采样。看到三种预处理器的绘图效果,相较之下默认的resample 在绘制时会提供更多发挥空间,内容上和原图差异会更大。 Shuffle:随即洗牌,打乱噪声和像素点,提取颜色信息和色彩。随机洗牌是非常特殊的控图类型,它的功能相当于将参考图的所有信息特征随机打乱再进行重组,生成的图像在结构、内容等方面和原图都可能不同,但在风格上你依旧能看到一丝关联。 pix2pix:指令性的controlnet,指导图生图,它的功能可以说和图生图基本一样,会直接参考原图的信息特征进行重绘,因此并不需要单独的预处理器即可直接使用。比如说着火。 特殊类 Reference:参考信息,根据原有的图像信息去生成。这里提供了3 个预处理器adain、adain+attn、only。其中adain、adain+attn 是V1.1.171 版本后新增的预处理器,其中adain 表示Adaptive Instance Normalization 自适应实例规范化,+attn 表示Attention 链接。 Recolor:重新上色,黑白图像变成有颜色的。它的效果是给图片填充颜色,非常适合修复一些黑白老旧照片。但Recolor 无法保证颜色准确出现特定位置上,可能会出现相互污染的情况,因此实际使用时还需配合如打断等提示词语法进行调整。这里也提供了intensity 和luminance2 种预处理器,通常推荐使用luminance,预处理的效果会更好。 T2I-Adapter 文生图适配器:它的作用是为各类文生图模型提供额外的控制引导,同时又不会影响原有模型的拓展和生成能力。 IP-Adapter 图生图适配器:要用来提升文生图模型的图像提示能力 Clip_vision:腾讯出的,color adapter是用图控制色彩,style adapter是用图控制风格。
【吐司创造营】第一期第三课:图生图专题!在吐司能实现的多种效果!

【吐司创造营】第一期第三课:图生图专题!在吐司能实现的多种效果!

该文章由【吐司创造营】直播的部分脚本编成,部分操作向和演示向内容无法用文本撰写,故推荐配合回放观看效果更佳。部分观点来源网络,如有错误欢迎指正! 本期文章对应回放为👉:BV1SA4m1A7kp 一、 图生图生成原理 有两个非常重要的空间,pixel space 像素空间,和latent space 潜空间,文生图的流程是,先输入提示词,通过clip encoder 就是编码器,转换成sd可以理解的数据传入潜空间,在潜空间中会生成一个随机的噪声,然后通过大模型进行干预,采样器开始降噪,经过几十次的迭代后,生成我们想要的图像,最后通过解码器vae decoder到pixel space像素空间,就是我们能看到的图。 二、吐司通过图生图能实现的效果 那回到我们吐司的工作台来,我们可以通过吐司图生图达到哪些效果呢。 快速抽卡:这里教大家一个如何节省算力快速抽到自己喜欢的卡然后单独进行高清放大的方法,首先我们设置都最低,然后下面的批量数量调整为4,开始低成本抽卡,抽到自己喜欢的之后,再单独选择右上角的高清放大,将它单独送到高清修复里面,然后就可以得到一张比较满意的高清大图。 像素修复:这个比较经典的案例大家可能前段时间经常看到,就是修复一些比较古早的人物角色或者说道具,那我们今天就以修复英雄联盟的游戏装备图标来给大家展示一下图生图的具体用法,期间会用到几个controlnet给大家也做一个预习吧,具体的controlnet的实际应用记得准时来下周的controlnet专题课程。 前期准备:模糊游戏装备图 反推提示词 大模型:ReV Animated lora:玉器/木雕文玩0.8 controlNet:无缝拼接——tile_colorfix+sharp 色彩继承——t2ia_color_grid VAE:vae-ft-mse-840000-ema-pruned.ckpt 高清修复:修复方式:4x-AnimeSharp 重绘噪声强度:0.5 这个方法可以用于各种类似的使用场景,比如说老照片修复。 外部图片放大:如果我有一张sd里的图片,我想在吐司发帖存档怎么办,今天就跟大家传授一下这个小方法。首先还是图生图,这边我们复制一下你在sd里的使用参数然后复制到吐司中来,自动填充了,这里注意一下我们把重绘幅度调整到0.1,基本上不变然后出图,可以看到跟我们的原图差别不大。然后再对这张图片进行单独的高清放大。这张图现在就变成一张可以在吐司发帖的图片了,大家可以发帖然后存在自己的个人账户里。 二转三或者三转二:这个大家在comfy工作流里看的比较多,但其实最基本的webui也可以实现类似的效果,比如说,我想把一个人变成迪士尼风格,只需要调整一下大模型和lora。   三、技术详解 我们第一节课有讲21年到24年3月份的一个ai技术发展时间线,然后我们应该如何选择和利用这些新技术。 首先我们梳理一下基础模型: SD1.4:官方出的,这个比较少见了,有少数大模型创作者还在更新这个算法的模型,可以忽略。 SD1.5: 官方出的,目前应用最广的基础模型,其基础尺寸为512px,虽然新的技术在不断出现,但估计这个算法还得在一段时间内占据主流。 SD2.0/SD2.1:官方出的,其基础尺寸为768px,剔除了一下NSFW的内容,但是导致人体结构出图效果很差,在SD2.1的时候对该问题进行了修复。 SDXL: 官方出的,逐步占据主导地位,基础尺寸为1024px,其整体图片质量要高于前面3种模型,但生成速度也相对慢不少。 LCM: 清华大学开发的一种可以用更少的采样步数来快速生成图片的技术,但其图片质量要明显比前面基础算法的逊色,目前有少量应用在SD1.5上的模型,不过用在SDXL上的也不算多,因为它刚出来没几天,就有更好用的turbo问世了。 Turbo: 官方出的,主要应用于SDXL基础模型的快速图片生成技术,少见于其它算法,需要的采样步数比LCM还要少,有的模型2步即可生成不错的图片,但其质量也稍逊色于基础的SDXL。 (LCM和Turbo这两个技术的出现象征着ai生图进入实时出图阶段) Lightning: 字节跳动开发的,截止今日最新的快速出图技术,2-8步即可出图,其整体质量高于LCM和Turbo,估计会逐渐替代两者,但在它流行前会不会出现更好的技术还不好判断,因为AIGC技术的更新速度太快了。 Stable Cascade:官方出的模型,其用法与SD不同,官方声称可以更快的生成更清晰的大图像,但我在使用中并没有感受到它快,图片质量好倒是真的。comfy已有专门用于cascade的节点。 有一个up主做了一个测试,保证输入完全一样的情况下,只切换模型,然后肉眼观察出图质量。这边直接上最后的结果。 LayerDiffusion:是由那个开发出Controlnet的作者张吕敏,最新推出的一种透明图像生成技术,它的核心所在是“潜在透明度”,即将Alpha 通道整合到预训练模型的潜在结构中,使模型能够生成带有透明度的图。不仅可以生成一般物体,而且对于玻璃、发光这种透明/半透明的对象,以及头发丝这种精细的内容,生成的效果依旧完美。极大提升了出图效率,而且真正做到了“毫无抠图痕迹”,再也不用担心有白边了。除了直接生成透明底图像,LayerDiffusion 还支持生成分层图像。包括根据一个透明底图像生成完美融合的背景,并将该背景提取为完整独立的图层;以及根据背景图像+提示词生成前景主体,并将该主体提取为透明底图层。 Playground:PlaygroundAI发布的开源模型,官方声称其优于SDXL,1024px的基础尺寸,官方说直出效果比SDXL好,它的使用方法与SDXL一样,有兴趣的同学可以尝试下,抱脸上搜索playground即可,注意需要及时更新comfy才能适配新算法的模型。可能因为没有及时适配的原因暂时无法在webUI中使用。 Pony Diffusion: 一个叫做Pony Diffusion V6 XL的大模型,仅仅上架C站不到半个多月,就获得了1.7万(17k)的下载量,熟悉C站的朋友应该知道,这是个很惊人的数字。Pony用于SDXL的微调,有一些以Pony为基础制作的大模型,多是与Pony Diffusion配合使用,可使用SDXL的VAE,但使用SDXL的Lora效果不一定好。Pony模型需要一些固定提示词,否则出来的图片会很糟糕,在收集Pony模型资料时可以留意下。 作者自己表示:该模型结合了自然语言提示和标签进行训练,能够理解两者,因此大多数情况下使用正常语言描述预期结果是有效的,尽管您可以在主要提示之后添加一些标签以提升它们。该模型在基于作者个人偏好的约260 万张美学排名的图像上进行训练,动漫/卡通/拟人/小马数据集的比例约为1:1,安全/可疑/成人评分的比例也是1:1。 大约50% 的所有图像都附有高质量详细字幕,这使得自然语言能力非常强大。所有图像都已用字幕(当可用时)和标签进行训练,移除了艺术家姓名,并根据我们的同意/不同意计划过滤了源数据。 已过滤掉涉及未成年角色的任何成人内容。 Stable Video Diffusion:官方的模型,可以用来生成简单的视频。 Stable Zero123: 还是官方的模型,可以为物体生成不同角度的图片,它目前只能针对简单的物体。   大语言模型: 好说完这些我们来看一下大语言模型Grok,马斯克,OpenAI 曾经的联合创始人,更是连夜发布了他新创办的AI 公司xAI 的首款产品Grok。 Grok-1这种方式可以适应多种不同的任务和应用场景,更适合那些想要用开源模型打造自己专有模型的开发者。 技术架构上,和GPT-4一样,Grok-1采用了大规模参数的专家混合模型(Mixture-of-Experts, MoE)架构,可以将大型网络分解为多个“专家”子模块,每个子模块负责处理不同类型的信息或任务。底层技术上,Grok-1选择使用了基于JAX(一个由Google开发的用于高性能机器学习研究的库)和Rust(一种注重安全性和并发的系统编程语言)的自定义训练堆栈。这并不是大型语言模型中常见的选择。大多数知名的大模型比如OpenAI的GPT系列或Google的大模型通常是基于TensorFlow或PyTorch这样的主流深度学习框架开发的,且有丰富的API和社区支持,能让模型开发和训练变得更高效。   优势: 语言更诙谐幽默,更人性化,不那么机器人化。 Grok 支持多个「对话」同时输出,一边写代码一边回答问题,也不在话下,大大提高了用户的工作和娱乐效率。Grok 支持展开多个对话|xAI如果用户对现有的「回答」不满意,还可以展开时间线,直观地导航到不同版本的「回答」,还可以随时切换、修改历史对话记录。这一功能在长对话场景中,具有非常强大的管理优势。 支持超长提示词理解(Super Prompt):可以处理25k 的token 的字符。 快速响应:提供即时反馈,可以实现近乎零延迟的交互。 庞大的数据库:目前微调的数据来源是886.03 GB 版本的「The Pile」数据库,以及整个X 平台的海量数据。 支持语音输入提示词,输出回复。 「实时」搜索引擎,数据来源优先从X 上获取。 个性鲜明:搞笑且机智,远离枯燥的「政治正确」。 功能预测 API 功能确定会推出。 未来一定会支持图像生成,图像识别,语音识别等多模态,当前模型已经具备一些相关能力。 轻量版Grok 将会在特斯拉上实现本地化运行。
【吐司创造营】第一期第二课:文生图专题!先从了解各项参数开始!

【吐司创造营】第一期第二课:文生图专题!先从了解各项参数开始!

该文章由【吐司创造营】直播的部分脚本编成,部分操作向和演示向内容无法用文本撰写,故推荐配合回放观看效果更佳。部分观点来源网络,如有错误欢迎指正! 本期文章对应回放为👉:BV1Kw4m1d7TV 什么是文生图 根据输入text用text encoder提取text embeddings,同时初始化一个随机噪音noise(latent上的,512x512图像对应的noise维度为64x64x4,这也是为什么我们训练1.5模型的时候设置图片大小需要是64的倍数),然后将text embeddings和noise送入扩散模型UNet中生成去噪后的latent,最后送入autoencoder的decoder模块得到生成的图像。 checkpoin大模型 定义出图风格,文件大小一般在2GB-10GB不等,以safetensors或者ckpt的后缀结尾,为什么内存差距这么大,这里要讲到一个知识点叫EMA。我们看一下比较经典的一个案例吧,SD1.5的初始下载模型有两个命名,一个是SD1.5-pruned-8GB,一个是SD1.5EMA-4GB,这俩啥意思呢,模型的pruning就是带EMA的版本,EMA是一种训练策略,在训练的时候模型会有一个主模型例如Unet,同时也会保存一个copy即EMA_Unet,这个EMA_Unet可以简单地看作是Unet的一个权值平均化的版本,可以使得训练更加稳定。但是SD-WebUI是默认fp16精度不使用EMA的,所以这一部分的数据就多出来了,那随着现在训练门槛的降低(至少没有之前高)很多融合模型在融合的时候哪怕融了带EMA的A模型然后加入了不带EMA的B模型,那这个EMA就多出来了,是无效数据,但是它占内存,本质上其实出图效果没有太大差别。SD1.5大模型2G左右,XL是6个G左右。 lora微调模型 稳定扩散模型的训练方法,它在不干涉神经网络运算层的情况下,插入一些低阶的运算层,通过训练这些低阶运算层来影响出图。可以指定人物、元素、场景、画风、细节。市面上的lora我简单分为3类,普通lora,用的最多的,功能性lora,调整身材比例,面部大小等等,其他lora,如加细节,加姿势等。我建议大家在使用的时候去看一下模型主页作者有没有特殊说明给一些推荐的lora权重,吐司的默认lora权重是0.8,还是比较合适的。(这里强调一下过拟合的概念,比如说打标不清晰不精准造成模型出图混乱的;或者神经网络模型遭受灾难性遗忘现象,模型在接受新任务训练后可能会严重失去其在任务上的泛化能力。这通常意味着新任务可能会覆盖过去学习的权重,从而降低过去任务的模型性能。如果不解决这个问题,单个神经网络将无法适应持续学习的场景,因为它在学习新事物时会忘记现有的信息/知识。简单的说就是容量有限的情况下,系统为了执行一个新的任务,就必须擦除旧有的数据。)但它并不是一无是处嗷,我们刚刚说到还有一种功能性lora,本质上就是差异炼丹,就需要一些炼的非常过头的模型。 VAE vae模型是一种基于变分自编码器的神经网络模型,它的作用就是从你输入的数据中学习,然后再对新样本进行生成和重建,从而增加视觉效果,所以我们简单点把它理解成一个滤镜和微调模型就行了,那么吐司提供的这些vae当中要注意一下如果你的大模型是选用的SDXL模型,那么也要选择相对应的VAE模型。对于具体VAE模型的选取原则,还是要参考作者的模型说明,VAE被破坏的时候出图会发灰,有的作者在训练的时候会再添加一次VAE,但有的作者不会,那如果说你判断不了作者有没有在训练的时候内置VAE,你就出图试试,如果说出来的图片色彩发灰,明度偏暗,可以外部挂载一个VAE改善一下出图色彩质量。那这边推荐几个通用的VAE,如果是二次元向的推荐animevae.pt,ClearVAE.safetensors;真人向推荐vae-ft-mse-840000-ema-pruned.ckpt。 clip跳过层 它是语言与图像的对比预训练,让SD数据库里的处理模块使语言和图像建立关系,数值越高关键词和图片的关系就会越低,数值越低,关键词和图片的关系就会越高。推荐是2-4。 提示词 其实比较简单,主要说一下吐司上面这三个小按钮。第一个解析图片提示词,可以上传一张图片提取提示词,比较类似sdwebui的deepbooru反推功能。第二个是导入参数,它可以自动提取你剪辑版里的sd参数,复制到这里点确定可以自动填入。第三个是一个随机提示词按钮,没有灵感的时候就随机出图,但这个随机提示词是只改变正向提示词的,负向提示词是固定不动。今天来讲一下这个BREAK,提示词书写的界面中主要含有的信息有两个,其一是我们输入在提示框中的信息,第二是显示在右上角的当前句子包含的token数量,token的长短取决于该单词的常见程度的,越常见的单词其token数量也就越短。当提示词每超过75就会对其进行截断,将截断之前的prompt作为一整个句子参与图像生成,后续的prompt依次进行上述操作,由于每一个句子中位置靠前的自然权重会稍高于位置靠后的词,所以有以下两个结论:由于两个句子之间的存在隔离,所以位置在75的提示词天然就会与位置在76的提示词有一定的隔离;(比如说green_dress在位置72,blue_hair在位置80,所以二者之间产生了天然隔离)由于句子进入模型参与影响有先后顺序,所以靠前句子的影响因素大于靠后的句子(这个逻辑上可以直接类比到位置靠前的提示词天然权重大于位置靠后的提示词)。BREAK字面上是打断的意思嘛,它的作用就是隔断上下文,BREAK会强制结束当前这个句子,即使这个句子中只有一个1girl,也会被填充成75个token。 采样算法 怎么选择最优质的采样算法主要是从收敛,时间,步数还有你的显存来决定,那吐司因为是线上集群都是超好的显卡我们就不考虑显卡的因素。 给大家整理了一下如果你想使用快速、新颖且质量不错的图片,那么出色的选择是DPM++ 2M Karras,20 – 30 步比如说2.5D或者3D的出图,或者人像。 如果您想要高质量的图像并且不关心收敛,那么好的选择是具有10-15 步的DPM++ SDE Karras(注意:这是一个较慢的采样器),或者说是DDIM,那著名的墨幽大大就是比较推荐在使用他的大模型的时候用DDIM这个采样器。DDIM其实是最古老的一版采样器了,比较过时,如果不是作者特意要求的话,不建议当首选。(啥是收敛:在扩散过程中,SD利用文本向量和噪声图像作为条件输入,给出每一步变换的概率分布。这样,SD可以根据文本指导噪声图像向目标图像收敛,并保持图像的清晰度和连贯性。) Euler a这个采样器就是比较快和稳,而且比较适合二次元出图。 迭代采样步数 越高画面细节越多,越慢,一般范围在15-40。 📢 :迭代是重复反馈的动作,神经网络中我们希望通过迭代进行多次的训练以到达所需的目标或结果。 每一次迭代得到的结果都会被作为下一次迭代的初始值。 一个迭代= 一个正向通过+ 一个反向通过;更多的迭代步数可能会有更好的生成效果,更多细节和锐化,但是会导致生成时间变长。而在实际应用中,30 步和50 步之间的差异几乎无法区分。太多的迭代步数也可能适得其反,几乎不会有提高。 进行图生图的时候,正常情况下更弱的降噪强度需要更少的迭代步数(这是工作原理决定的)。可以在设置里更改,让程序确切执行滑块指定的迭代步数。 CFG 它控制生成图片与提示词的接近程度。数值越高,画面越贴近提示词的描述;数值越低,画面更有变化性更偏向于让AI自由发挥。建议3-15,中值一般是6-8。 高清放大 “4x-UltraSharp”、“R-ESRGAN 4x+”擅长处理写实图像,“R-ESRGAN 4x+ Anime6B”、"4x-AnimeSharp"擅长动画图像。 重绘幅度 越低与原图越相似,越高越和原图没关系。 高清人物立绘制作 【纯演示向】 ADetailer:吐司的ADetailer也是可以添加lora的,这里的lora比较推荐用一些脸膜。本质上的提示词逻辑跟文生图的提示词没有什么特殊的地方,但是更建议写一些对面貌的描述词,比如说发色、瞳色这种能增强特征的提示词,如果说不填写的话,则是继承文生图的prompt词。 置信度是指控制模型检测结果的可信度,sedwebui的AD修复的时候是会显示有一个红色的框,那么增大数值可获得更高的修复准确度,同时这个框的识别就越准确,如果说你的画面中有多人出现的情况但你只想修复最前面的一个人脸,那么这个值就要拉高。那同样的如果你想修复多个人脸,降低数值可增大修复范围。(这一部分推荐去听回放,有演示讲的更清楚。) 重绘蒙版模糊可以理解为ps里的边缘羽化强度,数值越小越锐利,越大越模糊,想衔接更自然的话,这个值可以稍微调大一点。 重绘噪声强度:对于面部修复的结果影响仅限于产生不同的面部特征。推荐0.4-0.6。 Adetailer的模型如何选择,我这边截取了原作者在github上给的一些模型分类和作用大家可以参考一下。 【上节课有人要的论文整理】 SD 1.4官方项目:CompVis/stable-diffusion SD 1.5官方项目:runwayml/stable-diffusion SD 2.x官方项目:Stability-AI/stablediffusion diffusers库中的SD代码pipelines:diffusers/pipelines/stable_diffusion SD核心论文:High-Resolution Image Synthesis with Latent Diffusion Models SD Turbo技术报告:adversarial_diffusion_distillation

帖子