1. 项目概述
今天我想和大家分享我在ComfyUI中实践的两个高级工作流:FLUX+SD放大工作流和FLUX图生图工作流。这两个工作流结合了FLUX模型在风格表现上的优势与Stable Diffusion在图像处理上的稳定性,能够产出质量极高的AI生成图像。
作为一名长期使用各类AI绘图工具的内容创作者,我发现FLUX模型特别适合需要强烈风格表现的作品,比如动漫、插画等艺术创作。而通过ComfyUI将这些模型组合成工作流,可以充分发挥每个组件的优势,实现1+1>2的效果。
2. 核心组件解析
2.1 FLUX模型特性
FLUX模型与常规Stable Diffusion模型有几个关键区别:
-
专用双CLIP加载器:必须使用DualCLIPLoader节点加载专门的FLUX CLIP模型(t5xxl_fp8_e4m3fn.safetensors和clip_l.safetensors),不能使用普通SD的CLIP。这种设计让FLUX能更好地理解复杂的艺术风格描述。
-
FP8精度:FLUX使用fp8_e5m2权重格式,相比传统FP16/FP32模型,在保持质量的同时大幅降低了显存占用,使得在消费级显卡上也能流畅运行。
-
风格强化:FLUX在保持图像结构准确性的同时,对艺术风格的表现力更强,特别适合动漫、幻想等需要强烈风格化的题材。
2.2 关键节点功能
2.2.1 Flux Sampler Parameters
这是整个工作流的"发动机",控制着图像生成的核心参数:
| 参数 | 推荐值 | 作用说明 |
|---|---|---|
| sampler | euler | 提供稳定的采样,保持图像结构 |
| scheduler | simple | FLUX官方推荐的调度器 |
| steps | 20 | 图生图任务的理想步数 |
| guidance | 3.5 | 平衡提示词影响与图像自由度的关键 |
| denoise | 1.0 | 接近完全重绘的程度 |
提示:guidance值设置为3.5是个很好的平衡点,既能遵循提示词,又不会让图像变得过于刻板。在实际使用中,可以根据具体需求在3.0-4.0之间调整。
2.2.2 SD Upscale节点
这不是简单的图像放大,而是Stable Diffusion的再采样放大:
| 参数 | 值 | 技术意义 |
|---|---|---|
| 放大倍数 | 2.0 | 从1024px放大到2048px |
| 步数 | 20 | 足够补充细节的迭代次数 |
| CFG | 8.0 | SD模型的合理配置区间 |
| denoise | 0.20 | 最关键参数,控制重绘程度 |
denoise=0.20的设置非常精妙 - 它意味着不进行完全重绘,只补充纹理、边缘和高频细节。这样既能提升图像质量,又不会改变原图的构图和主体。
3. FLUX+SD放大工作流详解
3.1 工作流架构
这个工作流的核心思路是让FLUX和SD各司其职:
code复制FLUX 文生图(生成1024px基础图像)
↓
VAE解码
↓
SD 二次采样放大(提升至2048px)
↓
同时保存两个版本的输出
3.2 实操步骤
3.2.1 初始化设置
-
首先确保已安装以下模型文件:
- FLUX基础模型
- 配套的t5xxl_fp8_e4m3fn.safetensors和clip_l.safetensors
- 用于放大的SD模型(推荐使用RealESRGAN或SwinIR)
-
在ComfyUI中创建DualCLIPLoader节点,正确配置模型路径和参数:
python复制# 伪代码表示节点配置 dual_clip = DualCLIPLoader( clip_path="models/flux/clip_l.safetensors", t5_path="models/flux/t5xxl_fp8_e4m3fn.safetensors", dtype="fp8_e5m2" )
3.2.2 提示词工程
使用这个工作流时,提示词需要更加注重风格描述。例如:
code复制"动态动漫风格的动作插画,一位紫色头发的女战士挥舞着带电的剑,剑身迸发出辐射能量。锐利的眼神和自信的姿态展现出压倒性的力量。运动模糊、飞溅的火花和强烈的灯光效果增强了速度和冲击感。她穿着融合了装饰性盔甲和日式美学的战斗服。构图突出了戏剧性的动作、强大的能量流动和大胆的动漫视觉效果。"
经验分享:FLUX对风格描述词特别敏感,建议将风格关键词放在提示词靠前位置,并用逗号明确分隔不同概念。
3.2.3 生成与放大
- 先用FLUX生成基础图像(1024px)
- 通过VAE解码节点转换为可视图像
- 送入SD Upscale节点进行二次采样放大
- 关键是将denoise设为0.20左右
- 放大倍数建议不超过2倍,以保持质量
- 最终得到2048px的高分辨率版本
3.3 效果对比
原始FLUX生成(1024px):
- 风格强烈但细节略显粗糙
- 小纹理不够精细
经过SD放大后(2048px):
- 保持原有风格和构图
- 头发丝、布料纹理等细节明显增强
- 边缘更加锐利清晰
4. FLUX图生图工作流详解
4.1 工作流原理
这个工作流的本质是:
"在保留原图构图/人物的基础上,用文本提示对画面进行风格与细节再创作"
流程架构:
code复制输入图像
↓
统一尺寸放大
↓
VAE编码(图像→潜空间)
↓
FLUX采样器(结合提示词重新采样)
↓
VAE解码(潜空间→图像)
↓
保存结果
4.2 实操要点
4.2.1 输入图像准备
- 选择一张质量较好的源图像(建议512px以上)
- 先用常规方法(如Lanczos)将图像放大到目标尺寸
- 这一步是为了确保所有图像在进入FLUX前尺寸统一
- 推荐使用ComfyUI中的"Image Scale"节点
4.2.2 潜空间编码
-
使用VAE编码节点将图像转换为潜空间表示
- 注意选择与FLUX模型兼容的VAE
- 编码质量直接影响最终输出效果
-
关键参数:
python复制# 伪代码表示编码配置 encoded = VAEEncode( image=input_image, vae=flux_vae, tile_size=512 # 对大图像分块处理 )
4.2.3 风格重绘
-
设计提示词时要突出想要改变的风格元素:
code复制"近距离奇幻肖像,一位有着淡紫色头发的年轻女性,手持装有微型绿色森林的玻璃瓶,柔和的自然光线,梦幻氛围,魔幻现实主义,浅景深,超精细,电影质感,高质量数字艺术" -
在Flux Sampler中调整参数:
- guidance: 3.5-4.0(比文生图稍高)
- denoise: 0.6-0.8(保留更多原图特征)
- 使用相同的euler采样器保持稳定性
4.3 应用场景
这个工作流特别适合:
- 老照片修复与风格化
- 统一多张图像的画风
- 为现有作品添加艺术效果
- 角色设计迭代
5. 高级技巧与问题排查
5.1 模型选择策略
-
FLUX基础模型:
- 官方发布的flux_1.0.safetensors是首选
- 社区训练的衍生模型要注意兼容性
-
放大模型:
- 对于动漫风格:UltraSharp或TBG模型
- 对于写实风格:RealESRGAN或SwinIR
- 避免使用Latent放大模型,会损失细节
5.2 常见问题解决
5.2.1 图像模糊
可能原因:
- denoise值过低(尝试提高到0.25)
- 放大步数不足(增加到25-30步)
- 使用了不兼容的VAE
解决方案:
- 检查VAE是否匹配FLUX版本
- 逐步增加denoise值测试
- 在SD Upscale前先用常规算法轻度锐化
5.2.2 风格不一致
可能原因:
- 提示词冲突
- guidance值设置不当
- 原图与目标风格差异过大
解决方案:
- 简化提示词,聚焦核心风格元素
- 调整guidance在3.0-4.5之间寻找最佳点
- 先用图生图轻度转换,再逐步加强风格
5.2.3 显存不足
优化策略:
- 使用FP8精度的FLUX模型
- 启用--medvram参数启动ComfyUI
- 对大图像分块处理(tile_size=512)
- 关闭不必要的预览节点
5.3 进阶参数调优
-
创意种子管理:
- 使用Seed Explorer节点批量测试不同种子
- 对优秀结果记录seed值和相关参数
-
动态CFG调度:
python复制# 伪代码表示动态CFG sampler = FluxSampler( cfg_schedule=[ (0.0, 3.5), # 初始阶段CFG (0.5, 4.0), # 中期增强 (0.8, 3.0) # 后期微调 ] ) -
混合模型应用:
- 在SD Upscale阶段切换不同模型
- 使用ModelMerge节点创建自定义混合模型
6. 工作流优化建议
经过多次实践,我总结了以下几点优化经验:
-
预处理很重要:对输入图像进行适当的对比度调整和降噪处理,能显著提升最终效果。
-
分阶段保存:在工作流的关键节点后添加Save Image节点,保存中间结果便于问题排查。
-
参数文档化:为每个重要节点添加注释,记录参数调整的原因和效果。
-
资源管理:
- 对大工作流使用Subflow功能模块化
- 定期清理不再使用的节点保持界面整洁
-
质量检查点:
- 在VAE编码前后检查潜空间质量
- 在放大前后对比局部细节
- 使用Histogram节点分析图像统计特性
在实际项目中,我发现将这些工作流与ControlNet结合使用效果更佳。比如在FLUX图生图工作流中加入OpenPose或Depth控制,可以更好地保持原图的构图和姿势。