comfyui-prompt-composer 插件 - 保姆级图文教程
1. 插件简介
插件地址: https://github.com/florestefano1975/comfyui-prompt-composer
这个插件就像一个超级智能的"文字组装工厂"。你可以把它想象成一个专门用来组装提示词的工具箱,里面有各种各样的"零件"和"工具"。就像搭积木一样,你可以把不同的文字块组合在一起,每个文字块还可以调节"重要程度",最后组装成一个完美的提示词来指导AI画画。
这个插件能给我们带来什么效果:
- 📝 文字积木盒:把复杂的提示词分解成小块,每块都可以单独调节重要性
- 🎛️ 重要性调节器:每个文字都有自己的"音量旋钮",可以调节它的影响力
- 📚 预设词库管理员:可以建立自己的词汇库,随时调用常用的描述
- 🔗 文字连接器:可以把多个文字块无限连接,组成复杂的描述
- 🎯 快速开关:每个部分都有开关,可以快速启用或关闭
- 📋 模板系统:可以保存和重用常用的文字组合
就像有一个专业的文案助手,帮你把零散的想法组织成有条理、有重点的完整描述。
2. 如何安装
方法一:使用 ComfyUI Manager(推荐新手)
- 打开 ComfyUI Manager
- 在搜索栏输入 "florestefano1975"
- 找到 "ComfyUI Prompt Composer" 并点击安装
- 重启 ComfyUI
方法二:手动安装
- 打开插件地址:https://github.com/florestefano1975/comfyui-prompt-composer
- 点击绿色的 "Code" 按钮
- 选择 "Download ZIP"
- 解压下载的文件
- 把解压后的文件夹复制到
ComfyUI/custom_nodes/目录下 - 重启 ComfyUI
方法三:Git 命令(适合有经验的用户)
cd ComfyUI/custom_nodes
git clone https://github.com/florestefano1975/comfyui-prompt-composer.git
3. 节点详细解析
3.1 Prompt Composer Custom Lists 节点
这个节点是干嘛的?
这个节点就像一个"智能词典"。你可以把它想象成一个装满了各种预设词汇的魔法盒子。你可以在插件的文件夹里放入自己的词汇文件,这个节点就会自动读取这些文件,让你从下拉菜单中选择想要的词汇,每个词汇还可以调节重要程度。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| text_in_opt | text_in_opt | 字符串 | 可选输入 | 这是"前置文字接口",可以连接其他节点的文字输出 | 可选的文本输入连接 | 连接其他节点的文字输出,会自动拼接在前面 |
| 自定义列表项 | 动态生成 | 选择列表 | 根据文件内容 | 这是"词汇选择器",从你的词汇库中选择想要的词 | 从自定义文件读取的选项列表 | 选择"portrait"、"landscape"等预设词汇 |
| 权重参数 | 动态生成 | 浮点数 | 1.0 | 这是"重要性调节器",数值越大这个词越重要 | 对应选项的权重值 | 设置1.5表示这个词比较重要,0.8表示不太重要 |
| active | active | 布尔值 | True | 这是"总开关",关闭后整个节点都不工作 | 节点激活状态控制 | True启用节点,False暂时关闭节点 |
3.2 Prompt Composer Single Text 节点
这个节点是干嘛的?
这个节点就像一个"单行文字编辑器"。你可以把它想象成一个带有"重要性调节器"的记事本,你可以在里面写任何想要的文字,然后调节这段文字的重要程度,还可以随时开关这段文字的使用。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| text_in_opt | text_in_opt | 字符串 | 可选输入 | 这是"前置文字接口",可以接收其他节点传来的文字 | 可选的文本输入连接 | 连接其他节点,会把文字拼接在一起 |
| text | text | 字符串 | 空 | 这是"文字输入框",你可以在这里写任何想要的描述 | 主要文本内容输入 | 输入"beautiful woman"、"sunset"等描述 |
| weight | weight | 浮点数 | 1.0 | 这是"重要性滑块",控制这段文字的影响力大小 | 文本权重系数 | 1.0是正常,1.5是比较重要,0.5是不太重要 |
| active | active | 布尔值 | False | 这是"启用开关",控制这段文字是否生效 | 文本激活状态 | True启用这段文字,False暂时不用 |
3.3 Prompt Composer Multiple Text 节点
这个节点是干嘛的?
这个节点就像一个"多行文字管理器"。你可以把它想象成一个有10个格子的文字收纳盒,每个格子都可以放入不同的文字,每个格子都有自己的"重要性调节器"。这样你可以同时管理多个不同的描述,非常适合复杂的提示词组合。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| text_in_opt | text_in_opt | 字符串 | 可选输入 | 这是"前置文字接口",接收其他节点的文字输出 | 可选的文本输入连接 | 连接其他节点的文字,会拼接在最前面 |
| text_1 | text_1 | 字符串 | 空 | 这是"第1个文字格子",放入第一段描述 | 第一个文本输入框 | 输入主要描述,如"portrait of a woman" |
| weight_1 | weight_1 | 浮点数 | 1.0 | 这是"第1个重要性调节器",控制第1段文字的影响力 | 第一个文本的权重 | 1.2表示这段文字比较重要 |
| text_2 | text_2 | 字符串 | 空 | 这是"第2个文字格子",放入第二段描述 | 第二个文本输入框 | 输入补充描述,如"beautiful eyes" |
| weight_2 | weight_2 | 浮点数 | 1.0 | 这是"第2个重要性调节器",控制第2段文字的影响力 | 第二个文本的权重 | 0.8表示这段文字不太重要 |
| text_3 | text_3 | 字符串 | 空 | 这是"第3个文字格子",放入第三段描述 | 第三个文本输入框 | 输入风格描述,如"photorealistic" |
| weight_3 | weight_3 | 浮点数 | 1.0 | 这是"第3个重要性调节器",控制第3段文字的影响力 | 第三个文本的权重 | 1.0表示正常重要程度 |
| text_4 | text_4 | 字符串 | 空 | 这是"第4个文字格子",放入第四段描述 | 第四个文本输入框 | 输入环境描述,如"outdoor scene" |
| weight_4 | weight_4 | 浮点数 | 1.0 | 这是"第4个重要性调节器",控制第4段文字的影响力 | 第四个文本的权重 | 根据重要程度调节数值 |
| text_5 | text_5 | 字符串 | 空 | 这是"第5个文字格子",放入第五段描述 | 第五个文本输入框 | 输入光线描述,如"soft lighting" |
| weight_5 | weight_5 | 浮点数 | 1.0 | 这是"第5个重要性调节器",控制第5段文字的影响力 | 第五个文本的权重 | 根据需要调节重要程度 |
| text_6 | text_6 | 字符串 | 空 | 这是"第6个文字格子",放入第六段描述 | 第六个文本输入框 | 输入细节描述,如"detailed skin" |
| weight_6 | weight_6 | 浮点数 | 1.0 | 这是"第6个重要性调节器",控制第6段文字的影响力 | 第六个文本的权重 | 调节这段文字的重要程度 |
| text_7 | text_7 | 字符串 | 空 | 这是"第7个文字格子",放入第七段描述 | 第七个文本输入框 | 输入色彩描述,如"warm colors" |
| weight_7 | weight_7 | 浮点数 | 1.0 | 这是"第7个重要性调节器",控制第7段文字的影响力 | 第七个文本的权重 | 根据重要性设置数值 |
| text_8 | text_8 | 字符串 | 空 | 这是"第8个文字格子",放入第八段描述 | 第八个文本输入框 | 输入构图描述,如"close-up shot" |
| weight_8 | weight_8 | 浮点数 | 1.0 | 这是"第8个重要性调节器",控制第8段文字的影响力 | 第八个文本的权重 | 调节构图描述的重要程度 |
| text_9 | text_9 | 字符串 | 空 | 这是"第9个文字格子",放入第九段描述 | 第九个文本输入框 | 输入质量描述,如"high quality" |
| weight_9 | weight_9 | 浮点数 | 1.0 | 这是"第9个重要性调节器",控制第9段文字的影响力 | 第九个文本的权重 | 设置质量要求的重要程度 |
| text_10 | text_10 | 字符串 | 空 | 这是"第10个文字格子",放入第十段描述 | 第十个文本输入框 | 输入其他描述,如"masterpiece" |
| weight_10 | weight_10 | 浮点数 | 1.0 | 这是"第10个重要性调节器",控制第10段文字的影响力 | 第十个文本的权重 | 调节最后一段文字的重要程度 |
| active | active | 布尔值 | False | 这是"总开关",控制整个节点是否工作 | 节点激活状态 | True启用所有文字,False暂时关闭 |
3.4 Prompt Composer Grouping 节点
这个节点是干嘛的?
这个节点就像一个"文字打包器"。你可以把它想象成一个给文字加上"包装盒"的工具。它会把输入的文字用括号包起来,并给整个"包装盒"设置重要程度。这样可以把一组相关的文字当作一个整体来处理。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| text_in | text_in | 字符串 | 必需输入 | 这是"待打包的文字",需要连接其他节点的输出 | 必需的文本输入 | 连接其他节点的文字输出 |
| weight | weight | 浮点数 | 1.0 | 这是"包装盒重要性调节器",控制整组文字的影响力 | 分组权重系数 | 1.3表示这组文字比较重要 |
| active | active | 布尔值 | False | 这是"打包开关",控制是否进行打包处理 | 分组激活状态 | True启用分组,False直接传递原文字 |
3.5 Prompt Composer Merge 节点
这个节点是干嘛的?
这个节点就像一个"文字胶水"。你可以把它想象成一个专门用来粘合两段文字的工具。它会把两个不同来源的文字用逗号连接起来,组成一段完整的描述。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| text_a | text_a | 字符串 | 必需输入 | 这是"第一段文字",需要连接一个节点的输出 | 第一个文本输入 | 连接包含"beautiful woman"的节点 |
| text_b | text_b | 字符串 | 必需输入 | 这是"第二段文字",需要连接另一个节点的输出 | 第二个文本输入 | 连接包含"sunset background"的节点 |
3.6 Prompt Composer Styler 节点(已废弃)
这个节点是干嘛的?
这个节点就像一个"风格选择器"。虽然已经不推荐使用了,但它可以从预设的风格列表中选择一个艺术风格,并设置这个风格的重要程度。就像从调色板中选择一种颜色风格一样。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| text_in_opt | text_in_opt | 字符串 | 可选输入 | 这是"前置文字接口",可以接收其他节点的文字 | 可选的文本输入连接 | 连接其他节点的文字输出 |
| style | style | 选择列表 | - | 这是"风格选择器",从预设列表中选择艺术风格 | 预设风格选项 | 选择"oil painting"、"watercolor"等风格 |
| style_weight | style_weight | 浮点数 | 1.0 | 这是"风格重要性调节器",控制风格的影响强度 | 风格权重系数 | 1.5表示风格很重要,0.7表示风格较轻 |
| active | active | 布尔值 | False | 这是"风格开关",控制是否应用选择的风格 | 风格激活状态 | True应用风格,False忽略风格 |
3.7 Prompt Composer Effect 节点(已废弃)
这个节点是干嘛的?
这个节点就像一个"特效选择器"。虽然也已经不推荐使用了,但它可以从预设的特效列表中选择一个视觉效果,并设置这个特效的强度。就像给照片添加滤镜效果一样。
参数详解:
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| text_in_opt | text_in_opt | 字符串 | 可选输入 | 这是"前置文字接口",可以接收其他节点的文字 | 可选的文本输入连接 | 连接其他节点的文字输出 |
| effect | effect | 选择列表 | - | 这是"特效选择器",从预设列表中选择视觉特效 | 预设特效选项 | 选择"bokeh"、"lens flare"等特效 |
| effect_weight | effect_weight | 浮点数 | 1.0 | 这是"特效强度调节器",控制特效的影响程度 | 特效权重系数 | 1.2表示特效较强,0.8表示特效较弱 |
| active | active | 布尔值 | False | 这是"特效开关",控制是否应用选择的特效 | 特效激活状态 | True应用特效,False忽略特效 |
4. 使用技巧和建议
4.1 权重设置技巧
- 1.0:正常重要程度,不会添加括号
- 1.1-1.5:比较重要,会用括号强调
- 0.5-0.9:不太重要,会降低影响力
- 1.6-1.95:非常重要,会强烈强调
4.2 节点连接策略
- 串联连接:用text_in_opt接口把多个节点连成链条
- 并联合并:用Merge节点把不同分支的文字合并
- 分组管理:用Grouping节点把相关文字打包处理
4.3 自定义列表管理
- 在
custom-lists文件夹中创建.txt文件 - 每行写一个词汇或短语
- 重启ComfyUI后会自动生成对应的节点
- 可以创建子文件夹来分类管理
4.4 工作流程建议
- 主题描述:用Single Text或Multiple Text输入核心内容
- 风格选择:用Custom Lists选择艺术风格
- 细节补充:用Multiple Text添加各种细节
- 分组整理:用Grouping节点组织相关内容
- 最终合并:用Merge节点组合所有部分
4.5 开关使用技巧
- 使用active开关快速测试不同组合
- 关闭不需要的部分而不删除内容
- 方便进行A/B测试对比效果
5. 常见问题解答
Q1:为什么我的自定义列表没有显示?
A: 可能的原因和解决方案:
- 检查文件是否放在
custom-lists文件夹中 - 确认文件扩展名是
.txt - 重启ComfyUI让插件重新读取文件
- 检查文件内容格式是否正确(每行一个词汇)
Q2:权重设置多少合适?
A: 权重设置建议:
- 主要内容:1.0-1.3
- 重要细节:1.1-1.5
- 一般描述:0.8-1.2
- 背景元素:0.5-0.9
- 避免设置过高(超过1.8)可能产生过度强调
Q3:节点连接顺序有什么影响?
A: 连接顺序说明:
- 文字会按连接顺序拼接
- 建议把主要内容放在前面
- 细节和修饰放在后面
- 使用Grouping节点可以调整局部顺序
Q4:Multiple Text节点的10个输入框都要用吗?
A: 使用建议:
- 不需要全部使用,空白的会被忽略
- 根据需要使用相应数量的输入框
- 可以跳过某些编号,比如只用1、3、5
- 权重设为0的文字也会被忽略
Q5:废弃的Styler和Effect节点还能用吗?
A: 关于废弃节点:
- 仍然可以使用,但不会更新
- 建议用Custom Lists节点替代
- 功能更灵活,可以自定义内容
- 未来版本可能会移除
6. 实际应用场景
6.1 人物肖像生成
使用Multiple Text分别描述:主体、表情、服装、背景、光线、质量等不同方面。
6.2 风景场景创作
用不同节点分别处理:地点、天气、时间、色彩、构图、风格等元素。
6.3 产品展示图片
分别设置:产品描述、材质、光线、背景、角度、质量要求等参数。
6.4 艺术风格实验
使用Custom Lists快速切换不同艺术风格,对比效果差异。
6.5 复杂场景构建
用多个节点分层描述复杂场景的各个组成部分。
7. 高级使用技巧
7.1 模板化工作流程
- 为常用的提示词组合创建标准模板
- 保存工作流程文件便于重复使用
- 建立个人的词汇库和风格库
7.2 权重优化策略
- 通过对比测试找到最佳权重组合
- 记录不同权重设置的效果差异
- 为不同类型的图片建立权重模板
7.3 分层管理方法
- 按重要性分层:核心内容、重要细节、一般描述
- 按类型分组:人物、环境、风格、质量
- 使用Grouping节点创建逻辑分组
7.4 动态调节技巧
- 使用active开关进行快速A/B测试
- 通过权重微调优化生成效果
- 结合不同节点创建复杂的提示词结构
总结: comfyui-prompt-composer 插件是一个功能强大的提示词管理工具集,通过模块化的设计让复杂的提示词组织变得简单直观。掌握各个节点的特点和使用方法,可以大大提高提示词编写的效率和质量。
注意事项: 自定义列表的修改需要重启ComfyUI才能生效。建议在修改前备份重要的自定义文件。Styler和Effect节点虽然标记为废弃,但仍可正常使用。
推荐搭配: 这个插件与其他文本处理插件配合使用效果更佳,可以创建非常复杂和精确的提示词系统。