KJNodes/model_loadersgenerated

CheckpointLoaderKJ

该节点在标准加载流程的基础上,增加了对多种权重精度(如 FP8、FP16、BF16)和计算精度的控制

Checkpoint Loader KJ

MODEL
CLIP
VAE
ckpt_name
COMBO
weight_dtype
COMBO
compute_dtype
default
patch_cublaslinear
sage_attention
0
enable_fp16_accumulation
KJNodes

CheckpointLoaderKJ 节点在标准加载流程的基础上,增加了对多种权重精度(如 FP8、FP16、BF16)和计算精度的控制。

CheckpointLoaderKJ 是一个实验性的模型加载节点,用于从检查点文件加载 Stable Diffusion 模型。其核心功能包括加载模型、CLIP 文本编码器和 VAE 解码器,同时支持对模型进行特定的性能优化和精度调整。

节点功能

该节点在标准加载流程的基础上,增加了对多种权重精度(如 FP8、FP16、BF16)和计算精度的控制。其关键技术机制包括可选地使用 CublasLinear 来修补 PyTorch 的线性层以提升计算效率,以及集成 SageAttention 来替换默认的注意力机制。这些优化旨在针对特定硬件(如支持 FP8 的 GPU)提升推理速度或降低显存占用。

节点参数说明 - CheckpointLoaderKJ

连接输入 (Inputs)

参数名称数据类型必填默认值取值范围/选项说明
ckpt_nameFOLDER_PATHS--指定要加载的检查点(模型)文件的名称。该文件需位于 ComfyUI 指定的模型目录中。

控件参数 (Parameters)

参数名称数据类型必填默认值取值范围/选项说明
weight_dtypeCOMBOdefault"default", "fp8_e4m3fn", "fp8_e4m3fn_fast", "fp8_e5m2", "fp16", "bf16", "fp32"控制内存占用和计算精度。
compute_dtypeCOMBOdefault"default", "fp16", "bf16", "fp32"fp16、bf16、fp32。影响前向传播过程中的数值精度。
patch_cublaslinearBOOLEANFalse-启用或禁用 cublas_ops 参数。
sage_attentionCOMBOFalsefalse, true修补 ComfyUI 的注意力机制以使用 SageAttention。
enable_fp16_accumulationBOOLEANFalse-启用 torch.backends.cuda.matmul.allow_fp16_accumulation,需要最低 PyTorch 版本 2.7.1。

输出

参数名称数据类型说明
MODELMODEL输出的已加载的 Stable Diffusion 主模型,用于图像去噪和生成。
CLIPCLIP输出的 CLIP 文本编码器,用于将文本提示转换为模型可理解的嵌入向量。
VAEVAE输出的变分自编码器,负责将潜在空间表示编码解码为像素图像。

使用场景

在需要精确控制模型精度以平衡速度与质量的工作流中,此节点非常有用。例如,在部署优化后的模型进行批量图像生成时,用户可以先通过此节点以 FP8 精度加载模型,再连接 K采样器进行高效推理。它也可用于测试不同注意力机制(如 SageAttention)对生成效果的影响。

注意事项

请注意,这是一个标记为“实验性”的节点,其功能可能不稳定或随版本更新而改变。启用 enable_fp16_accumulation 等功能需要特定版本的 PyTorch(2.7.1 或更高),且部分优化(如 FP8)需要硬件支持。

CheckpointLoaderKJ 节点源码链接

CheckpointLoaderKJ 节点来自 ComfyUI-KJNodes 节点包。

评论

使用 GitHub 登录后即可参与讨论。

评论加载中…