ComfyUI中如何自定义设置

AI技术
小华
2026-01-11

ComfyUI自定义设置全指南
一 基础与界面设置

  • 语言与外观
  • 在设置中进入:设置 > Comfy > 区域设置 > 中文,可切换为中文界面。
  • 新版界面支持亮/暗主题切换(侧边栏的太阳/月亮图标),并可在设置里进行自定义快捷键与多项交互优化。建议更新到较新版本以获得完整功能。
  • 工作区与节点操作
  • 支持双击修改节点名称Ctrl+G 编组、Ctrl 框选、Alt+C 展开/收起节点。
  • 双击空白处呼出节点搜索,支持模糊搜索与按类型筛选;节点端口支持自动连接,按住 Shift 可转移或快速跳转到匹配节点。
  • 画布与视图
  • 空白处滚轮缩放;拖拽空白处平移;右下角快捷按钮可放大/缩小/重置/切换选择模式/显示或隐藏连接线

二 模型与路径自定义

  • 使用 extra_model_paths.yaml 统一管理模型目录(便于多 UI 共享或外置盘集中管理)
  • Desktop 版:通过菜单 Help > Open extra_model_paths.yaml 打开(Windows 默认在:C:Users你的用户名AppDataRoamingComfyUI)。
  • Portable 版:在安装目录将 extra_model_paths.yaml.example 重命名为 extra_model_paths.yaml 后编辑。
  • 基本结构示例:
comfyui_desktop:
is_default: "true"
base_path: D:\ComfyUI
checkpoints: models/checkpoints
loras: models/loras
vae: models/vae
controlnet: models/controlnet
clip: models/clip
embeddings: models/embeddings
a1111:
base_path: D:\stable-diffusion-webui
checkpoints: models/Stable-diffusion
vae: models/VAE
loras: |
models/Lora
models/LyCORIS
  • 说明:键名(如 checkpoints/loras/vae)不要改动;is_default 只能有一个为 "true";Windows 路径可用反斜杠,Linux/macOS 用正斜杠;Portable 版中 loras 支持多路径用 | 换行;base_path 变更后,各模型路径为 base_path 的相对路径。
  • 验证与排错
  • 修改后需重启 ComfyUI;若未加载模型,查看启动日志定位错误(常见为路径不存在或分隔符错误)。

三 主题与前端资源自定义

  • 切换官方前端主题版本
  • 通过命令行参数指定前端包与版本:
python main.py --front-end-version comfyanonymous/ComfyUI@latest

版本字符串格式为 [repoOwner]/[repoName]@[version],如指定具体版本或使用 latest

  • 使用本地自定义主题
  • 指定本地前端资源目录覆盖默认资源:
python main.py --front-end-root /path/to/your/custom/frontend
  • 适合深度 UI 定制与主题开发;前端资源加载由 FrontendManager 管理,便于版本切换与本地开发调试。

四 进阶自定义 样式模型与自定义节点

  • 样式模型 Style Model(影响生成内容的视觉风格)
  • 存放目录:models/style_models/;使用节点 LoadStyleModel 加载、ApplyStyleModel 应用到条件向量;通过 strength(0–1) 控制风格强度。示例:
style_model = LoadStyleModel.load_style_model("your_style.safetensors")
conditioned = ApplyStyleModel.apply_stylemodel(cond, style_model, clip_vision_out, strength=0.6, strength_type=...)
  • 适合快速套用特定画风/笔触/色彩倾向。
  • 自定义节点开发(扩展功能与界面)
  • 最小示例(将输入整数翻倍):
class TimesTwo:
@classmethod
def INPUT_TYPES(cls):
return {"required": {"input1": ("INT", {})}}
RETURN_TYPES = ("INT",)
RETURN_NAMES = ("RETURN VALUE",)
FUNCTION = "funcTimesTwo"
CATEGORY = "CivitaiTutorials/BasicNodes"
def funcTimesTwo(self, input1):
return (input1 * 2,)
NODE_CLASS_MAPPINGS = {"btTimesTwo": TimesTwo}
NODE_DISPLAY_NAMES_MAPPINGS = {"btTimesTwo": "Basic Tutorial - Times Two"}
__all__ = ['NODE_CLASS_MAPPINGS', 'NODE_DISPLAY_NAMES_MAPPINGS']
  • 关键点:定义 INPUT_TYPES(含 required/optional 与参数约束)、FUNCTIONRETURN_TYPES/RETURN_NAMESCATEGORY,并在 __init__.py 中注册映射;复杂节点可参考社区插件实践完善输入控件、类型与错误处理。
亿速云提供售前/售后服务

售前业务咨询

售后技术保障

400-100-2938

7*24小时售后电话

官方微信小程序