ComfyUI Extension
ComfyUI-NudeJS-Image2Prompt
ComfyUI custom node converting images to text prompts via external API, with automatic image preprocessing, base64 encoding, intelligent retry logic, and dual output…
NudeJS-dev/ComfyUI-NudeJS-Image2Prompt
Nodes2
On cloudLocal install
CategoryNudeJS
Stars1
Updated8 months ago
Readme
ComfyUI NudeJS Image2Prompt 节点
这是一个 ComfyUI 自定义节点,可以将图片转换为文本提示。
功能特性
- 图片预处理:自动调整图片尺寸(最大宽度 1000px,最大高度 800px)
- Base64 编码:将图片转换为 base64 格式
- API 调用:通过 POST 请求调用外部 API
- 智能重试:支持配置重试次数,应对网络波动
- 双模式输出:支持中性文本和提示词文本两种输出模式
安装方法
方法一:复制到 ComfyUI 目录
-
将整个
ComfyUI-NudeJS-Image2Prompt文件夹复制到 ComfyUI 的custom_nodes目录中:ComfyUI/custom_nodes/ComfyUI-NudeJS-Image2Prompt/ -
重启 ComfyUI
方法二:符号链接
在 Linux/macOS 系统中:
ln -s /path/to/ComfyUI-NudeJS-Image2Prompt /path/to/ComfyUI/custom_nodes/
使用方法
在 ComfyUI 工作流中添加 "NudeJS/Image2Prompt" 节点:
输入参数
- images (必需): 输入图片
- APIUrl (必需): API 接口地址,例如:
https://api.example.com - APIKey (必需): API 鉴权密钥
- RetryCount (可选): 请求失败后的重试次数,默认值:3
- Neutral (可选): 是否使用中性文本模式,默认值:true
输出
- text: 转换后的文本提示
工作流程示例
- 添加图片加载节点(如 Load Image、Checkpoint Loader 等)
- 添加 "Image2Prompt" 节点
- 将图片连接到 Image2Prompt 节点的 "images" 输入
- 配置 APIUrl 和 APIKey
- 运行工作流
技术实现
- 图片处理:使用 Pillow 进行图片缩放和格式转换
- 网络请求:使用 requests 库,支持重试和超时
- Base64 编码:使用标准库 base64 进行编码
错误处理
- 网络请求失败时会自动重试(最多 RetryCount 次)
- 失败时会在控制台输出错误信息
- 失败时返回
None
依赖
- ComfyUI
- Python 3.7+
- requests
- Pillow (PIL)
许可证
MIT License
贡献
欢迎提交 Issue 和 Pull Request!