Extensions/SillyDream Prompt Reverse
ComfyUI Extension

SillyDream Prompt Reverse

通过任意 OpenAI 兼容网关把图像反推为详细提示词,并支持对已有文本进行扩写。

By qianchi7·Created 10 days ago·Updated 10 days ago· 0
qianchi7/ComfyUI-SillyDream-PromptReverse
Nodes
On cloudLocal install
Stars0
Updated10 days ago
Readme

ComfyUI-SillyDream-PromptReverse — 图像反推 / 文本扩写

通过任意 OpenAI 兼容的 HTTP API(New-API / One-API / ModelScope 等网关)把 ComfyUI 中的图像反推为详细提示词,或对已有文本进行扩写。

包含两个节点:

  1. 图像反推 (Image Prompt Reverse) — 把图像反推为详细提示词(需选支持读图的视觉模型)
  2. 文本扩写 (Text Expand) — 对输入文本进行扩写,使其更加详细

如果感兴趣也可以试试注册我的官网:https://wish.sillydream.top

安装

方式一:ComfyUI-Manager(推荐)

Manager → Install via Git URL,填入:

https://github.com/qianchi7/ComfyUI-SillyDream-PromptReverse.git

装完点 Manager 里的 Restart(不要只点 Reload)。以后作者更新代码,在 Manager 里点该节点的 Update 按钮即可(本质是 git pull)。

方式二:手动 clone

cd ComfyUI/custom_nodes
git clone https://github.com/qianchi7/ComfyUI-SillyDream-PromptReverse.git
pip install requests Pillow numpy

重启 ComfyUI 后,在节点搜索框里搜 图像反推 / 文本扩写(分类 Image/Prompt)。

示例工作流

装好后顶部菜单 工作流 → 浏览模板 (Browse Templates),选 Image-Prompt-Reverse 即可加载,无需手动拖 json。工作流会随 git pull 一起更新。

example_workflows/ 目录里的 json 也可以直接拖进网页界面。)

节点参数

| 参数 | 说明 | |------|------| | api_url | 你自己的 OpenAI 兼容网关地址,只需填 http://IP:端口,节点会自动补全 /v1(默认预填的是作者本人的演示网关,建议替换成你自己的) | | model_name | 目标模型名称,须与你所用网关中配置的模型名一致(图像反推需选支持读图的视觉模型) | | api_key | 你自己网关对应的 API Key,留空表示不发送 Authorization 头 | | language | 仅图像反推节点:输出中文还是英文提示词 | | system_prompt / user_prompt | 仅图像反推节点:系统提示词与用户指令,需自行填写 | | top_p / temperature / seed / max_tokens | 生成参数,含义与 OpenAI Chat Completions 接口一致 |

附带的小工具

prompt_playground.html 是配套的独立网页调试工具,不依赖 ComfyUI,用浏览器双击打开即可。 可以填网关地址 / Key / 模型名,贴或拖一张图进去直接试反推,也可以不带图当纯文本扩写用; 支持 Ctrl+V 粘贴图片、一键复制结果,设置会记在本机浏览器里。

本地直接打开网页时,如果网关没有放开 CORS 会请求失败,这属于网关配置问题,不是工具本身的问题。

故障排除

❌ 装好了但搜不到节点

  • 必须重启 ComfyUI(不是刷新网页),custom_nodes 只在启动时扫描一次
  • 看终端日志有没有 Traceback / ImportError / ModuleNotFoundError,多半是缺依赖
  • 便携版装依赖要用 python_embeded\python.exe -m pip install requests Pillow numpy

❌ 无法连接到服务器 / Connection error

  • 确认 api_url 能从本机浏览器/curl 正常访问
  • 确认服务器端口未被防火墙拦截

❌ HTTP 4xx / 5xx

  • 401/403:检查 api_key 是否正确、该 Key 是否有权限访问所填模型
  • 404:检查 model_name 是否与网关中配置的名称完全一致
  • 429:请求过于频繁,稍后重试
  • 502/503:上游模型服务或网关本身异常

❌ 未获取到有效结果 / 响应不是 JSON

  • 多为网关地址填错(把请求转到了网页而非 API 接口),错误信息里会附带实际请求的完整 URL,可用浏览器/curl 直接访问该地址核对

协议

MIT License

实现说明

本仓库自 2.0.0 起为完全独立实现,代码由本人从功能需求重新编写,不含任何第三方代码。