Project Icon

ComfyUI_ADV_CLIP_emb

ComfyUI高级CLIP文本编码 提升提示词权重控制

ComfyUI_ADV_CLIP_emb项目引入高级CLIP文本编码节点,实现精细的提示词权重控制。该项目支持多种标记归一化和权重解释方法,如mean、length、comfy和A1111等。此外,项目还提供SDXL支持,包括专门的SDXL编码节点和参数添加节点。这些功能有助于精确调整AI生成图像的细节,增强创作灵活性。

高级CLIP文本编码

这个仓库包含了4个用于 ComfyUI 的节点,可以更好地控制提示词权重的解释方式。


BNK_CLIPTextEncodeAdvanced 节点设置

为了实现这一目标,引入了一个CLIP文本编码(高级)节点,具有以下2个设置:

token_normalization:

决定如何对词元权重进行归一化。目前支持以下选项:

  • none:不改变权重。
  • mean:调整权重,使所有有意义词元的平均值为1。
  • length:将长词或嵌入的词元权重分配给所有词元。它以一种使不同长度词元之间权重变化幅度保持恒定的方式进行。例如,如果一个词由3个词元表示,权重为1.5,则所有词元的权重约为1.29,因为sqrt(3 * pow(0.35, 2)) = 0.5。
  • length+mean:先分配长词的词元权重,然后将平均值调整为1。

weight_interpretation:

决定如何处理权重的上调/下调。目前支持以下选项:

  • comfy:ComfyUI的默认设置,CLIP向量在提示词和完全空白提示词之间进行线性插值。
  • A1111:CLIP向量按其权重进行缩放。
  • compel:以类似于compel的方式解释权重。Compel的上调方式与comfy相同,但使用掩蔽嵌入来实现下调(稍后会详细说明)。
  • comfy++:上调时,每个词在原始提示词和该词被掩蔽的提示词之间进行线性插值。此外还使用compel风格的下调。
  • down_weight:重新缩放权重,使最大权重为1。这意味着你只能进行下调。使用compel风格的下调。
权重解释方法的直观理解

权重上调

下图直观展示了3种不同的方法如何转换CLIP嵌入以实现权重上调

注意力方法的可视化解释

如图所示,在A1111中,我们使用权重在零向量和对应词元嵌入的向量之间移动。这可以看作是调整嵌入的幅度,既使我们的最终嵌入更指向我们正在上调的事物的方向(或在下调时远离),又因为更大的数值而在SD中产生更强的激活。

Comfy也从一个单一点开始创建方向,但使用对应完全空白提示词的向量嵌入。我们现在在一条近似某个事物本质的线上移动。尽管向量的幅度增长不如A1111快,但这实际上非常有效,可能导致SD相当积极地追求被上调的概念。

Comfy++不是从单一点开始,而是在提示词中概念的存在和缺失之间移动。尽管想法与comfy相似,但它不那么激进。

不同方法的视觉比较

下面是一个简短的视频,展示了提示词cinematic wide shot of the ocean, beach, (palmtrees:1.0), at sunset, milkyway,其中棕榈树的权重在20步内从1.0缓慢增加到2.0。(使用SD 1.5中的silicon29制作)

https://user-images.githubusercontent.com/126974546/232336840-e9076b7c-3799-4335-baaa-992a6b8cad8a.mp4

权重下调

使用上述方法进行下调的一个问题是,与词元相关的嵌入向量不仅包含该词元的"信息",实际上还包含了整个提示词的大量上下文。它们包含的大部分信息似乎是关于特定词元的,这就是为什么这些不同的上调解释方法有效,但给定的词元渗透到整个CLIP嵌入中。在上面的示例提示词中,我们可以在comfy或A1111中将palmtrees的权重一直降到0.1,但由于表示棕榈树的词元影响了整个嵌入,我们在输出中仍然能看到很多棕榈树。假设我们有提示词(pears:.2) and (apples:.5) in a bowl。Compel通过以下方式实现下调:它创建嵌入

  • A = pears and apples in a bowl
  • B = _ and apples in a bowl
  • C = _ and _ in a bowl

然后将它们混合成最终嵌入0.2 * A + 0.3 * B + 0.5 * C。这样,在整个嵌入中,我们真正只有0.2的梨的影响,和0.5的苹果的影响。


Mix Clip Embeddings 节点(已弃用)

此节点的功能现已包含在核心ComfyUI节点中。


SDXL支持

为支持SDXL,提供了以下设置和节点。请注意,CLIP Text Encode(Advanced)节点也同样适用于SDXL:


BNK_CLIPTextEncodeSDXLAdvanced

CLIP Text Encode SDXL(Advanced)节点提供了与其非SDXL版本相同的设置。此外,它还有2个文本字段,用于向两个CLIP模型发送不同的文本,以及以下设置:

  • balance:CLIP和openCLIP模型之间的权衡。在0.0时,嵌入仅包含CLIP模型输出,openCLIP模型的贡献被清零。在1.0时,嵌入仅包含openCLIP模型,CLIP模型完全被清零。

此节点主要用于实验目的。


BNK_AddCLIPSDXLParams

Add CLIP SDXL Params节点向条件添加以下SDXL参数:

  • width:图像裁剪的宽度。
  • height:图像裁剪的高度。
  • crop_w:裁剪的左侧像素。
  • crop_h:裁剪的顶部像素。
  • target_width:原始图像的宽度。
  • target_height:原始图像的高度。

BNK_AddCLIPSDXLRParams

Add CLIP SDXL Refiner Params节点向条件添加以下细化器参数:

  • width:图像的宽度。
  • height:图像的高度。
  • ascore:图像的美学得分。
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号