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_name | FOLDER_PATHS | 是 | - | - | 指定要加载的检查点(模型)文件的名称。该文件需位于 ComfyUI 指定的模型目录中。 |
控件参数 (Parameters)
| 参数名称 | 数据类型 | 必填 | 默认值 | 取值范围/选项 | 说明 |
|---|---|---|---|---|---|
weight_dtype | COMBO | 是 | default | "default", "fp8_e4m3fn", "fp8_e4m3fn_fast", "fp8_e5m2", "fp16", "bf16", "fp32" | 控制内存占用和计算精度。 |
compute_dtype | COMBO | 是 | default | "default", "fp16", "bf16", "fp32" | fp16、bf16、fp32。影响前向传播过程中的数值精度。 |
patch_cublaslinear | BOOLEAN | 是 | False | - | 启用或禁用 cublas_ops 参数。 |
sage_attention | COMBO | 是 | False | false, true | 修补 ComfyUI 的注意力机制以使用 SageAttention。 |
enable_fp16_accumulation | BOOLEAN | 是 | False | - | 启用 torch.backends.cuda.matmul.allow_fp16_accumulation,需要最低 PyTorch 版本 2.7.1。 |
输出
| 参数名称 | 数据类型 | 说明 |
|---|---|---|
| MODEL | MODEL | 输出的已加载的 Stable Diffusion 主模型,用于图像去噪和生成。 |
| CLIP | CLIP | 输出的 CLIP 文本编码器,用于将文本提示转换为模型可理解的嵌入向量。 |
| VAE | VAE | 输出的变分自编码器,负责将潜在空间表示编码解码为像素图像。 |
使用场景
在需要精确控制模型精度以平衡速度与质量的工作流中,此节点非常有用。例如,在部署优化后的模型进行批量图像生成时,用户可以先通过此节点以 FP8 精度加载模型,再连接 K采样器进行高效推理。它也可用于测试不同注意力机制(如 SageAttention)对生成效果的影响。
注意事项
请注意,这是一个标记为“实验性”的节点,其功能可能不稳定或随版本更新而改变。启用 enable_fp16_accumulation 等功能需要特定版本的 PyTorch(2.7.1 或更高),且部分优化(如 FP8)需要硬件支持。
CheckpointLoaderKJ 节点源码链接
CheckpointLoaderKJ 节点来自 ComfyUI-KJNodes 节点包。
评论
使用 GitHub 登录后即可参与讨论。