Skip to content
🧠 模型×任务工作流第 9 / 16 节

FLUX.2:Dev 多参照一致性与 Klein 轻量版 ​

FLUX.2 是 Black Forest Labs 的下一代图像模型:最高 4MP 照相级输出,光线、皮肤、织物和手部细节全面升级。它把 FLUX.1 的「一张参考图」升级成多参照一致性——最多 10 张参考图,人物、商品几何、材质、服装在多张输出里保持一致;文字渲染也达到了专业级,UI 截图、信息图、多语言内容都能写出干净可读的字。

ComfyUI 这边有两套方案:FLUX.2 Dev(开源全量版,效果最好)和 FLUX.2 [Klein](轻量版,一个架构统一文生图和修图,4B 蒸馏版 4 步出图、约 8.4GB 显存)。这一页把两套 FLUX.2 工作流都跑通。

学完你能做什么 ​

  • 跑通 FLUX.2 Dev 多参照工作流:模板加载 → 三件套归位 → 多参考图一致性编辑出图
  • 用 ReferenceLatent 链把多张参考图挂进条件:设计稿 + 商品照 → 图案贴上实物
  • 切换 FLUX.2 Klein 4B 轻量版:蒸馏版 4 步出图,8GB 级显存本地跑
  • 分清两套权重体系:Dev 的 fp8mixed 量化档 vs Klein 4B/9B 各自的 base 与 distilled 两型,不再下错文件
  • 记住 FLUX.2 与 FLUX.1 的节点差异:CLIPLoader 单编码器(type flux2)取代 DualCLIPLoader

你现在的困境 ​

  • 想给产品换包装:设计稿一张、商品照一张,普通图生图只会把两张图「平均」成一张四不像
  • 同一个角色出 10 张图,脸、服装、画风每张都不一样,一致性全靠抽卡
  • 听说 FLUX.2 效果好,一看模型 33GB——不知道自己那块卡还跑不跑得动

什么时候用这一招 ​

当你需要:

  • 多参照一致性:人物 + 服装 + 场景多张参考图合成一张,各取所长
  • 专业文字渲染:海报大字、UI 界面、包装上的品牌字要干净可读
  • 精确的 hex 品牌色:指定色号,输出配色不跑偏
  • 低配置也想要 FLUX.2 质感:Klein 4B 用 8.4GB 显存跑起来

而且不想:

  • 每次都把参考图特征「抄」丢——FLUX.1 Kontext 单参考图撑不起多图合成
  • 为一张图开云端 API——Dev 和 Klein 都开源,本地就能跑

🎒 开始前的准备 ​

  • 跑通了FLUX.1 文生图:FLUX 家族的 loader 套路和「不用负向提示词」的共识都在那一课
  • 会加载模板、按 Ctrl+Enter 运行(忘了回看第一次生图)
  • 模型目录规则已经熟悉:放进 models/ 下对应子目录(回看模型放哪里)
  • ComfyUI 更新到 0.4.0 以上(FLUX.2 Dev 官方模板标注的最低版本;Klein 模板要求 0.3.72 以上)
  • 硬盘预留:跑 Dev 全量约 66GB(含 33GB 文本编码器);省空间换 fp8 文本编码器约 50GB;只跑 Klein 4B 约 12GB
  • 网络能连 Hugging Face;连不稳走 ModelScope 国内镜像(第 2 步给地址)
  • 一杯水 ☕——Dev 的模型下载是本课最大的等待

核心思路 ​

FLUX.2 在模型层面分两支,工作流也跟着分两套:

分支定位扩散模型步数
FLUX.2 Dev(开源全量)效果天花板:4MP 照相级、多参照一致性、专业文字渲染flux2_dev_fp8mixed(33.02GB,fp8 量化权重;全量权重在 BFL 原始仓库)20
FLUX.2 [Klein](轻量)交互式低延迟:一个架构统一文生图和修图4B / 9B 两档,每档各有 base(未蒸馏)与 distilled(蒸馏)两型蒸馏 4 步,base 20 步

FLUX.2 Pro 是 Black Forest Labs 的 API 版,不开源——本地能跑的就是上表两支。

多参照一致性是怎么接进工作流的:ReferenceLatent 节点把参考图编码成 latent,「挂」进条件(conditioning)链。条件从 FluxGuidance 出来,穿过 ReferenceLatent 再进 BasicGuider;想加第二张参考图,就从上一个 ReferenceLatent 的条件输出再串一个。模型层面最多支持 10 张参考图,人物、商品几何、材质、服装就这样跨输出保持一致。

