news 2026/8/22 20:56:06

ComfyUI-KJNodes:让 ComfyUI 更快更省心的完整教程

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
ComfyUI-KJNodes:让 ComfyUI 更快更省心的完整教程

ComfyUI-KJNodes:让 ComfyUI 更快更省心的完整教程

【免费下载链接】ComfyUI-KJNodesVarious custom nodes for ComfyUI项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-KJNodes

如果你用 ComfyUI 有一段时间,多半遇到过这些糟心事:批量处理上百张图很慢、显存(VRAM,即显卡显存)占用摸不着头脑、工作流越长线越乱、模型加载的参数散得找不着。ComfyUI-KJNodes 是 ComfyUI 的一个自定义节点包,把这些常见痛点做成了一个系列现成节点:批量图像处理、模型编译加速、注意力优化、显存监控、子图数据传递(Set/Get 节点)。装好之后直接在界面里拖出来就能用。这篇文章带你走一遍:装好它 → 跑通第一个小例子 → 调性能 → 避坑。

它到底能干什么:核心功能先扫一眼

装之前先看看"工具箱"里有什么:

  • 批量图像处理ImageBatchMultiImageConcatFromBatch这类节点会把大批次图片自动拆开分批处理,适合数据集预处理和批量出图
  • 模型加载与组件分离CheckpointLoaderKJDiffusionModelLoaderKJ支持 SDXL 多组件分离加载,有限显存下也能跑
  • 模型编译加速TorchCompileModelFluxAdvancedV2TorchCompileVAETorchCompileControlNet把模型的不同部分分别编译,支持多种编译后端
  • 显存监控StartRecordCUDAMemoryHistory/EndRecordCUDAMemoryHistory/VisualizeCUDAMemoryHistory三件套可以录制并回放显存使用曲线;ModelMemoryUseReportPatch给你实时报告
  • 注意力优化:SAGE 注意力(PathchSageAttentionKJ)、NABLA 稀疏注意力(NABLA_AttentionKJ),主要面向长序列视频生成
  • 工作流整理:2026 年 3 月重写的 Set/Get 节点系统支持跨子图边界取数,还带一批快捷键;WidgetToString能把任意节点的参数值读成字符串,方便显示和传递

更完整的更新记录可以看项目根目录的 README.md,里面也有官方安装说明。

KJNodes 安装教程:3 步装完

安装过程本身很简单,三步:

  1. 把仓库克隆到 ComfyUI 的custom_nodes目录
  2. 安装依赖
  3. 重启 ComfyUI,在节点菜单里搜 KJNodes 相关节点

命令行版:

git clone https://gitcode.com/gh_mirrors/co/ComfyUI-KJNodes ComfyUI/custom_nodes/ComfyUI-KJNodes pip install -r ComfyUI/custom_nodes/ComfyUI-KJNodes/requirements.txt

如果你用的是 Windows 便携版,要改用自带 Python 装依赖:在 portable 目录里执行python_embeded\python.exe -m pip install -r ComfyUI\custom_nodes\ComfyUI-KJNodes\requirements.txt

3 分钟跑通第一个工作流

装完之后,先跑个最小例子确认环境没问题。

用 Get Model Name 读出模型信息

以加载 SDXL 模型为例。把加载节点的输出接到Get Model Name节点,就能拿到工作流里任意节点的 ID 和参数名(比如base_ckpt_name),再喂给 Show Text 显示出来。调试的时候特别好用:一眼看出当前实际生效的是哪个 checkpoint。

上图是 Eff. Loader SDXL 节点(左侧来自另一个插件)加载 SDXL 模型,基础模型、refiner、VAE 等参数一目了然;右侧Get Model Name按 ID(193)读出了 #193 节点的base_ckpt_name取值,Show Text 把结果直接打在画布上。

WidgetToString:把参数值变成字符串

WidgetToString解决更麻烦的场景:你想读的不是节点 ID,而是某个非字符串参数(比如下拉框选项)。填上目标节点的 id 和参数名(widget_name),输出就是一个 STRING,可以接到任意显示节点。

图中WidgetToString(id=2)读出 Load Checkpoint 节点的ckpt_name参数,Show Text 里直接显示 "1_5\photon_v1.safetensors"——核对加载的文件对不对,比反复点开参数框快得多。

Set/Get:长工作流的生命线

工作流一旦超过几十个节点,"线多到打架"就难免。KJNodes 的 Set/Get 系统就是干这个的:数据放进 Set 节点,从 Get 节点取出来,物理连线不用横穿全屏。2026 年 3 月的更新还支持跨子图边界——父图里 Set,子图里 Get。常用快捷键:

  • Ctrl+Shift+S:给选中节点添加 Set
  • Ctrl+Shift+G:在光标处添加 Get
  • Ctrl+Shift+L:临时显示全部虚拟连线
  • 双击 Get 节点:直接跳到对应的 Set 节点

显存不够时这样配:性能调优实战

