在 ComfyUI 中,触发词 是一个非常重要的概念,它直接关联到你加载的特定 LoRA、Embedding(Textual Inversion)或 Hypernetwork 模型文件。它的主要作用是激活这些附加模型的效果,将它们“注入”到你的生成流程中。
简单来说:触发词是你需要在提示词中使用的特定关键词,用来告诉 Stable Diffusion:“嘿,我现在要使用这个 LoRA/Embedding/Hypernetwork 了,请应用它的风格或概念!”
触发词的作用
- 激活模型: 这是核心功能。没有在提示词中使用正确的触发词,对应的 LoRA/Embedding/Hypernetwork 模型通常不会生效(除非节点有特殊设置)。
- 控制强度(有时): 对于 LoRA 和 Hypernetwork,触发词本身在提示词中出现的次数或位置有时会影响模型效果的强度(类似于权重的概念,但更依赖于模型训练方式)。更常见和推荐的控制强度方式是直接调整 LoRA/Hypernetwork 节点的
strength
滑块。 - 精确定位(对于 Embedding): Textual Inversion 嵌入通常用于表示非常具体的概念(如特定风格、对象或艺术家)。触发词就是这个概念的“名字”,使用它就能精确调用该概念。
如何使用触发词
在 ComfyUI 中使用触发词的步骤如下:
- 获取触发词:
- 当你下载一个 LoRA/Embedding/Hypernetwork 模型时,作者几乎总是会提供其对应的触发词。这通常在模型发布页面、说明文件或文件名中写明。
- 常见的触发词格式:
- LoRA: 通常是
\<lora:模型文件名:强度>
,但在 ComfyUI 中,在提示词里直接写\<lora:...>
通常无效!你需要使用专门的Lora Loader
节点来加载 LoRA。触发词通常是该 LoRA 模型训练时使用的特定关键词(可能是一个或多个词)。例如,一个训练来生成特定动漫角色的 LoRA,其触发词可能类似于slgstyle
。 - Embedding (Textual Inversion): 通常是一个或多个特定的、不常见的单词或短语,例如
EasyNegative
(负面嵌入),style-cinematic
,[name_of_artist]
。 - Hypernetwork: 类似 LoRA,通常也有特定的关键词作为触发词,也需要通过专门的
Hypernetwork Loader
节点加载,而不是在提示词里写\<hypernet:...>
。
- 加载模型:
- 在你的 ComfyUI 工作流中,找到并添加正确的加载器节点:
- LoRA:
Lora Loader
节点。将你的基础模型(model
)和提示词(clip
)连接到该节点,然后选择.safetensors
的 LoRA 文件。调整strength
滑块控制影响强度。 - Embedding (Textual Inversion):
CLIPTextEncode
节点。直接在节点的文本输入框中输入触发词(例如EasyNegative
)。ComfyUI 会自动查找并应用与你输入的触发词名称匹配的.pt
或.bin
嵌入文件(这些文件需要放在ComfyUI\models\embeddings
目录下)。 - Hypernetwork:
Hypernetwork Loader
节点。使用方式类似Lora Loader
,选择.pt
文件并调整strength
。
- 在提示词中使用触发词:
- 关键一步: 在你希望 LoRA/Embedding/Hypernetwork 生效的那个
CLIPTextEncode
节点的文本输入框中(无论是正向提示词还是负向提示词),包含你从作者那里获取到的那个特定触发词。 - 位置: 触发词可以放在提示词的任何位置,但放在开头或靠近特定描述词的位置有时会更强地影响相关部分。你可以尝试调整位置观察效果。
- 格式:
- 对于 Embedding,通常直接写触发词本身,例如
EasyNegative
。 - 对于 LoRA 和 Hypernetwork,在
CLIPTextEncode
节点中,你直接写触发词本身(例如slgstyle
),而不是\<lora:slgstyle:1>
这种 Automatic1111 WebUI 的格式。触发词的效果是由Lora Loader
/Hypernetwork Loader
节点加载模型并连接到CLIPTextEncode
节点后,再由你在该CLIPTextEncode
节点中输入对应的触发词来激活的。
- 示例 (正向提示词):
masterpiece, best quality, highres, 1girl, beautiful, smiling,
slgstyle
, white hair, blue eyes, city background
在这个例子中,slgstyle
就是加载在流程中的某个 LoRA 模型所要求的触发词。
常见问题与注意事项
- 触发词无效?
- 检查拼写: 确保你在
CLIPTextEncode
节点中输入的触发词完全匹配作者提供的触发词(包括大小写、符号、空格)。 - 模型加载正确吗? 确认你正确使用了
Lora Loader
,Hypernetwork Loader
或正确放置了 Embedding 文件,并且节点连接无误(特别是连接到CLIPTextEncode
的clip
输入端口)。 - 模型支持吗? 有些较旧的模型或特定类型的模型可能对触发词的依赖方式不同。SDXL 模型对 LoRA 触发词的处理有时也与 SD1.5 不同,有些 SDXL LoRA 可能不需要特定触发词(但仍需加载),或者触发词效果较弱。
- 强度太低? 检查
Lora Loader
/Hypernetwork Loader
节点的strength
值,尝试调高。 - 冲突? 多个 LoRA/Embedding 使用相同的触发词或相互冲突的风格可能导致效果抵消或异常。
- 为什么不用
\<lora:...>
语法? ComfyUI 采用了更模块化、节点化的设计。Lora Loader
节点负责物理加载模型文件并设定强度,而触发词则是在文本层面通过CLIPTextEncode
节点来激活已加载模型中对应的概念。这分离了模型加载和概念激活的逻辑。 - 多个触发词: 一个模型可能有多个触发词(尤其是复杂的 Embedding 或 LoRA),你需要同时使用它们或在提示词中尝试不同的组合。按作者说明操作。
- 权重控制:
- 在
Lora Loader
/Hypernetwork Loader
节点上调整strength
是控制效果强度的主要和推荐方式。 - 在提示词中重复触发词(例如
slgstyle, slgstyle
)有时也能轻微增强效果,但这不如直接调整strength
滑块可靠和直观。
总结:
在 ComfyUI 中,触发词是激活已加载的 LoRA/Embedding/Hypernetwork 模型效果的“钥匙”。你需要:
- 从模型作者处获取正确的触发词。
- 使用对应的 Loader 节点(
Lora Loader
,Hypernetwork Loader
)或正确放置 Embedding 文件。 - 在
CLIPTextEncode
节点的提示词文本框中包含该触发词。 - 使用 Loader 节点的
strength
滑块 来精细控制效果的强度。
理解并正确使用触发词是驾驭 ComfyUI 强大功能(尤其是利用各种微调模型)的关键一步。希望这个解释能帮到你!如果你有具体的工作流截图或想尝试的触发词,可以发出来,我可以帮你看看设置是否正确。