对比你在 FLUX.1 文生图里见过的节点链,FLUX.2 换了三个关键零件:

环节FLUX.1(Dev 文生图模板)FLUX.2(Dev 编辑模板)
文本编码器DualCLIPLoader:clip_l + t5xxl 两个文件CLIPLoader:mistral 单文件,type 选 flux2
采样/调度KSampler 一个节点全包Flux2Scheduler(步数 + 宽高)+ SamplerCustomAdvanced 拆开配
空 latentEmptySD3LatentImageEmptyFlux2LatentImage
参考图Kontext 单参考图ReferenceLatent 链式挂多张(最多 10 张)

Klein 的官方性能数据(RTX 5090):

版本步数显存端到端耗时
Klein 4B distilled48.4GB~1.2s
Klein 4B base209.2GB~17s

一句话选型:要效果走 Dev,要速度走 Klein 蒸馏,要自己微调走 Klein base。

跟我做 ​

第 1 步:加载 FLUX.2 Dev 官方模板 ​

为什么:官方模板已经把节点链、参数和模型链接都配好,我们只需要往里放素材。

操作:左侧栏 Templates 打开模板库,搜 FLUX.2,选「FLUX.2 Dev」(模板名 image_flux2,要求 ComfyUI 0.4.0 以上)。不想用模板库的话,也可以下载 image_flux2.json 手动打开。模板库的完整玩法见模板库。

画布上是三段式主链:LoadImage →(ImageScaleToTotalPixels 先把图缩到 1MP)→ 「Image Edit (FLUX.2 Dev)」子图 → SaveImage。把官方示例图 image_flux2_input_image.png(一张女士照片)上传到 LoadImage 节点 46,或直接换成你自己的图。

你应该看到:缺模型时子图节点标红,右侧 Errors 标签列出待下载的模型——不用急,第 2 步会一个个补齐。

  • 模板加载成功,LoadImage 里能看到你上传的图

第 2 步:下载 FLUX.2 工作流的三件套并归位 ​

为什么:模板只引用文件名,模型文件要自己下载放进 models/ 对应子目录,节点才不标红。

操作:按下面清单下载(文件名和体积照抄模板画布里的 Model links 注记):

文件放进体积下载地址
flux2_dev_fp8mixed.safetensorsmodels/diffusion_models/33.02 GBHugging Face
mistral_3_small_flux2_bf16.safetensorsmodels/text_encoders/33.14 GBHugging Face
full_encoder_small_decoder.safetensorsmodels/vae/238 MBHugging Face
Flux_2-Turbo-LoRA_comfyui.safetensors(可选)models/loras/2.57 GBHugging Face

Hugging Face 连不稳?Dev 三件套都在 Comfy-Org 的仓库里,走国内镜像:ModelScope:Comfy-Org/flux2-dev。也可以直接在模板右侧 Errors 标签里逐个点 Download。

⚠️ VAE 别照抄官方教程页的清单

官方教程页的 Model links 列的是 flux2-vae.safetensors(320.6MB),但 FLUX.2 Dev 模板实际加载的是 full_encoder_small_decoder.safetensors(238MB,来自 BFL 的 FLUX.2-small-decoder 仓库)。下载清单以模板画布里的 Model links 注记为准,否则 VAELoader 下拉框里选不到文件。flux2-vae.safetensors 是后面 Klein 和 Product Mockup 模板用的。

省空间选项:文本编码器可以换 fp8 版 mistral_3_small_flux2_fp8.safetensors(16.8GB,少 16GB 硬盘,第 6 步的 Product Mockup 模板用的就是它),在 CLIPLoader 里选对应文件名即可。

你应该看到:三个 loader(UNETLoader / CLIPLoader / VAELoader)的下拉框里都能选中对应文件,节点不再标红。

  • 三件套归位,模板无红色报错

第 3 步:读懂 FLUX.2 的节点链 ​

为什么:知道每个节点在链上的位置,报错时才知道去哪查;这也是 FLUX.2 与 FLUX.1 差异最大的一环。