这是 KJNodes 最能体现价值的部分。参考文章给出的测试环境是 RTX 4090、24GB 显存,几个有出处的数字:

  • 图像批处理:处理 100 张 512×512 图片,速度快 42%,显存占用降 28%
  • 视频生成:生成 30 秒 1080p 视频,推理时间少 35%,显存峰值低 31%
  • 模型编译:首次编译比平时慢 15% 左右,之后的推理速度快 48%

三类优化的大致收益对比:

优化策略显存降低速度提升最适合
模型编译15–25%30–50%大规模批处理
注意力算法20–35%25–40%长序列视频生成
内存管理30–45%10–20%显存有限的环境
批量处理25–40%40–60%数据集预处理

编译:后端选对才算数

TorchCompileModelFluxAdvancedV2支持多种编译后端,选择逻辑很简单:

  • Inductor:NVIDIA RTX 系列用,性能最好
  • NNC:AMD 和 Intel 显卡用,跨平台兼容性好
  • AOT-Eager:调试和开发环境用

注意力算法:按任务挑

  • SAGE 注意力:追求出图质量时用
  • NABLA 稀疏注意力:长序列视频,显存占用明显更低
  • Flash 注意力:实时场景,推理速度最快

先监控,再动手调

不确定显存在哪被吃掉时,先在待测段落前后各放一个StartRecordCUDAMemoryHistoryEndRecordCUDAMemoryHistory,再用VisualizeCUDAMemoryHistory回放曲线。视频类工作流还可以试试WanVideoTeaCacheKJ,它做时间缓存,跳过重复计算。

KJNodes 和原生节点的区别 + 常见坑

一句话总结区别:原生节点是"功能积木",KJNodes 是积木之上的"工程工具"——批量、编译、监控、工作流组织,这些在原生 ComfyUI 里点不出来。

容易踩的坑,提前说:

  • 别把编译当瞬时的:第一次运行要做完整编译,比不编译还慢,后面的运行才快。别拿一次性测试下结论。
  • 编译后端别选错:生产环境用 AOT-Eager、NVIDIA 卡上选 NNC,都是白亏性能。
  • 批量节点不是万能加速ImageBatchMulti是分块处理的,批次越大收益越明显;只处理两张图,原生节点照样快。
  • Set/Get 复制粘贴后注意命名:粘贴 Set+Get 对时 Get 节点会跟着 Set 的改名走(比如MODELMODEL_0),避免重名冲突;想转回普通连线,右键 Set/Get 节点即可。
  • 显存监控节点有开销:录制回放本身占一点资源,测完记得摘掉。

收尾:把要点带走

ComfyUI-KJNodes 解决三类事:大批量图跑得快、推理提速、长工作流可读。建议路径是:先装好,跑通一次模型信息读取的例子,再按你的硬件挑编译或监控节点。等工作流越长,Set/Get 和子图支持会成为你最高频的功能——这也是 KJNodes 和原生节点最大的差异所在。

【免费下载链接】ComfyUI-KJNodesVarious custom nodes for ComfyUI项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-KJNodes

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/22 20:53:37

GetQzonehistory完整指南:三步备份QQ空间十年说说,把青春存成文件

GetQzonehistory完整指南:三步备份QQ空间十年说说,把青春存成文件 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 担心QQ空间里的十年说说哪天突然就打不开了&am…

作者头像 李华
网站建设 2026/8/22 20:49:29

数学教师如何运用多智能体AI系统实现个性化习题生成与精准教学

1. 项目概述:当数学老师遇上AI“出题天团”作为一名在中学一线教了十几年数学的老师,我太清楚“出题”这件事有多磨人了。每个班几十个学生,水平参差不齐,想找一套能精准匹配每个人当前能力的练习题,往往意味着我要翻遍…

作者头像 李华
网站建设 2026/8/22 20:45:33

300元打造DIY扫地机器人:开源材料、组装与编程完整指南

300元打造DIY扫地机器人:开源材料、组装与编程完整指南 【免费下载链接】VacuumRobot DIY Vacuum Robot project 项目地址: https://gitcode.com/gh_mirrors/va/VacuumRobot 开源项目 VacuumRobot 用不到 300 元的零件,帮你从一块 3D 打印底盘开始…

作者头像 李华
网站建设 2026/8/22 20:40:19

taskt:免费开源的 Windows RPA 流程自动化工具

taskt:免费开源的 Windows RPA 流程自动化工具 【免费下载链接】taskt taskt (pronounced tasked and formely sharpRPA) is free and open-source robotic process automation (rpa) built in C# powered by the .NET Framework 项目地址: https://gitcode.com/g…

作者头像 李华
网站建设 2026/8/22 20:39:54

Linux下精准释放GPU显存:从kill命令到进程管理的完整指南

1. 项目概述:从一次“显存杀手”事件说起那天下午,我正在本地调试一个基于PyTorch的视觉大模型。模型不算特别大,但数据集加载和预处理部分写得有些粗糙,导致几个数据加载的子进程在后台疯狂“吃”显存。训练刚开始没多久&#xf…

作者头像 李华