本章节将介绍如何在 ComfyUI 中使用 Flux 模型。
此图片由 AI 生成
Files and versions
按钮(图中①),然后点击 Download
按钮(图中②),下载模型。
/models/diffusion_models/
目录下。
clip_l.safetensors
,另一个是 t5xxl_fp16.safetensors
:
t5xxl_fp8_e4m3fn.safetensors
模型。下载好的模型需要放在 ComfyUI 的 /models/clip/
目录下。
/models/vae/
目录下。
图示 | 描述 |
---|---|
① | Load Diffusion Model 节点,用于加载 Flux 模型。因为 Black Forest Labs 提供的 Flux 模型没有包含 Text Encoder 和 VAE 模型。所以只能用这个节点来加载模型,而没有用 Load Checkpoint 节点。 |
② | ModelSamplingFlux 节点里的基线偏移(base shift)是一种微小而稳定的调整,可以稳定图像生成过程,而最大偏移(max shift)是潜向量的最大允许变化,可以防止输出出现极端偏差。两者结合,可在图像生成的稳定性和灵活性之间取得平衡。 如果增加基线偏移,生成的图像可能会变得更加一致,更接近预期的形式。但也可能失去一些细微的细节。减小基线偏移可以带来更多变化,从而呈现出更精细的细节或更微妙的纹理。不过,这也可能会使图像的稳定性稍差,可能会出现细微的伪影或不一致。 增加最大偏移量,模型可以更自由地探索潜在空间,从而有可能对图片内容做出更有创意或更夸张的诠释。最终生成的图片可能会有更夸张的特征或更风格化的外观,但也有可能过于偏离真实的表现。降低最大偏移量会对模型造成限制,从而使对图片的描绘更加可控和逼真。图像可能会保持接近典型的外观,减少意外的变化,但可能会缺少一些创意元素或微妙的独特性。 如果你想让 FLux 模型生成的图片更真实,可以试试将最大偏移调整为 0.5,基线偏移调整为 0.3。 |
③ | DualClipLoader 节点是用于加载 Text Encoder 模型的节点。正如我在前一章提到的那样,Flux 使用了两个 Text Encoder 模型,所以需要用这个节点来加载两个模型。一个是 clip_l.safetensors ,另一个是 t5xxl_fp16.safetensors 。Type 选择 flux 即可。 |
④ | 与 DualClipLoader 节点相连的是 CLIP Text Encoder 节点。这个跟你在 Stable Diffusion 工作流中使用的 CLIP Text Encoder 节点是一样的。但这里有点不一样,这里并没有 Negative Prompt 节点。正如我前一章提到的那样,Flux 模型是一个引导蒸馏(guidance distilled)模型。所以没有 Negative Prompt。 |
⑤ | Guidance 节点你可以设置 Guidance 值,可以设置从 0 到 100。这个值的影响非常微妙。需要根据不同的 Prompt 进行测试。如果你发现你生成的图片效果不好,可以尝试对其微调。经过测试: 1. 即使这个值设置得很大,比如 90,生成的图片依然是可用的。所以你可以放心去尝试。 2. 这个值,只在特定的数值下有显著的效果,比如 1,生成的图片会比较阴暗。 3. 0~4 之间效果变化会比较大。换句话来说,将此值从 0 设置为 4,生成图片,对比起来差异远大于将其从 10 设置到 60。所以如果你想要测试更多效果,你仅需要测试从 0 到 4 即可。 4. 如果你想要生成的东西,非常复杂,且现实世界不存在,比如“有腿的西红柿”,那么你需要设置一个较大的值,比如 5 以上。 5. 如果你不知道该用什么,将其设置为 3.5 就可以了。 |
⑥ | EmptySD3LatentImage 节点,用于生成潜向量。虽然它名字是 SD3,但实际 Flux 也能用。 |
⑦ | VAEDecode 节点,用于解码潜向量。这里要用到我们下载好的 VAE 模型。 |
图示 | 描述 |
---|---|
① | 因为 Flux 里没有 Negative Prompt,所以你可以将 Negative Prompt 节点折叠起来。 |
② | 因为 Flux 是一个引导蒸馏(guidance distilled)模型,所以 CFG 值并不会生效,需要将其设置为 1。 |
/models/checkpoints/
目录下。
图示 | 描述 |
---|---|
① | Negative Prompt 节点不再生效,所以你可以将其折叠起来 |
② | 增加了 Guidance 节点。你可以设置 Guidance 值,可以设置从 0 到 100。这个值的影响非常微妙。需要根据不同的 Prompt 进行测试。如果你发现你生成的图片效果不好,可以尝试对其微调。经过测试: 1. 即使这个值设置得很大,比如 90,生成的图片依然是可用的。所以你可以放心去尝试。 2. 这个值,只在特定的数值下有显著的效果,比如 1,生成的图片会比较阴暗。 3. 0~4 之间效果变化会比较大。换句话来说,将此值从 0 设置为 4,生成图片,对比起来差异远大于将其从 10 设置到 60。所以如果你想要测试更多效果,你仅需要测试从 0 到 4 即可。 4. 如果你想要生成的东西,非常复杂,且现实世界不存在,比如“有腿的西红柿”,那么你需要设置一个较大的值,比如 5 以上。 5. 如果你不知道该用什么,将其设置为 3.5 就可以了。 |
③ | EmptySD3LatentImage 节点,用于生成潜向量。虽然它名字是 SD3,但实际 Flux 也能用。 |
④ | KSampler 里的 CFG 配置正如我前一章节提到的那样,Flux 模型是一个引导蒸馏(guidance distilled)模型。CFG 值并不会生效,所以你需要将其设置为 1。 |
/models/unet
目录下。
你会看到 GGUF 有很多版本,你可以根据你的电脑配置选择适合你的版本:
版本 | 描述 |
---|---|
Q8_0 | 如果你有 24GB 的显存,使用 Q8 版本,它的出图效果几乎和 FP16 完全一样。与其他 CLIP 模型一起使用的话,你将使用大约 15GB 的显存。这样你就有更多的显存空间可以加载多个 LoRA,或者图片修复等模型。你甚至可以在使用 Q8 时与 Flux 加载一个LLM。 |
Q6_K | 如果你只有 16GB 的显存,那么 Q6_K 非常适合你。和 CLIP 配合使用大约会占用 12GB 的显存。它在较小的体积下也提供了一定的准确性。 |
Q4_0 或 Q4_1 | 如果你只有少于 10GB 的显存,请使用 Q4_0 或 Q4_1,而不是 NF4(个人认为 NF4 在图像质量方面是最不可预测的版本。有时,图像非常好,而其他时候则很差。我觉得这个型号存在一致性问题)。我并不是说 NF4 不好。但如果你在寻找更接近 FP16 的模型,那么 Q4_0 就是你想要的。 |