操作:双击「Image Edit (FLUX.2 Dev)」子图进入内部,对照核心思路里的差异表,找到四条支线:

  • 模型区:UNETLoader(扩散模型)+ CLIPLoader(mistral,type 选 flux2)+ VAELoader
  • 条件链:CLIPTextEncode(正面提示词)→ FluxGuidance(4)→ ReferenceLatent → BasicGuider
  • 参考图:输入图在画布上先被 ImageScaleToTotalPixels 缩到 1MP,进子图后由 VAEEncode 编码成 latent 接进 ReferenceLatent 的 latent 输入口
  • 尺寸与调度:GetImageSize 读输入图宽高,同时传给 EmptyFlux2LatentImage(空 latent)和 Flux2Scheduler(20 步,输出 SIGMAS)——输出尺寸跟随输入图

子图里还有一个「Enable 8 steps lora」开关(默认关):打开后自动挂第 2 步下载的 Turbo LoRA,并把步数从 20 切到 8,进阶技巧一节会用到。

你应该看到:能亲手指出 ReferenceLatent 的两个输入口——conditioning 从 FluxGuidance 来,latent 接参考图的 VAEEncode。

  • 说得出条件链的顺序:提示词 → FluxGuidance → ReferenceLatent → BasicGuider

第 4 步:写提示词,跑出一致性编辑图 ​

为什么:FLUX.2 Dev 的编辑提示词是描述式——直接描述你要的最终画面,再声明要保留的部分,不像传统指令式修图那样说「把帽子加上」。

操作:模板里的官方示例提示词已经填好,照着它体会结构:

text
The woman is wearing a small pale yellow knitted beanie, with a white fabric
patch on the front right, embroidered with big gray text "FLUX.2 COMFY."
Keep the face

拆开看就是三段:描述新物件(浅黄毛线帽 + 白色布贴 + 灰色大字)→ 指定位置(front right)→ 锁定保留部分(Keep the face)。文字渲染是 FLUX.2 的强项,布贴上的 "FLUX.2 COMFY" 会真的可读。

按 Ctrl+Enter 运行。

你应该看到:进度条走完 20 步,输出里女士戴上浅黄毛线帽,布贴上的 "FLUX.2 COMFY" 字样清晰可读,脸部与原图一致。

想挂第二张参考图(真正的多参照)?从现有 ReferenceLatent 的条件输出再串一个 ReferenceLatent,新节点的 latent 口接第二张图的 VAEEncode。不想手动连线的话,第 6 步的 Product Mockup 模板已经把两张参考图接好,直接看它怎么连。

  • 输出图里新物件、文字、保留的脸三者同时成立

第 5 步:换 Klein 4B 轻量版(蒸馏版 4 步出图) ​

为什么:Dev 三件套约 66GB、20 步出图偏慢;Klein 4B 蒸馏版约 12GB 硬盘、4 步、8.4GB 显存,适合快速预览和交互式修图。

操作:模板库搜 FLUX.2 Klein,选「FLUX.2 [Klein] 4B Distilled: Image Edit」(模板名 image_flux2_klein_image_edit_4b_distilled,要求 ComfyUI 0.3.72 以上)。Klein 的三件套和 Dev 完全不同:

文件放进体积下载地址
flux-2-klein-4b-fp8.safetensorsmodels/diffusion_models/3.79 GBHugging Face
qwen_3_4b.safetensorsmodels/text_encoders/7.49 GBHugging Face · ModelScope
flux2-vae.safetensorsmodels/vae/320.6 MBHugging Face · ModelScope

注意这次 VAE 就是 flux2-vae.safetensors——Klein 模板用的才是它。扩散模型在 BFL 仓库,模板注记没给国内镜像;文本编码器和 VAE 都能走 ModelScope。

模板自带官方示例:handbag_white.png(节点 76,白色手袋)和 comfy_logo_blue.png(节点 81,Comfy 蓝标)。模板里预接了两条路径:

  • 默认启用(单参考图换色):提示词 Change the bag color to blue.,手袋变蓝
  • 默认旁路(双参考图多参照):提示词 stylize the handbag in image1 with the colours and logo from image 2——用 image1 / image 2 指代两张参考图,把蓝标的配色和 logo 套到白色手袋上

先跑默认路径按 Ctrl+Enter;想看多参照效果,把旁路的那条路径切回启用再运行。调度器是 Flux2Scheduler:4 步,默认宽高 1024×1024,euler 采样。

你应该看到:4 步采样几秒内完成(官方数据:5090 上端到端约 1.2s),白色手袋变成蓝色;启用第二条路径后,输出手袋带上了 Comfy 蓝标的配色和 logo。

  • Klein 4B 蒸馏版 4 步出图跑通,两条路径至少跑了一条

