自定义节点 #
自定义节点概述 #
什么是自定义节点? #
自定义节点是社区开发的扩展节点,可以添加新功能、优化工作流、提供特殊效果等。
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