ComfyUI_node_Lilly 插件完整使用教程
1. 插件简介
ComfyUI_node_Lilly(原地址:https://github.com/lilly1987/ComfyUI_node_Lilly)是一个专门为ComfyUI设计的智能随机文本生成器插件。这个插件的核心功能是通过通配符(wildcards)让你的提示词变得更加多样化和随机化。
简单来说,就像你在玩抽签游戏一样,这个插件能够从你预设的多个选项中随机选择一个或多个,让每次生成的图片都有不同的效果。比如你想让AI画一个人物,有时候穿红衣服,有时候穿蓝衣服,有时候戴帽子,有时候不戴,这个插件就能帮你实现这种随机变化。
主要用途:
- 让提示词更加多样化,避免每次都生成相同的图片
- 节省手动修改提示词的时间
- 创建更加丰富和有趣的AI艺术作品
- 支持从文件中读取随机选项
2. 如何安装
方法一:使用Git克隆(推荐)
- 打开ComfyUI文件夹
- 找到
custom_nodes文件夹 - 在这个文件夹里右键打开命令行窗口
- 输入以下命令:
git clone https://github.com/lilly1987/ComfyUI_node_Lilly.git
方法二:手动下载
- 访问 https://github.com/lilly1987/ComfyUI_node_Lilly/archive/refs/heads/main.zip
- 下载压缩包
- 解压到ComfyUI的
custom_nodes文件夹中 - 重启ComfyUI
3. 节点逐一解析
3.1 CLIPTextEncodeWildcards 节点
这个节点就像一个智能文本处理器,它能够把你写的带有特殊符号的提示词转换成真正的文字描述。这个节点可以在提示词中插入任意的随机输入。
3.2 CLIPTextEncodeWildcards 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 文本输入 | text | 字符串 | 包含通配符的提示词 | 这里写你的提示词,可以包含各种随机选择的符号 | 支持wildcard语法的文本提示词输入 | 输入:{red|blue|green} dress,会随机选择红色、蓝色或绿色裙子 |
| CLIP模型 | clip | CLIP对象 | 从CLIP加载器连接 | 这是用来理解文字含义的"翻译器" | CLIP模型用于文本编码 | 从"Load CLIP"节点连接过来 |
| 种子值 | seed | 整数 | 任意数字 | 控制随机性的数字,相同种子产生相同结果 | 控制随机数生成器的种子值 | 设置为123,每次运行都会得到相同的随机结果 |
3.3 CLIPTextEncodeWildcards2 节点
这是CLIPTextEncodeWildcards的升级版本,功能更强大。同样提供通配符功能,但增加了更多的控制选项。
3.4 CLIPTextEncodeWildcards2 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 文本输入 | text | 字符串 | 包含通配符的提示词 | 这里写你的提示词,可以包含各种随机选择的符号 | 支持wildcard语法的文本提示词输入 | 输入:{cat|dog|bird} in the {garden|house|park} |
| CLIP模型 | clip | CLIP对象 | 从CLIP加载器连接 | 这是用来理解文字含义的"翻译器" | CLIP模型用于文本编码 | 从"Load CLIP"节点连接过来 |
| 种子值 | seed | 整数 | 任意数字 | 控制随机性的数字,相同种子产生相同结果 | 控制随机数生成器的种子值 | 设置为456,每次运行都会得到相同的随机结果 |
| 启用种子 | enable_seed | 布尔值 | True/False | 是否使用种子值来控制随机性 | 控制是否启用种子固定随机结果 | 设置为True时使用固定种子,False时完全随机 |
3.5 VAELoaderDecoder 节点
这个节点就像一个图片解码器,能够把AI生成的数据转换成我们能看到的图片。这个节点简化了VAE解码的工作流程。
3.6 VAELoaderDecoder 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| VAE文件名 | vae_name | 字符串 | 支持通配符的文件名 | 选择用哪个VAE模型文件,可以用通配符随机选择 | VAE模型文件名,支持wildcard语法 | 输入:{vae_ft_mse|vae_ft_ema}.safetensors 随机选择VAE |
| 潜变量输入 | samples | 潜变量对象 | 从采样器连接 | 这是AI生成的"半成品"数据 | 用于解码的潜变量数据 | 从KSampler节点的输出连接过来 |
3.7 SimplerSample 节点
这个节点就像一个简化版的图片生成器,把复杂的生成过程变得更简单。这个节点简化了采样的工作流程。
3.8 SimplerSample 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 模型输入 | model | 模型对象 | 从模型加载器连接 | 这是用来生成图片的AI大脑 | 用于生成图像的扩散模型 | 从"Load Checkpoint"节点连接过来 |
| 正面提示词 | positive | 条件对象 | 从文本编码器连接 | 告诉AI你想要什么样的图片 | 正向条件引导,描述期望的图像内容 | 从CLIPTextEncodeWildcards节点连接 |
| 负面提示词 | negative | 条件对象 | 从文本编码器连接 | 告诉AI你不想要什么样的图片 | 负向条件引导,描述不期望的图像内容 | 从另一个文本编码器连接,写"blurry, low quality" |
| 种子值 | seed | 整数 | 任意数字 | 控制图片生成的随机性 | 控制采样过程的随机种子 | 设置为789,每次生成相同的图片 |
| 步数 | steps | 整数 | 20-30 | AI生成图片需要多少步,越多越精细但越慢 | 扩散模型的采样步数 | 设置为25,平衡质量和速度 |
| 引导强度 | cfg | 浮点数 | 7.0-12.0 | 控制AI多听你的话,数值越高越听话 | 分类器自由引导强度 | 设置为8.0,让AI更好地遵循提示词 |
| 采样器名称 | sampler_name | 字符串 | euler_a | 选择生成图片的算法,不同算法效果不同 | 扩散模型的采样算法 | 选择"euler_a",速度快效果好 |
| 调度器 | scheduler | 字符串 | normal | 控制生成过程的时间安排 | 噪声调度器类型 | 选择"normal",标准的生成方式 |
| 潜变量输入 | latent_image | 潜变量对象 | 从潜变量生成器连接 | 图片生成的起始点 | 用于生成的初始潜变量 | 从"Empty Latent Image"节点连接 |
3.9 CheckpointLoader 节点(带通配符支持)
这个节点就像一个智能模型选择器,能够根据通配符随机选择不同的AI模型。
3.10 CheckpointLoader 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 模型文件名 | ckpt_name | 字符串 | 支持通配符的文件名 | 选择用哪个AI模型,可以用通配符随机选择 | 模型checkpoint文件名,支持wildcard语法 | 输入:{model1|model2|model3}.safetensors 随机选择模型 |
3.11 LoraLoader 节点(带通配符支持)
这个节点就像一个风格滤镜选择器,能够随机选择不同的风格效果。
3.12 LoraLoader 参数详解
| 参数名 (UI显示) | 参数名 (代码里) | 参数值 | 建议值 | 通俗解释 (能干嘛的) | 专业解释 | 怎么用/举个例子 |
|---|---|---|---|---|---|---|
| 模型输入 | model | 模型对象 | 从模型加载器连接 | 基础的AI模型 | 用于加载LoRA的基础模型 | 从CheckpointLoader节点连接 |
| CLIP输入 | clip | CLIP对象 | 从CLIP加载器连接 | 文字理解模块 | 用于加载LoRA的CLIP模型 | 从CheckpointLoader节点连接 |
| LoRA文件名 | lora_name | 字符串 | 支持通配符的文件名 | 选择用哪个风格文件,可以用通配符随机选择 | LoRA文件名,支持wildcard语法 | 输入:{anime|realistic|cartoon}_style.safetensors |
| 模型强度 | strength_model | 浮点数 | 0.1-1.0 | 控制风格对图片的影响程度 | LoRA对模型的影响强度 | 设置为0.8,让风格效果明显但不过度 |
| CLIP强度 | strength_clip | 浮点数 | 0.1-1.0 | 控制风格对文字理解的影响程度 | LoRA对CLIP的影响强度 | 设置为0.8,让风格影响文字理解 |
4. 通配符语法详解
4.1 基础通配符语法
| 语法格式 | 通俗解释 | 举例 | 实际效果 |
|---|---|---|---|
{选项1|选项2|选项3} | 从多个选项中随机选择一个 | {red|blue|green} car | 随机选择红色、蓝色或绿色汽车 |
{2$$选项1|选项2|选项3} | 从选项中选择2个(可重复) | {2$$cat|dog|bird} | 可能是"cat,dog"或"cat,cat"等 |
{1-2$$选项1|选项2|选项3} | 随机选择1到2个选项 | {1-2$$happy|sad|angry} | 可能是"happy"或"happy,sad" |
{-2$$选项1|选项2|选项3} | 选择0到2个选项 | {-2$$hat|glasses|scarf} | 可能什么都不选,或选1-2个 |
4.2 文件通配符语法
| 语法格式 | 通俗解释 | 举例 | 实际效果 |
|---|---|---|---|
__文件名__ | 从文件中读取随机内容 | __colors__ | 从colors.txt文件中随机选一行 |
__/文件名 | 从根目录的文件中读取 | __/styles | 从根目录的styles.txt文件中读取 |
__/文件夹/文件名 | 从指定文件夹的文件中读取 | __/characters/anime | 从characters文件夹的anime.txt中读取 |
?文件名 | 匹配任意单个字符 | ?tyle | 匹配style.txt或stale.txt等 |
* | 匹配所有文件 | * | 匹配所有可用的文件 |
5. 使用技巧和建议
5.1 基础使用技巧
-
从简单开始:初学者建议先用简单的
{选项1|选项2}语法,熟悉后再尝试复杂的组合。 -
合理使用种子值:
- 想要每次都不同的结果,不要设置固定种子
- 想要复现某个好的结果,记录下种子值
-
文件组织:
- 在ComfyUI的
custom_nodes/ComfyUI_node_Lilly/wildcards文件夹中创建文本文件 - 每个文件一行一个选项,用于组织不同类型的随机选择
- 在ComfyUI的
5.2 高级使用技巧
-
嵌套通配符:可以在通配符中嵌套其他通配符
{beautiful {young|old} {woman|man}|cute {cat|dog}} -
权重控制:通过重复选项来增加其被选中的概率
{red|red|blue|green} # 红色被选中的概率更高 -
条件组合:创建复杂的条件组合
{sunny day, {bright|warm} lighting|rainy day, {dark|moody} atmosphere}
5.3 文件管理建议
-
按类型分类:
colors.txt:存放颜色选项styles.txt:存放风格选项characters.txt:存放角色选项
-
命名规范:使用清晰的文件名,方便在通配符中引用
-
内容格式:每个txt文件中,每行一个选项,避免空行
6. 常见问题解答
Q1: 为什么通配符不生效?
A: 请检查:
- 语法是否正确(使用
{}而不是[]或()) - 选项之间是否用
|分隔 - 文件路径是否正确
Q2: 如何让结果更加随机?
A:
- 不要设置固定的种子值
- 或者在种子值中也使用随机数生成
Q3: 文件通配符找不到文件怎么办?
A:
- 确保文件放在正确的
wildcards文件夹中 - 检查文件名是否正确
- 确保文件编码为UTF-8
Q4: 通配符可以嵌套多少层?
A: 理论上可以无限嵌套,但建议不要超过3层,以免过于复杂
Q5: 如何制作自己的通配符文件?
A:
- 在
wildcards文件夹中创建.txt文件 - 每行写一个选项
- 保存为UTF-8编码
- 在通配符中使用
__文件名__引用
7. 实践案例
案例1:随机人物生成
{beautiful|handsome|cute} {young|middle-aged|elderly} {woman|man} with {blue|brown|green|hazel} eyes, {long|short|curly|straight} {blonde|brunette|black|red} hair, {smiling|serious|mysterious} expression
案例2:随机场景生成
{sunny|cloudy|rainy|snowy} day in a {forest|city|beach|mountain}, {morning|afternoon|evening|night} time, {realistic|anime|oil painting|watercolor} style
案例3:使用文件的复杂组合
__characters__ in __locations__, __weather__ weather, {wearing __clothing__|holding __objects__}, __art_styles__ style
8. 总结
ComfyUI_node_Lilly插件是一个非常实用的工具,能够让你的AI艺术创作更加多样化和有趣。通过掌握通配符语法,你可以创建出无数种不同的组合,让每次生成的图片都有新的惊喜。
记住,熟练使用这个插件的关键是:
- 从简单的语法开始学习
- 逐步尝试复杂的组合
- 合理组织你的通配符文件
- 多实践,多实验
希望这个教程能帮助你更好地使用ComfyUI_node_Lilly插件,创作出更加精彩的AI艺术作品!