ComfyUI-TCD
如果我的工作对你有帮助,请考虑给它一个星标。
本仓库是TCD论文中提到的TCD采样器在ComfyUI上的自定义节点实现。
TCD受一致性模型启发,是一种新型蒸馏技术,能够将预训练扩散模型的知识蒸馏到少步采样器中。众所周知,LCM在生成清晰和详细图像方面存在一些问题。TCD比LCM显著提高了图像质量,且使用更少的步骤。此外,TCD允许调整样本中的随机噪声水平,产生不同程度细节的结果。
也就是说:
- 在相同去噪步数下,TCD生成的细节比LCM更好。
- TCD可以通过参数控制细节的丰富程度。
- 此外,当步数较大时,TCD也会比LCM产生更好的结果。
我的一些其他可能对你有帮助的项目:
:star2: 更新日志
- [2024.6.03] :wrench: 修复gamma为0时的采样问题。
- [2024.4.28] :rocket: 官方PR进行中。
- [2024.4.28] 初始仓库。
示例工作流
examples目录中有工作流示例。assets文件夹中有使用TCD和LCM生成的图像。
TCD在高NFEs(步数)下仍保持优秀的生成质量。
TCD结果 | LCM结果 | |
---|---|---|
低NFEs | ||
高NFEs |
[!注意]
除了cfg
、step
和sampler
外,其他参数保持不变。
ddim 30步 | dpmpp_2m 30步 | TCD 4步 | LCM 4步 |
---|---|---|---|
上述比较结果显示,TCD能够产生比LCM更好的细节效果,不再那么模糊和平淡。
LoRA模型
TCD可用的一些LoRA模型。
TCD团队的TCD LoRAs:
字节跳动团队的Hyper-SD 1-Step统一LoRAs:
安装
git clone https://github.com/JettHu/ComfyUI-TCD
# 或使用ComfyUI-Manager
节点参考
TCD模型离散采样
输入
- model:由
Load Checkpoint
和其他模型加载器加载的模型。
配置参数
- steps:去噪过程中使用的步数(与KSampler节点相同)。
- scheduler:使用的调度类型(与KSampler节点相同)。
- 我只保留了
simple
和sgm_uniform
。simple
的行为与diffusers相同。sgm_uniform
是ComfyUI作者推荐的另一种用于LCM的调度器。
- 我只保留了
- denoise:应该被噪声擦除的潜在信息量(与KSampler节点相同)。
- eta:一个随机参数(在论文中称为
gamma
),用于控制每一步的随机性(结果的细节丰富程度)。当eta = 0时,表示确定性采样,而eta = 1表示完全随机采样。建议在调整较大步数和使用不同LoRA时微调此参数。默认值为0.3。