SD3 - Anime Consistency Experiment - v0.3
详情
下载文件
模型描述

V0.4:
预训练阶段:
我需要先完成几个步骤:
完成协作式 Jupyter 笔记本的设置,并使用较小的半SFW训练数据进行协作测试。
在系统能够正确呈现穿着衣物和裸体的姿态之前,我对引入性行为或与性相关的内容毫无兴趣。
整个姿态标签集与裸体和穿着衣物的图像交织在一起,数据集的区分将通过一个专属于本模型的独特标签实现。本次基于协作的训练将仅使用半SFW(穿着衣物)元素。我不希望因为我的图像集中包含明显的性NSFW内容,而在使用Google协作平台测试计算设置和系统时被封禁。
选取主要姿态图像:约1215张 ~pose 图像,
视角;每个对象偏差70张
目标躯干角度:3 × 5
正面
侧面
背面
起始角度:3 × 5
正面视角
俯视
仰视
目标头部角度:3 × 5
面向观察者,正前方
侧向
背向
眼睛角度:5 × 5
看向观察者
看向一侧
看向前方
看向别处
看向下
人体形态关联:
躯干:
直立(上半身垂直):
坐姿:<- 始终假设坐在臀部
平面关联:
坐在表面
坐在桌子上
坐在椅子上
坐在沙发上
坐在地板上
坐在床上
俯卧/仰卧(上半身水平):
俯卧,面朝下
仰卧,面朝上
侧卧,侧躺
平面关联:
仰卧在地板上
仰卧在桌子上
仰卧在椅子上
仰卧在床上
仰卧在沙发上
仰卧在草地上 <<<<<<<<
手臂关联:
上臂
下臂
手
手部关联:
挥手
V字手势
腿部关联(大腿、踝、脚):
双腿并拢(全腿):
大腿并拢
膝盖并拢
脚并拢
双腿分开(全腿):
大腿分开
膝盖分开
脚分开
脚并拢:
交叉腿(部分遮挡大腿):
交叉脚踝(部分遮挡脚踝):
腿抬起(全腿):
腿下垂(全腿):
腿张开(全腿):
形态姿态:基于实用性和需求,为上述所有姿态绑定对象标签。
仰卧
坐姿
蹲姿
跪姿
四肢着地
最终目标应为:
- 一位直立女性正面坐着沙发上,双腿交叉,吃着薯片。
这1000张最高质量的姿态图像将作为完整输出图像的基础。每个姿态将被嵌入五种质量梯度中,并叠加在独特非均匀背景上。
梯度、多色、多形状、单个形状、面板,以及若干Danbooru图像效果背景。
每个背景将随机引入阴影元素和空间结构,每种质量对应一个背景,得益于NAI的导演工具重着色与去色功能。
这应能区分背景,并为基础模型的训练引入更多“抓取点”,以便模型抓住SD3中已有的内容。这应能实现更一致的负向提示,前提是正确标注。
情境与上下文锚点:约1000张图像,直接使用euler进行原始输出推理
每个锚点基于将我希望模型知道的内容与其已知内容相连接。这将把“实际存在”与“我希望存在”的内容关联起来,而无需大量额外图像。除非我为每个版本生成新的一批此类图像,否则结果将受影响。
我将构建一个更小的图像子集。目前尚不确定具体需要多少,但必须通过推理结果手动生成,因此我应该能快速完成。
每个上下文约10张图像即可。多上下文会稍复杂,但也能处理。100个单一标签上下文,无额外内容,已足够将所有新元素关联到当前SD3中。
V0.3:
发布:
简而言之:steps: 50, size: 1024x1024, sampler: euler, cfg rescale: 0.4-0.8, config str: 9,
lora str: 0.5-0.8
引言:
结果比V0.2显著更准确、锐利和强大。训练和进展的成功迫使我在现有条件下行动。即使仅使用约150张动漫一致性图像,使用我的4090在SuperTuner上训练也太慢。更大模型的图像数量在我的PC上训练将呈指数级增长,因此我昨天设置了一个Jupyter笔记本,进行一系列实验,并将在更强大的云服务(使用A100和H100)上运行SuperTuner,以期在合理时间内完成全部45,000张姿态训练图像 + 1500张核心嵌入特征图像的训练。在正式发布1.0版本时,我将公开完整图像数据集和标签。我预计需要多次重训才能达到理想效果,因此成本可能不菲,但基于当前较小成果,我认为值得投入。
发现:
SD3有非常明确的审查点。这些审查点表现为标签的不稳定性,而非完全删除。不稳定的标签必须被彻底嵌入并重新训练,才能实现一致性。在任何大型模型训练中,请彻底销毁这些标签。必须正确嵌入并重新训练。如果不进行完整重训,你无法完全“忘记”这些行为。他们使用了与我创建鸟类LoRA相似的LoRA权重系统,这完全破坏了图像训练和细节。我已警告过所有人,这是SD3中清晰的证据!
标签在此极其关键。姿态、角度、偏移和相机视角尤其重要。牛仔镜头因其他标签而被破坏,肖像与其他标签混杂等。这里存在一系列严重问题需要解决,但只需稍加努力,便能在短时间内完全修复。

