unwdef-nodes-comfyui 插件完全保姆级教程
1. 插件简介
插件地址: https://github.com/unwdef/unwdef-nodes-comfyui
这个插件就像是给ComfyUI添加了一个"智能抽签器"和"文本魔法师"。插件的主要功能是"随机加载LoRA模型",让你可以像摇骰子一样随机选择不同的艺术风格效果,还能自动调整每个效果的强度。
简单来说,这个插件能帮你:
- 自动随机选择多个LoRA模型(就像从一堆滤镜中随机挑选几个)
- 自动调整每个LoRA的强度(就像调节每个滤镜的透明度)
- 输出触发词(告诉你用什么关键词能更好地激发这些效果)
- 处理多行文本并替换其中的变量(就像填空题一样)
2. 如何安装
方法一:通过ComfyUI管理器安装(推荐)
- 打开ComfyUI
- 点击右侧的"Manager"按钮
- 在搜索框中输入"unwdef"或"unwdef-nodes"
- 找到插件后点击安装
- 重启ComfyUI
方法二:手动安装
- 打开电脑的命令行工具(Windows按Win+R,输入cmd)
- 切换到ComfyUI安装目录下的custom_nodes文件夹
- 输入以下命令:
git clone https://github.com/unwdef/unwdef-nodes-comfyui.git
- 重启ComfyUI
3. 节点详细解析
3.1 Randomize LoRAs 节点 - 随机LoRA选择器
这个节点就像是一个智能的"艺术风格抽签机"。你可以预先设置好多个LoRA模型(就像准备好多种滤镜),然后让它随机选择几个来应用到你的图片上,每个还会随机调整强度。
3.1.1 基础参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 种子值 | seed | 整数 | 任意数字 | 就像抽签的"手气"控制器,同样的数字会抽到同样的结果 | 随机数生成器的种子,确保结果可重现 | 输入123,每次都会抽到同样的LoRA组合 |
| 最大随机数量 | max_random | 1-10 | 3-5 | 控制最多能抽几个LoRA,就像限制最多能选几个滤镜 | 限制随机选择的LoRA数量上限 | 设置为3,即使你准备了10个LoRA,也最多只会选3个 |
3.1.2 LoRA选择参数(重复10组)
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| LoRA文件1 | lora_1 | 文件路径 | 选择你的LoRA文件 | 选择第一个候选的LoRA文件,就像选择第一个备选滤镜 | 指定要随机选择的LoRA模型文件路径 | 选择"anime_style.safetensors" |
| 最小强度1 | min_str_1 | 0.0-1.0 | 0.2-0.5 | 这个LoRA最弱能有多弱的效果,就像滤镜最低透明度 | 该LoRA的最小应用强度值 | 设置0.3,表示这个LoRA最弱也有30%的效果 |
| 最大强度1 | max_str_1 | 0.0-1.0 | 0.8-1.0 | 这个LoRA最强能有多强的效果,就像滤镜最高透明度 | 该LoRA的最大应用强度值 | 设置0.9,表示这个LoRA最强有90%的效果 |
| 触发词1 | trigger_words_1 | 文本 | 对应LoRA的关键词 | 激活这个LoRA效果的魔法词语,就像念咒语 | 用于激活特定LoRA效果的提示词 | 输入"masterpiece, anime style"来激活动漫风格 |
| LoRA文件2 | lora_2 | 文件路径 | 选择你的LoRA文件 | 选择第二个候选的LoRA文件,就像选择第二个备选滤镜 | 指定要随机选择的第二个LoRA模型文件路径 | 选择"portrait_enhance.safetensors" |
| 最小强度2 | min_str_2 | 0.0-1.0 | 0.2-0.5 | 第二个LoRA最弱能有多弱的效果 | 第二个LoRA的最小应用强度值 | 设置0.2,表示这个LoRA最弱有20%的效果 |
| 最大强度2 | max_str_2 | 0.0-1.0 | 0.8-1.0 | 第二个LoRA最强能有多强的效果 | 第二个LoRA的最大应用强度值 | 设置0.8,表示这个LoRA最强有80%的效果 |
| 触发词2 | trigger_words_2 | 文本 | 对应LoRA的关键词 | 激活第二个LoRA效果的魔法词语 | 用于激活第二个LoRA效果的提示词 | 输入"detailed face, sharp eyes"来增强人像细节 |
注:以上参数会重复到lora_10,共10组LoRA选择参数
3.1.3 输出接口
| 输出名称 | 输出类型 | 通俗解释 | 专业解释 | 连接用途 |
|---|---|---|---|---|
| 模型输出 | MODEL | 加工后的AI模型,就像调好味道的调料包 | 应用了随机LoRA的模型对象 | 连接到采样器(KSampler)的model输入 |
| 编码器输出 | CLIP | 加工后的文本理解器,就像升级版的翻译官 | 应用了随机LoRA的CLIP模型 | 连接到文本编码器的clip输入 |
| 选中的LoRA | STRING | 告诉你这次选了哪些LoRA和强度,就像抽签结果单 | 文本形式的LoRA选择结果报告 | 连接到文本显示节点查看结果 |
| 触发词输出 | STRING | 这次选中的LoRA对应的关键词,用逗号分开 | 格式化后的触发词文本,便于添加到提示词中 | 连接到提示词拼接节点 |
3.2 Randomize LoRAs (Stack) 节点 - 堆叠版随机LoRA选择器
这个节点和上面的基本一样,但是它能和其他支持"堆叠"功能的LoRA节点配合使用,就像可以和别的积木完美拼接的特殊积木。
3.2.1 基础参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 种子值 | seed | 整数 | 任意数字 | 就像抽签的"手气"控制器,同样的数字会抽到同样的结果 | 随机数生成器的种子,确保结果可重现 | 输入456,每次都会抽到同样的LoRA组合 |
| 最大随机数量 | max_random | 1-10 | 3-5 | 控制最多能抽几个LoRA,就像限制最多能选几个滤镜 | 限制随机选择的LoRA数量上限 | 设置为4,即使你准备了10个LoRA,也最多只会选4个 |
3.2.2 LoRA选择参数(重复10组)
参数表格与3.1.2完全相同,这里不重复列出
3.2.3 输出接口
| 输出名称 | 输出类型 | 通俗解释 | 专业解释 | 连接用途 |
|---|---|---|---|---|
| 模型输出 | MODEL | 加工后的AI模型,专为堆叠设计 | 应用了随机LoRA的模型对象,支持堆叠连接 | 连接到支持堆叠的其他LoRA节点 |
| 编码器输出 | CLIP | 加工后的文本理解器,专为堆叠设计 | 应用了随机LoRA的CLIP模型,支持堆叠连接 | 连接到支持堆叠的其他节点 |
| 选中的LoRA | STRING | 告诉你这次选了哪些LoRA和强度,就像抽签结果单 | 文本形式的LoRA选择结果报告 | 连接到文本显示节点查看结果 |
| 触发词输出 | STRING | 这次选中的LoRA对应的关键词,用逗号分开 | 格式化后的触发词文本,便于添加到提示词中 | 连接到提示词拼接节点 |
3.3 Multiline Text (Random Line) 节点 - 随机行文本选择器
这个节点就像是一个"随机台词选择器",你可以输入很多行文字,它会随机选择其中一行或几行输出。
3.3.1 基础参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 种子值 | seed | 整数 | 任意数字 | 控制随机选择的"手气",同样数字选同样的行 | 随机数生成器的种子值 | 输入789,每次都会选到同样的文本行 |
| 多行文本 | text | 多行文本 | 你要选择的所有文本 | 输入所有候选的文字内容,一行一个选项 | 包含所有候选文本的多行字符串 | 输入"美丽的风景\n可爱的小狗\n温暖的阳光" |
| 输出行数 | num_outputs | 1-10 | 1-3 | 决定要输出几行文字,就像要几个答案 | 指定要输出的文本行数量 | 设置为2,会随机选择2行文本输出 |
3.3.2 输出接口
| 输出名称 | 输出类型 | 通俗解释 | 专业解释 | 连接用途 |
|---|---|---|---|---|
| 输出1 | STRING | 第一行选中的文字 | 随机选择的第一行文本内容 | 连接到其他需要文本的节点 |
| 输出2 | STRING | 第二行选中的文字(如果设置了多行输出) | 随机选择的第二行文本内容 | 连接到其他需要文本的节点 |
| 输出3 | STRING | 第三行选中的文字(如果设置了多行输出) | 随机选择的第三行文本内容 | 连接到其他需要文本的节点 |
注:输出数量根据num_outputs参数决定
3.4 Multiline Text (Variable Replace) 节点 - 文本变量替换器
这个节点就像是一个"智能填空题",你可以在文本中写上占位符(比如!var_1),然后通过输入端口给这些占位符填入真实的内容。
3.4.1 基础参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 种子值 | seed | 整数 | 任意数字 | 控制随机选择的"手气",同样数字选同样的行 | 随机数生成器的种子值 | 输入111,每次都会选到同样的文本行 |
| 多行文本 | text | 多行文本 | 包含变量的文本模板 | 输入带有占位符的文字模板,用!var_1这样的格式 | 包含变量占位符的多行文本模板 | 输入"今天天气!var_1,心情很!var_2" |
| 输出行数 | num_outputs | 1-10 | 1-3 | 决定要输出几行处理后的文字 | 指定要输出的文本行数量 | 设置为1,输出一行替换后的文本 |
3.4.2 变量输入接口
| 输入名称 | 输入类型 | 通俗解释 | 专业解释 | 连接用途 |
|---|---|---|---|---|
| var_1 | STRING | 第一个变量的内容,用来替换文本中的!var_1 | 用于替换!var_1占位符的文本内容 | 连接其他文本输出节点 |
| var_2 | STRING | 第二个变量的内容,用来替换文本中的!var_2 | 用于替换!var_2占位符的文本内容 | 连接其他文本输出节点 |
| var_3 | STRING | 第三个变量的内容,用来替换文本中的!var_3 | 用于替换!var_3占位符的文本内容 | 连接其他文本输出节点 |
| var_4 | STRING | 第四个变量的内容,用来替换文本中的!var_4 | 用于替换!var_4占位符的文本内容 | 连接其他文本输出节点 |
| var_5 | STRING | 第五个变量的内容,用来替换文本中的!var_5 | 用于替换!var_5占位符的文本内容 | 连接其他文本输出节点 |
3.4.3 输出接口
| 输出名称 | 输出类型 | 通俗解释 | 专业解释 | 连接用途 |
|---|---|---|---|---|
| 输出1 | STRING | 第一行替换后的完整文字 | 变量替换后的第一行文本内容 | 连接到其他需要文本的节点 |
| 输出2 | STRING | 第二行替换后的完整文字 | 变量替换后的第二行文本内容 | 连接到其他需要文本的节点 |
| 输出3 | STRING | 第三行替换后的完整文字 | 变量替换后的第三行文本内容 | 连接到其他需要文本的节点 |
注:输出数量根据num_outputs参数决定
4. 使用技巧和建议
4.1 Randomize LoRAs 使用技巧
-
种子值管理:如果你找到了一个特别好的LoRA组合,记住种子值,下次用同样的种子值就能重现相同的效果。
-
强度设置建议:
- 人像类LoRA:最小强度0.2-0.4,最大强度0.6-0.8
- 风格类LoRA:最小强度0.3-0.5,最大强度0.7-0.9
- 细节增强类LoRA:最小强度0.1-0.3,最大强度0.5-0.7
-
LoRA选择策略:不要全部选择同一类型的LoRA,最好混合不同类型(比如2个风格类+1个人像类+1个细节类)。
-
触发词使用:把输出的触发词复制到你的正面提示词中,能让LoRA效果更明显。
4.2 文本节点使用技巧
-
随机文本节点:可以用来随机选择提示词,让每次生成的图片都有不同的描述。
-
变量替换节点:
- 创建模板时,用简单易懂的变量名,比如!color、!style、!mood
- 可以嵌套使用,先用随机文本选择颜色,再用变量替换填入模板
-
组合使用:将随机LoRA节点的触发词输出连接到变量替换节点,创建动态的提示词模板。
5. 常见问题解答
Q1: 为什么我的LoRA没有被选中?
A: 检查以下几点:
- 确保LoRA文件路径正确
- 确保max_random参数不是0
- 尝试更换种子值
Q2: 输出的触发词太多了怎么办?
A: 可以:
- 减少max_random数量
- 只在重要的LoRA上设置触发词
- 手动筛选重要的触发词使用
Q3: 强度设置多少合适?
A: 建议:
- 新手:最小0.2,最大0.8
- 进阶:根据LoRA类型调整
- 避免最大强度超过1.0
Q4: Stack版本和普通版本有什么区别?
A: Stack版本可以和Efficiency Nodes等支持堆叠的节点配合使用,普通版本用于基础场景。
Q5: 变量替换节点中的!var_x不起作用?
A: 检查:
- 确保变量名拼写正确(!var_1不是!var1)
- 确保对应的输入端口有连接
- 确保输入的内容不是空的
6. 高级应用示例
6.1 创建风格随机器工作流
- 使用Randomize LoRAs节点选择随机风格
- 将触发词输出连接到Multiline Text (Variable Replace)节点
- 在模板中写入"!var_1, high quality, detailed"
- 将var_1输入连接到LoRA的触发词输出
- 最终输出连接到正面提示词编码器
6.2 创建动态描述生成器
- 使用多个Multiline Text (Random Line)节点分别选择:
- 颜色描述
- 风格描述
- 情绪描述
- 将这些输出连接到Variable Replace节点的不同变量输入
- 在模板中写入"!var_1 !var_2 artwork with !var_3 mood"
- 实现完全随机化的描述生成
这个插件特别适合那些喜欢实验不同风格组合的朋友,让你的AI绘图过程更加有趣和充满惊喜!