自定义节点 #

自定义节点概述 #

什么是自定义节点? #

自定义节点是社区开发的扩展节点,可以添加新功能、优化工作流、提供特殊效果等。

text
┌─────────────────────────────────────────────────────────────┐
│                    自定义节点优势                            │
├─────────────────────────────────────────────────────────────┤
│                                                             │
│  功能扩展:                                                  │
│  ├── 添加新的处理功能                                       │
│  ├── 支持新的模型格式                                       │
│  └── 提供特殊效果                                           │
│                                                             │
│  效率提升:                                                  │
│  ├── 简化工作流                                             │
│  ├── 自动化操作                                             │
│  └── 批量处理增强                                           │
│                                                             │
│  社区贡献:                                                  │
│  ├── 活跃的开发者社区                                       │
│  ├── 持续更新和改进                                         │
│  └── 丰富的功能选择                                         │
│                                                             │
└─────────────────────────────────────────────────────────────┘

自定义节点类型 #

text
常用自定义节点类型:

图像处理:
├── 图像滤镜和效果
├── 图像变换和调整
└── 图像合成和混合

模型增强:
├── 新模型加载器
├── 模型处理工具
└── 特殊采样方法

工作流工具:
├── 条件和逻辑节点
├── 循环和迭代节点
└── 变量和参数节点

实用工具:
├── 文本处理
├── 数学运算
├── 文件操作
└── 调试工具

ComfyUI-Manager #

Manager 功能 #

text
ComfyUI-Manager 是必备的节点管理工具:

主要功能:
├── 安装自定义节点
├── 更新节点
├── 禁用/启用节点
├── 安装缺失节点
├── 模型下载
└── 工作流分享

安装 Manager:
cd ComfyUI/custom_nodes
git clone https://github.com/ltdrdata/ComfyUI-Manager.git
cd ComfyUI-Manager
pip install -r requirements.txt

使用 Manager #

text
安装节点:
1. 点击 Manager 按钮
2. 选择 "Install Custom Nodes"
3. 搜索节点名称
4. 点击 "Install"
5. 重启 ComfyUI

更新节点:
1. Manager → "Fetch Updates"
2. 或 "Update All"

管理节点:
1. Manager → "Custom Nodes Manager"
2. 查看已安装节点
3. 禁用/启用/删除节点

推荐自定义节点 #

必装节点 #

text
ComfyUI-Impact-Pack:
├── 功能:增强功能包
├── 包含:多种实用节点
├── 特点:工作流增强
└── 安装:Manager 搜索 "Impact Pack"

ComfyUI-Advanced-ControlNet:
├── 功能:高级 ControlNet 控制
├── 包含:更多 ControlNet 选项
├── 特点:精确控制
└── 安装:Manager 搜索 "Advanced ControlNet"

ComfyUI-AnimateDiff:
├── 功能:动画生成
├── 包含:动画相关节点
├── 特点:生成动画效果
└── 安装:Manager 搜索 "AnimateDiff"

ComfyUI-IPAdapter:
├── 功能:IP-Adapter 支持
├── 包含:IP-Adapter 节点
├── 特点:图像风格迁移
└── 安装:Manager 搜索 "IPAdapter"

实用节点 #

text
ComfyUI-Custom-Scripts:
├── 功能:自定义脚本
├── 特点:工作流增强
└── 用途:自动化操作

ComfyUI-Workflow-Components:
├── 功能:工作流组件
├── 特点:模块化设计
└── 用途:复用工作流部分

ComfyUI-Use-Everywhere:
├── 功能:全局连接
├── 特点:简化连接
└── 用途:减少重复连线

ComfyUI-Crystools:
├── 功能:图像处理工具
├── 特点:多种图像操作
└── 用途:图像后处理

ComfyUI-Easy-Use:
├── 功能:简化节点
├── 特点:易用性增强
└── 用途:简化工作流

专业节点 #

text
ComfyUI-InstantID:
├── 功能:InstantID 人脸生成
├── 特点:保持人脸一致性
└── 用途:人像生成

ComfyUI-IC-Light:
├── 功能:光照控制
├── 特点:精确光照调整
└── 用途:光照效果

ComfyUI-LayerDiffusion:
├── 功能:图层扩散
├── 特点:透明背景生成
└── 用途:分层生成

ComfyUI-FaceDetailer:
├── 功能:面部细节增强
├── 特点:自动面部优化
└── 用途:人像优化

节点管理 #

安装方法 #

text
方法 1:通过 Manager(推荐)
├── Manager → Install Custom Nodes
├── 搜索并安装
└── 自动处理依赖

方法 2:Git 克隆
cd ComfyUI/custom_nodes
git clone [节点仓库地址]
pip install -r requirements.txt

方法 3:手动下载
├── 下载节点文件
├── 解压到 custom_nodes 目录
└── 安装依赖

节点配置 #

text
节点配置文件:

位置:ComfyUI/custom_nodes/[节点名]/

常见文件:
├── __init__.py - 节点定义
├── nodes.py - 节点实现
├── requirements.txt - 依赖
└── README.md - 说明文档

禁用节点:
├── 重命名文件夹添加 .disabled 后缀
├── 或在 Manager 中禁用
└── 重启 ComfyUI

依赖管理 #

text
依赖问题处理:

常见依赖问题:
├── 版本冲突
├── 缺少依赖
└── 兼容性问题

解决方法:
├── 查看节点 requirements.txt
├── 手动安装依赖
│   pip install package_name
├── 使用虚拟环境
└── 检查版本兼容性

自定义节点开发 #

开发基础 #

text
节点开发结构:

class MyCustomNode:
    @classmethod
    def INPUT_TYPES(cls):
        return {
            "required": {
                "input_name": ("TYPE", {}),
            },
        }

    RETURN_TYPES = ("TYPE",)
    FUNCTION = "function_name"
    CATEGORY = "category_name"

    def function_name(self, input_name):
        # 处理逻辑
        return (result,)

# 注册节点
NODE_CLASS_MAPPINGS = {
    "My Custom Node": MyCustomNode
}

开发流程 #

text
开发步骤:

1. 创建节点目录
   mkdir ComfyUI/custom_nodes/my_custom_node

2. 创建 __init__.py
   定义节点类和注册

3. 实现节点功能
   编写处理逻辑

4. 测试节点
   重启 ComfyUI 测试

5. 打包发布
   上传到 GitHub

常见问题 #

问题 1:节点不显示 #

text
症状:安装后节点不显示

解决:
├── 重启 ComfyUI
├── 检查节点目录结构
├── 查看控制台错误信息
├── 检查依赖是否安装
└── 确认节点版本兼容性

问题 2:节点报错 #

text
症状:使用节点时报错

解决:
├── 查看错误信息
├── 检查输入参数
├── 确认依赖安装
├── 更新节点版本
└── 查阅节点文档

问题 3:冲突问题 #

text
症状:多个节点冲突

解决:
├── 禁用冲突节点
├── 检查版本兼容性
├── 更新所有节点
└── 使用独立环境

下一步 #

现在你已经了解了自定义节点,接下来学习 API 接口,了解如何通过 API 调用 ComfyUI。

最后更新:2026-04-05