需要大量额外图像数据、更丰富的图像信息,以及低强度训练序列。路线、模式和具体配置对在不破坏核心模型的前提下训练至关重要。

系统似乎将裸体视为衣物,认为所有内容都只是皮肤上的另一层,因此它需要学习“皮肤”是什么。
手部表现极差。我不明白为何默认如此糟糕,但它们确实极其糟糕。LoRA微调虽然修复了不少手部问题,却也引入了新的手部问题。对于一个基础模型而言,这实在难看。有人显然没用过HAGRID。
在SD3中,负向提示有时几乎无效,无论是否使用LoRA。结果往往完全忽略负向提示,或负向提示以意想不到且极具破坏性的方式抵消了正向提示。
权重未被正确加权。默认响应中存在大量不兼容的权重,导致图层叠加、纹理破坏、叠加问题,以及明显审查和破坏的形状。我需要找出解决方法。可能需要对整个模型权重进行重新缩放,因为整个核心模型不知为何需要3-4倍的偏移。目前我还不清楚这意味着什么,但我将研究此问题,并依据论文及后续论文跟进更多信息。
成功:
风格应用。我有80%以上的把握,通过适当的姿态训练,整个动漫风格可以叠加在任何概念上。
低强度造成的损害远小于预期。这个LoRA尺寸很小,因此在这个小尺寸LoRA上实验成功,是我认为最有趣的方面之一。大型LoRA是常见系统,Kohya通常发布大型LoRA。当你拥有比我的训练数据多得多的图像信息时,大型LoRA可能是必需的,但对我使用的110张子集而言并非如此。
某些NSFW元素被引入,但仍未被主动触发。结果足够有希望,可包含一个完整女性裸体NSFW子集,这可能将一致性核心图像集需求推至约1800张或更多。
多个<<<姿态元素被引入标签池,即使在没有大量图像训练数据的情况下,也能实现对姿态的简单甚至深度控制。
失败:
身体变形。身体仍会扭曲、变形,几乎无需任何刺激就变得令人不安。虽然现在更难使其变形,但在我将完整姿态集加入之前,它仍会这样。正确设置开关时能产生尚可输出,设置不当时……那就随意玩吧。
色彩错误。白色背景已被严重固化,虽可被负向提示抵消,但不能通过我为V0.2发布的ComfyUI实现。尽管这个ComfyUI作为实验很有趣,但结果未达成目标,因此我改为使用单一提示,效果良好。
色块问题可能直到我建立更好的底层基础前都无法解决。NovelAI引入了一种新的颜色替换系统,将有助于缓解SD3训练数据中的此问题,因此目前我认为已足够。目前Latents有时对SD3并不完全兼容,但可被利用。
强度越高,模型受损越严重,这意味着需要更低的训练强度,更多时间用于精细元素微调;而更关键的嵌入遮蔽和分层,则需要更高的训练强度和更少的时间。
结论:
80%的目标尚未达成。
该基础系统实现了一些目标,但必须扩展以应对80%的比例。
测试和结果表明,许多标签的一致性损失小于25%,而一些此前系统中完全不存在的标签,实现了100%的成功。
必须应用完整姿态系统、比例系统、屏幕锚点锁定系统、深度系统、旋转系统,以及使用标准Danbooru/Gelbooru/Sankaku/e621相机比例标签的关联相机访问点,才能构建一个真正的动漫系统。
明显被破坏和审查的标签:
以下每个标签均被我事先警告过的同一LoRA审查系统彻底破坏。他们完全无视我的意见,执意而为,彻底毁掉了自己的模型。没人听过没有AI学位的人说的话。
仰卧
- 仰卧在背部、侧卧、仰卧在床上等,似乎均在训练后被审查,以我见过最残酷的方式。他们使用了审查LoRA系统,直接将结果强行塞入。就像一辆18轮卡车在狭窄道路上高速行驶,下方是低垂的电线,它彻底撕碎了整个系统,所有被波及的低垂电线统统被摧毁。
蹲姿
- 比其他标签受损较轻,但仍有明显破坏。与此相关的任何内容都明显不稳定。
腿
尝试控制腿部时,经常会出现完全分离且令人不安的腿部,腿部姿势必须与姿态一起训练。最常见的问题是额外的腿、分离的腿、多余腿和缺失腿。
你更常需要定义衣物而非实际腿部,因此使用“腿”标签反而会造成干扰。这就像一种讽刺,尽管“腿”标签本应是所有腿部的锚点。你可以明显感觉到这是临时起意做的。
手臂
更常见的是得到多余的手臂,而不是你希望手臂出现的位置。这需要大量数据支持。
有时使用护腕、手套等可以产生更一致的结果。
他们可能刻意屏蔽了手臂,以阻止用户在此处使用完整手臂控制,或者只是尚未充分微调手臂部分。无论如何,我并不太在意,因为修复手臂比修复腿部要容易得多。
预发布通知:
目前正在使用更低的训练速率对初始系统进行全面重训练。这应能提升在100轮训练后的生成质量,几小时后即可供测试。我对ComfyUI的最终效果并不满意,因此稍后我会尝试制作一个更简洁的版本。
V0.2:
我让模型 overnight 训练,现在结果还不错。其可靠性明显提高,但仍未完全训练到位,但确实在逐步接近目标。这里没有魔法,只是精挑细选。它尚未完全准备好,但已展现出显著潜力。
建议使用 0.5-1.0 的强度,超过 0.6 后,我建议使用提示词来消除白色背景,并为你的角色提供更详细的场景。
提示词:
描述你的场景,
使用 danbooru 标签描述角色特征(不要照搬此句,使用实际的一致性标签)。
负面提示词:
简单背景,白色背景,白色任何东西
V0.1:
我建议使用极低强度运行:
0.1-0.4 效果最佳。
LCM 采样器对此模型效果非常好。
尝试 Euler、DPM2、HEUNPP2、UniPC 等更多采样器。
请勿使用 EULER A、DPM2A 或任何“祖系”采样器。
ComfyUI 是测试平台,请准备好 LoRA 加载器以便进行实验。
本模型使用的训练数据图像与以下完全相同:Consistency v1.1 LOHA SDXL
然而/// 我对标签进行了大量筛选。考虑到(booru)标签要么不存在,要么与 SD3 关联极弱,我预测仅使用简单标签会产生破坏性而非有益效果。到目前为止,即使增加了标签数量和简单句子,效果仍不理想。为满足信息量需求,我计划引入完整的 1500 张图像 Consistency v2 基础模型,外加约 45000 张基于姿态的规范图像集。
这是我首次尝试 SD3 LoRA,也是我第一次训练此类模型。我花了整个下午的时间让 SimpleTuner 在 Windows Docker 上运行。由于 SimpleTuner 文档匮乏且系统复杂,这并非易事,但最终成果使我得以在 4090 显卡上训练,毫无怨言。它还提供了更灵活的训练环境,前提是你要能忍受它在运行过程中抛出的 C++ 级别的错误。
发现与成果:
我的发现……其实并不太好。我甚至惊讶它竟能运行,更别说生成出连贯的结果了。当然,玩起来有点趣味,也包含一些 NSFW 元素,但它们的明显程度远不及“自闭症”版本,甚至有些比基础 SD3 还要弱,这倒是个有趣的结果。
该 LoRA 体积很小,除非你真的想生成文字,否则无需使用文本精炼器。
模型存在相当多的缺陷:身体常无法生成四肢,手部并不总会出现,使用某些角度时腿部常会变形或扭曲,手臂也常扭曲,但程度比正常情况略轻。
它修复了许多姿态错误,却又引入了新的错误!我明天会整理一份完整的成功与失败清单。
成功之处:
目前看来,它在一定程度上能处理低强度的姿态控制,修复断裂的四肢、压扁的躯干,甚至还会引入新的断裂四肢和压扁躯干形式,但总体上比原来要好。
失败之处:
我真心怀疑它的成功率难以超过 80%。
一致性模型的目标正是达到这个点,因此在认为本次实验成功前,我至少要在 SD3 范畴内突破这一门槛。它远逊于 NAI,甚至无法与 PDXL 和 Consistency v1.1 的输出相提并论。它需要更多的训练步骤和更长的训练时间。











