概述
自定义节点允许你实现新功能并与更广泛的社区分享。
自定义节点就像任何 Comfy 节点一样:它接收输入,对其进行处理,然后产生输出。 虽然有些自定义节点执行非常复杂的任务,但许多节点只做一件事。下面是一个简单节点的例子,它接收一张图片并进行反色处理。
客户端-服务器模型
Comfy 运行在客户端-服务器模型下。服务器端由 Python 编写,负责所有实际工作:数据处理、模型、图像扩散等。客户端由 Javascript 编写,负责用户界面。
Comfy 也可以以 API 模式使用,在该模式下,工作流由非 Comfy 客户端(如其他 UI 或命令行脚本)发送到服务器。
自定义节点可以分为以下四类:
仅服务器端
大多数自定义节点仅在服务器端运行,通过定义一个 Python 类来指定输入和输出类型,并提供一个可调用的函数来处理输入并生成输出。
仅客户端
少数自定义节点仅对客户端 UI 进行修改,但不添加核心功能。尽管名字如此,它们甚至可能不会向系统添加新节点。
客户端与服务器端独立
自定义节点可以同时提供额外的服务器功能和额外(相关的)UI 功能(例如用于新数据类型的新小部件)。在大多数情况下,客户端和服务器之间的通信可以通过 Comfy 的数据流控制来处理。
客户端与服务器端联动
在少数情况下,UI 功能和服务器需要直接相互通信。
任何需要客户端-服务器通信的节点都无法通过 API 使用。