第 6 步(可选):跑 Product Mockup 商品样机 ​

为什么:设计稿一张、商品照一张,Product Mockup 模板已经把两张参考图都接好,是电商场景的直接应用。

操作:模板库搜 Product Mockup,选「Product Mockup(FLUX.2 Dev FP8)」(模板名 image_flux2_fp8,要求 0.4.0 以上)。两张输入图:image_flux2_input_Illustration.png(节点 46,设计稿)和 image_flux2_input_ref_image.png(节点 42,商品照)。

提示词已经填好:

text
Apply the design from Reference Image 1 onto objects in Reference Image 2.

这套模板的模型配置和第 2 步略有不同:文本编码器用 fp8 版 mistral_3_small_flux2_fp8.safetensors(16.8GB),VAE 用 flux2-vae.safetensors(320.6MB),另带一个 Turbo LoRA Flux2TurboComfyv2.safetensors(2.57GB,开关「Enable 8steps LoRA」默认关)。20 步、1024×1024。

你应该看到:设计稿的图案贴到商品照的实物上,构图和商品几何保持不变——官方教程给这套模板的定位就是包装、马克杯这类商品样机。

电商方向的完整玩法(换背景、虚拟试穿、商品视频)见商品样机。

  • (可选)两张参考图各取所需:设计稿的图案 + 商品照的形体同时出现在输出里

检查点 ✅ ​

  • Dev 多参照工作流跑通:模板 + 三件套 + ReferenceLatent 链
  • 描述式提示词的三段结构写得出:新物件 + 位置 + 保留部分(Keep the face)
  • 说得出 CLIPLoader 的变化:FLUX.2 用单编码器 + type flux2,不再是 DualCLIPLoader
  • Klein 4B 蒸馏版 4 步出图跑通
  • (可选)Product Mockup 商品样机跑通:设计稿的图案 + 商品照的形体同时出现在输出里

踩坑提醒 ​

❌ VAE 下错文件:官方教程页和模板注记不一致 ​

官方教程页 Model links 列的 VAE 是 flux2-vae.safetensors,但 FLUX.2 Dev 模板(image_flux2)的 VAELoader 实际写的是 full_encoder_small_decoder.safetensors。

  • 现象:下载了 320.6MB 的 flux2-vae.safetensors,VAELoader 下拉框里却选不到模板要的文件
  • 正确做法:下载清单以模板画布里的 Model links 注记为准——Dev 模板用 full_encoder_small_decoder.safetensors(238MB),flux2-vae.safetensors 留给 Klein 和 Product Mockup 模板

❌ ComfyUI 版本过低,加载模板报节点缺失 ​

FLUX.2 Dev 系模板(image_flux2 / image_flux2_text_to_image / image_flux2_fp8)要求 0.4.0 以上,Klein 系模板要求 0.3.72 以上——Flux2Scheduler、ReferenceLatent 这些节点需要新版 comfy-core。

  • 现象:加载模板时提示节点不存在,或运行直接报错
  • 正确做法:先更新 ComfyUI,再加载模板

❌ 把 Dev 和 Klein 的模型混着用 ​

两套模板的文本编码器完全不同:Dev 用 mistral(33GB 级),Klein 4B 用 qwen_3_4b(7.49GB)。CLIPLoader 的 type 虽然都选 flux2,文件并不通用。

  • 现象:加载报错,或出图质量崩坏
  • 正确做法:切换模板时连模型一起切。两套文件名不同,可以共存于同一个 models/ 目录,不必来回删

❌ 参考图连错 ReferenceLatent 的输入口 ​

ReferenceLatent 有两个输入口:conditioning(条件链,从 FluxGuidance 或上一个 ReferenceLatent 来)和 latent(接参考图的 VAEEncode)。

  • 现象:参考图的 latent 没接进 latent 口——这个口是可选输入,不接也能运行,于是运行不报错但参考图完全不生效(LATENT 也接不进 conditioning 口,类型不符会被直接拒绝)
  • 正确做法:LoadImage →(缩放)→ VAEEncode → latent 口;conditioning 口只串条件链

进阶技巧(可选) ​

打开 Turbo LoRA:Dev 20 步 → 8 步 ​

