我给 ComfyUI 做了一个 WebUI 式提示词编辑节点

11 阅读5分钟

这段时间一直在折腾 ComfyUI 工作流,越用越喜欢它的自由度,但也有一个地方挺别扭:写提示词。

ComfyUI 的节点式工作流很强,模型、LoRA、ControlNet、放大、修脸、修手这些都能接得很细。但真到写 prompt 的时候,很多时候还是一个普通文本框。短 prompt 还好,一旦开始堆 tag、改权重、换 LoRA、整理反向词,就会有点像在一长串英文逗号里找针。

如果之前用过 A1111 / Forge,应该会有这种感觉:WebUI 的工作流没 ComfyUI 灵活,但它的提示词编辑体验确实顺手。Tag 补全、分类、收藏、样式、负面词、LoRA 插入,这些小功能单看都不大,但每天生成图的时候很省脑子。

所以我做了一个 ComfyUI 自定义节点:

ComfyUI WebUI Prompt Bridge

项目地址:

github.com/dianfangsih…

Comfy Registry 节点 ID:

comfyui-webui-prompt-bridge

它主要解决什么

一句话说,就是把 WebUI 那种比较顺手的提示词操作方式搬到 ComfyUI 里。

它不是单纯的大文本框,而是一个放在 ComfyUI 节点里的提示词面板。你可以在里面写中文、自动翻译成英文 tag,也可以把提示词拆成一个个标签块来编辑、删除、禁用、加权、拖拽排序。

目前主要做了这些东西:

  • WebUI 式的 Prompt / Negative Prompt 编辑
  • 中文输入和中英翻译
  • Tag 自动补全,补全项可以显示中文解释
  • 常用提示词收藏、历史记录、样式读取
  • 提示词市场,可以导入公开词库和本地词库
  • 接入 A1111 / Forge 的 Prompt All in One、TagComplete、styles.csv
  • LoRA 卡片库,读取预览图、metadata、触发词、推荐权重
  • 识别 <lora:name:weight>,并真正把 LoRA 接进 ComfyUI 的 model / clip 链路
  • LoRA 找不到、或者节点 model 输出没接出去时,会提示并阻止白跑
  • 支持 Anima/Qwen 分体模型和普通 checkpoint 的切换工作流

我最在意的一个坑:LoRA 不是写进 prompt 就生效

很多人刚从 WebUI 转到 ComfyUI 时,会自然地把 LoRA 写成:

<lora:xxx:0.8>

在 WebUI 里这样写通常就能触发 LoRA 加载。但在 ComfyUI 里,如果只是把这段文本塞进 prompt,它不一定真的进了模型链路。

这个问题挺容易误导人:界面上看起来写了 LoRA,生成结果没效果时又很难判断到底是权重不对、模型不搭,还是压根没加载。

所以这个节点会做两件事:

  1. 从 prompt 里解析 LoRA 标签,去本地 LoRA 目录匹配文件。
  2. 找到后把 LoRA 应用到 ComfyUI 的 model / clip 对象上,再把 LoRA 标签从最终文本里移掉。

如果提示词里写了 LoRA,但节点的 model 输出没有接到采样器实际使用的模型链路,它也会提醒。这样至少能避免“以为生效了,其实没生效”的情况。

对中文用户会友好一点

我自己用的时候很明显地感觉到,很多中文用户不是不会写 prompt,而是不想每次都在中英文 tag 之间来回切。

所以节点里做了几层兜底:

  • 没有 WebUI 也能用内置基础词库
  • 有本地 WebUI 的话,可以一键接入已有词库
  • 需要更完整的 tag 数据,可以从提示词市场导入
  • 也可以配置 OpenAI 兼容接口,用 SiliconFlow、DeepSeek 这类服务做 AI 翻译

目标不是把 prompt 完全交给 AI,而是让输入过程轻一点。比如你输入“一个穿蓝色连衣裙的女孩站在海边”,它能帮你转成更适合模型理解的英文 tag,然后你再手动补细节。

安装方式

如果你用 ComfyUI-Manager,可以直接搜:

ComfyUI WebUI Prompt Bridge

或者搜节点 ID:

comfyui-webui-prompt-bridge

也可以用 Git URL 安装:

https://github.com/dianfangsihuo/ComfyUI-WebUI-Prompt-Bridge.git

安装后重启 ComfyUI,在节点菜单里添加:

conditioning/webui -> WebUI Prompt Bridge

仓库里带了几个工作流

为了避免只给一个节点但不知道怎么接,仓库里放了几个示例工作流:

workflows/tutorial-minimal-xl-webui-prompt-bridge.json
workflows/tutorial-minimal-anima-webui-prompt-bridge.json
workflows/anima-webui-prompt-bridge.json

第一次试的话,建议先用 minimal XL 工作流。它更容易看清楚节点该怎么接,不会被完整工作流里的修脸、修手、姿势控制、高清放大这些分支干扰。

完整 Anima 工作流更像是我自己日常用的一套整理版,里面包括模型切换、LoRA、HiRes、Face Detailer、Hand Detailer、参考图和姿势控制等分支。

适合谁用

我觉得它比较适合这几类人:

  • 从 A1111 / Forge 转到 ComfyUI,但还怀念 WebUI 提示词体验
  • 经常写很多 Danbooru tag
  • 经常用 LoRA,希望能看到预览图、触发词和推荐权重
  • 用中文构思画面,但最终还是想生成英文 prompt
  • 工作流已经很复杂,不想每次为了改 prompt 在节点之间来回找

如果你只是偶尔写一两句 prompt,可能普通文本框就够了。这个节点更偏向“每天都在调图、整理 LoRA、复用 tag”的用户。

最后

项目还在持续改。最近几个版本主要修了 LoRA 实际生效检测、提示词市场、AI 翻译、中文补全解释,以及刷新后字段错位之类的问题。

如果你也在 ComfyUI 里被 prompt 编辑折磨过,可以试一下。反馈、issue、建议都欢迎。

GitHub:

github.com/dianfangsih…

Comfy Registry:

comfyui-webui-prompt-bridge