在ComfyUI里,反向提示词(Negative Prompt)其实就是告诉AI“我不想要什么”。这跟我们平时用正面提示词告诉它“我想要什么”正好相反。很多人刚开始会忽略这个,但用好了,它能帮你解决很多问题,比如画面出现多余的手指、奇怪的颜色或者不想要的画风。
最基础的反向提示词工作流非常直接。它就是默认文生图工作流的一部分。在工作区里,你会看到两个“CLIP Text Encode (Prompt)”节点。 一个连接到“KSampler”节点的“positive”输入端,另一个连接到“negative”输入端。 前者是你写想要什么的地方,后者就是你写不想要什么的地方。
操作步骤很简单:
1. 双击空白处,调出搜索框,输入“CLIP Text Encode”并选择它,这样就创建了一个提示词节点。
2. 重复一次,创建第二个。
3. 把第一个节点的“CONDITIONING”输出端连接到“KSampler”的“positive”输入端。
4. 把第二个节点的“CONDITIONING”输出端连接到“KSampler”的“negative”输入端。
现在,你就可以在第二个节点里写下所有不希望出现的东西了。比如,如果你发现生成的图片总有点模糊,就可以在反向提示词里写“blurry, low quality”。 如果你画的是人物,不想要那种常见的畸形手,就可以加上“mutated hands, extra fingers”。 这种方法很直接,但问题是,每次你都需要手动输入一大堆重复的词,而且有些复杂的负面概念,比如“画风不好”,用几个词很难描述清楚。
为了解决这个问题,社区里出现了一种更高效的方法:使用负面Embedding(也叫Textual Inversion)。你可以把Embedding理解成一个“打包好的提示词”或者“概念压缩包”。 别人已经用成千上万张带有不良特征的图片训练好了一个小文件,这个文件就代表了所有这些“不想要”的集合。你只需要调用这个文件,就等于输入了一大段优化过的反向提示词。
目前最流行的两个负面Embedding是“EasyNegative”和“bad_prompt”。 它们的文件通常很小,只有几KB到几十KB。
使用负面Embedding的工作流步骤如下:
1. 首先,你需要下载Embedding文件。你可以在Civitai或者Hugging Face这类网站上找到它们,通常后缀是.pt或.safetensors。
2. 下载后,把文件放到ComfyUI的指定文件夹里。路径是 ComfyUI/models/embeddings。 为了兼容不同模型(比如SD1.5和SDXL),最好在embeddings文件夹里再建一个子文件夹,比如SD1.5,然后把文件放进去。
3. 放好文件后,需要重启ComfyUI才能加载。
4. 在你的工作流里,找到那个连接到“KSampler”的“negative”端口的“CLIP Text Encode”节点。
5. 在文本框里输入 embedding:模型文件名。比如,如果你下载的文件叫EasyNegative.pt,你就输入 embedding:EasyNegative。 ComfyUI会自动识别并加载这个Embedding。
用了Embedding之后,你的反向提示词节点可能只需要一句话。这不仅让工作流看起来更整洁,效果也常常比自己手写一大堆要好,因为它包含了大量经过优化的负面概念。 比如,“EasyNegative”就擅长处理人物解剖结构、画面模糊和一些通用的质量问题。 你也可以在调用Embedding的同时,再手动添加一些额外的反向提示词,比如你这次不想要“红色”,就可以写embedding:EasyNegative, red color。
随着ComfyUI社区的发展,还出现了一些功能更强的自定义节点,专门用来处理反向提示词。这些节点通常需要通过ComfyUI Manager来安装。
一个例子是“Auto Negative Prompt”节点。 这个节点可以根据你的正面提示词,自动生成对应的反向提示词。 这对于新手或者不想花时间思考反向提示词的人来说很方便。它的逻辑是分析你想要的东西,然后推断出你可能不想要的东西,从而帮你排除掉一些常见的错误。
使用这类自定义节点的工作流通常是这样的:
1. 通过ComfyUI Manager安装包含该节点的插件包(比如“One Button Prompt”里就有这个节点)。
2. 安装后重启ComfyUI。
3. 在工作流中,你会用这个自定义节点替换掉原来的“CLIP Text Encode”反向提示词节点。
4. 这类节点一般会有几个输入端,比如它需要你把正面提示词的文本连接给它,这样它才能进行分析。
5. 然后,它会有一个“NEGATIVE”或类似的输出端,你再把这个输出端连接到“KSampler”的“negative”输入端。
这种自动化节点的好处是省事,但坏处是有时候可能不够精确。它生成的东西是基于通用规则的,不一定完全符合你这次创作的特殊需求。
还有一个值得一提的实践方法是,反向提示词的写法也需要讲究逻辑。直接否定一个东西,比如写“no hat”,效果往往不如描述你不想要的状态,比如直接写“hat”。因为AI模型在训练时,学习的是“帽子”这个概念和对应图像的关系,而不是“没有帽子”这个概念。所以,直接告诉它你不想要什么东西的名字,通常是更有效的做法。
另外,在某些特殊的工作流中,比如使用FLUX模型时,处理反向提示词的方式可能会有变化。 有时需要用到特殊的采样器节点,比如“SamplerCustomAdvanced”,或者专门设计的“Negative Guider”节点,才能让反向提示词生效。 这是因为不同模型的架构和工作方式不同,标准的连接方法不一定通用。所以,当你使用一些新模型时,最好查看一下模型发布者提供的示例工作流,看看他们是如何处理反向提示词的。
总的来说,从最基础的手动输入,到使用Embedding文件,再到利用自动化自定义节点,ComfyUI提供了不同层次的反向提示词解决方案。对于刚开始接触的人来说,我建议先从手动写一些基础的反向提示词开始,比如“low quality, blurry, worst quality, ugly, deformed”,感受一下它对画面的影响。 然后,尽快去下载一个通用的负面Embedding,比如“EasyNegative”,把它作为你的常备工具。 这会立刻提升你出图的平均质量。当你对整个流程熟悉了之后,再根据自己的需求,去探索那些更复杂的自定义节点和工作流,找到最适合自己创作习惯的方法。







评论前必须登录!
注册