Dev 模板自带「Enable 8 steps lora」开关(默认关)。打开它,采样自动挂上第 2 步下载的 Flux_2-Turbo-LoRA_comfyui.safetensors,步数从 20 切到 8——预览构图够用,正式出图再关掉走 20 步。注意 Product Mockup 模板的同款开关用的是另一个 LoRA 文件 Flux2TurboComfyv2.safetensors(Comfy-Org/flux2-dev 仓库),别下混。

把 hex 品牌色写进提示词 ​

FLUX.2 支持 hex 色号级的品牌色控制(官方关键特性之一)。做品牌物料时,把品牌色的 hex 色号直接写进描述里,输出配色不跑偏——这对包装、海报这类「颜色必须和 VI 手册一致」的场景很关键。

Klein 还有 9B ​

4B 之外,Klein 还有 9B,同样分 base / distilled 两型:文本编码器换 qwen_3_8b_fp8mixed.safetensors(8.07GB),调度同样是蒸馏 4 步 / base 20 步。9B 的扩散模型在 BFL 仓库,官方注明下载前要先在仓库页同意协议。最新一代的 Klein 已经到 FLUX.3,见下一课。

本课小结 ​

这一课跑通了两套 FLUX.2 工作流,你现在的状态:

  • ✅ Dev 多参照工作流跑通:模板 → 三件套归位 → ReferenceLatent 条件链 → 20 步出图
  • ✅ 记住节点差异:CLIPLoader(type flux2)取代 DualCLIPLoader,Flux2Scheduler 管步数 + 宽高
  • ✅ 会写描述式编辑提示词:描述最终画面 + Keep the face 声明保留部分
  • ✅ Klein 4B 蒸馏版 4 步出图跑通,知道 base / distilled 怎么选
  • ✅ 会按需选型:效果天花板走 Dev,速度优先走 Klein 蒸馏,要微调走 Klein base

关键配置字段回顾:

字段 / 节点推荐值说明
CLIPLoader typeflux2FLUX.2 单编码器加载方式,Dev 和 Klein 通用
Flux2Scheduler stepsDev 20 / Klein 蒸馏 4 / Klein base 20步数随模板,别手滑改错档
FluxGuidance4Dev 模板默认值
采样器euler(KSamplerSelect)各模板默认
VAE 文件Dev 模板 full_encoder_small_decoder / Klein、Product Mockup 模板 flux2-vae最容易下错的一个文件
输出尺寸跟随输入图(GetImageSize → 空 latent + 调度器)想改尺寸先改输入图

下一课预告 ​

下一课我们跑 FLUX.3 Klein:最新开源 FLUX 本地跑。

你会学到:

  • FLUX.3 Klein 的文生图与编辑同权重工作流,不用再分两套模型
  • distilled 版 4–16 步的调度玩法
  • <ref_image_N> 多参考标记的提示词写法
  • FLUX Kommunity License 的使用边界(能商用吗、能微调发布吗)

附录:源码参考 ​

点击展开查看源码位置

更新时间:2026-11-05(ComfyUI v0.43.2)

内容文件
FLUX.2 Dev 官方教程(多参照、Product Mockup、模型链接)sources/comfyui/docs/tutorials/flux/flux-2-dev.mdx
FLUX.2 Klein 官方教程(4B/9B、base/distilled、性能数据)sources/comfyui/docs/tutorials/flux/flux-2-klein.mdx
Dev 编辑模板 JSON(本课主线)sources/comfyui/repo-notes/templates/image_flux2.json
Product Mockup 模板 JSONsources/comfyui/repo-notes/templates/image_flux2_fp8.json
Klein 4B 蒸馏模板 JSONsources/comfyui/repo-notes/templates/image_flux2_klein_image_edit_4b_distilled.json
模板索引(各模板最低 ComfyUI 版本)sources/comfyui/repo-templates/templates/index.json

关键节点与配置字段:

  • CLIPLoader:clip_name + type flux2(取代 FLUX.1 的 DualCLIPLoader)
  • Flux2Scheduler:steps / width / height → SIGMAS(分辨率随输入图)
  • ReferenceLatent:conditioning 串条件链,latent 接参考图 VAEEncode,可链式挂多张
  • FluxGuidance:4(Dev 模板默认)
  • EmptyFlux2LatentImage:FLUX.2 专用空 latent(对应 FLUX.1 的 EmptySD3LatentImage)
搞懂AI关于我们怎么写隐私说明

独立的第三方教程,与文中提到的任何产品及其公司没有隶属或合作关系;产品名称和商标归各自所有者。价格和政策以官方页面为准。