ComfyUI实战:Krea2节点与白玉模型构建角色一致套系写真工作流
2026/9/7 21:20:38 网站建设 项目流程

最近在挑选 ComfyUI 工作流的时候,我发现套系写真类的工作流热度一直很高。原因很简单:普通爱好者想要一张好看的写真图并不难,但想要同一个角色、同一套服装、统一风格地生成一组图,难度立刻上了一个台阶。网上很多工作流要么角色一致性靠运气,要么需要堆一堆 ControlNet 节点,配置复杂,普通用户很难一次跑通。

这篇教程要讲的是基于 Krea2 节点封装的一套套系写真工作流,配合白玉模型来实现角色参考和唯美风格。我会从基础概念拆起,然后带大家把工作流完整搭出来,包括节点连接、关键参数解释、LoRA 和参考图的作用,最后给出常见报错排查和工程化建议。不管你是刚接触 ComfyUI 的新手,还是已经玩了一段时间但经常在“角色一致性”上翻车的进阶玩家,这篇文章都能给你一套能实际落地的方案。

1. 先说清楚这套工作流里的几个概念

在搭建工作流之前,有几个名词必须分清。因为它们涉及完全不同的下载资源、目录位置和加载方式,很多新手把工作流拖进 ComfyUI 后出现红色节点警告,往往就是这几个概念没分清楚导致的。

1.1 ComfyUI 是什么

ComfyUI 是一款基于节点图(Node Graph)的 Stable Diffusion GUI 工具。它和 WebUI 最大的差别在于,ComfyUI 把每个处理步骤都拆成了一个节点,用户通过连线来定义数据流动方向。这样做的好处是自由度极高,坏处是新手面对一张空白画布时容易不知所措。

在 ComfyUI 里,一个最简单的文生图流程至少要包含 4 类节点:

  • 加载模型节点,例如 Load Checkpoint。
  • 正向提示词节点 CLIP Text Encode(Positive)。
  • 采样器 KSampler。
  • 解码保存节点 VAEDecode、Save Image。

套系写真工作流本质上就是把上面这套基础流程进行“横向扩展”,额外加入角色参考、风格模型、精细重绘等分支。

1.2 Krea2 是什么

Krea2 在 ComfyUI 生态里通常指一套辅助人物写真生成的节点集合。它的核心作用是把“图像预处理、人物抠图、参考特征融合、生成结果增强”等常见写真需求封装成独立节点,让创作者不需要手动接线很多个 ControlNet 和遮罩节点。

需要注意的是,Krea2 并不是一个单独的底模,而是一类辅助增强层的集合。它更像是一套“业务封装工具”,通常包含类似 Krea2 Image Analyze、Krea2 Detail Enhancer 这类功能节点。实际使用时,还是要配合底座大模型、LoRA 和参考图来完成出图。

如果在网上下载到包含 Krea2 节点的工作流,本地 ComfyUI 没有安装对应插件,画布上会显示节点缺失。这时需要到 ComfyUI Manager 中搜索安装,而不是直接运行。

1.3 白玉模型是什么

白玉模型是一类专门针对亚洲人像、古风/唯美写真实战调校过的模型。它通常以 SD 1.5 底模或者基于该底模的训练模型形式分发,特点是人物皮肤质感细腻、面部光影柔和、发丝细节保留较好,比较适合古装写真、日常写真、婚纱风格等场景。

需要提醒大家的是,市面上叫“白玉模型”的文件不止一个版本,有的可能是完整 Checkpoint,有的可能是 LoRA。下载后先看文件后缀和存放位置:

  • 完整模型 .safetensors 放到ComfyUI/models/checkpoints/
  • LoRA 文件放到ComfyUI/models/loras/
  • VAE 文件放到ComfyUI/models/vae/

如果文件放错目录,即使工作流本身没有问题,也可能出现加载时报错或出图效果完全不对的情况。

1.4 角色参考是什么意思

角色参考在写真工作流里的核心目标是“保持同一张脸、同一套服装风格”。实际落地时通常有几种做法:

  • Reference Image 直接喂给 IPAdapter 或 InstantID,作为角色特征参考。
  • 先用 ControlNet OpenPose 约束姿态,再用 IPAdapter 约束面部特征。
  • 通过大模型提示词里固定服装、发型、配饰描述 + LoRA 强化风格。

这套工作流里使用的角色参考,主要思路是把参考图先经过图像预处理,提取出人物面部和服装特征,然后通过 Krea2 节点输出可复用的特征条件,再送入采样器参与生成。

2. 环境准备与版本说明

这一节非常重要。我见过很多用户下载工作流后,明明节点颜色正常,模型路径也对,但生成出来的图糊成一团,最后发现是运行环境不匹配。所以不管你现在跑得通还是跑不通,都建议按下面的思路重新梳理一遍本地环境。

2.1 硬件与系统要求

ComfyUI 本身对硬件没有硬性门槛,但如果你要跑完整版写真工作流,建议满足以下条件:

组件最低要求推荐配置
显卡6GB 显存12GB 及以上
内存16GB32GB
操作系统Windows 10 / Ubuntu 20.04Windows 11 / Ubuntu 22.04
Python3.103.10 / 3.11

注意,显存非常重要。Krea2 节点在预处理参考图时会临时占用额外显存,如果显存低于 6GB,建议先生成低分辨率,再通过后期高清修复放大,否则很容易爆显存。

2.2 ComfyUI 安装方式

ComfyUI 官方支持便携版和 Git 源码版。国内用户使用最多的还是秋叶一键整合包,它内置了 Python 环境、ComfyUI 主程序、常用自定义节点和模型管理工具,对新手非常友好。

# 官方 Git 方式(任选) git clone https://github.com/comfyanonymous/ComfyUI.git cd ComfyUI pip install -r requirements.txt python main.py

如果是整合包,解压后双击启动ComfyUI.bat即可。首次启动会自动检查依赖,然后打开浏览器访问http://127.0.0.1:8188

启动出现黑色窗口且没有报错,说明服务正常。之后所有工作流操作都在浏览器页面里完成。

2.3 自定义节点安装

这套套系写真工作流依赖两个自定义节点:

  • ComfyUI Manager
  • Krea2 相关节点包

通过 Manager 安装的参考命令:

cd ComfyUI/custom_nodes git clone https://github.com/ltdrdata/ComfyUI-Manager.git cd ComfyUI-Manager pip install -r requirements.txt

安装完成后重启 ComfyUI,界面右侧会出现 Manager 按钮。以后看到画布上有红色节点,可以直接点击右下角“Install Missing Custom Nodes”进行补装。

2.4 模型与文件准备

在实际跑工作流之前,至少需要准备好以下文件:

文件类型示例名称存放路径
底模白玉模型 safetensorsmodels/checkpoints
LoRA写实人像 LoRAmodels/loras
VAE内置或单独下载models/vae
参考图任意人物照片任意位置,工作流内上传

如果你是从网盘下载“白玉模型套系写真工作流”,网盘里一般会附带一个models文件夹和一个workflow.json文件。正确做法是把models文件夹里的内容分别合并到本地 ComfyUI 的对应目录,再用 ComfyUI 菜单里的Load功能导入workflow.json

3. 套系写真工作流的完整节点链路

这一部分我们进入核心。我不只是给你一张工作流截图,而是把整条链路拆开讲清楚。你理解了节点逻辑之后,遇到工作流报错就能自己定位是哪一段出了问题,也可以在不破坏整体效果的前提下替换节点。

3.1 整体工作流架构

套系写真工作流一般分为五个阶段:

加载底模 → 文本与图像条件编码 → Krea2角色参考处理 → 采样生成 → 解码输出与放大

整个链路用文字描述会比较抽象,我用结构化列表说明每个阶段承担的任务:

  1. 加载阶段:Load Checkpoint 加载白玉模型底模与内置 VAE。
  2. 条件阶段:正向、反向提示词分别通过 CLIP Text Encode 编码。
  3. 参考阶段:Load Image 读取角色参考图,送入 Krea2 预处理节点,输出特征条件。
  4. 生成阶段:KSampler 根据组合条件进行采样。
  5. 输出阶段:VAEDecode 解码图像,通过 Save Image 保存,必要时接入放大节点。

3.2 采样器参数分析

KSampler 是整个工作流中出图质量的关键。先看常见的参数配置:

{ "seed": 123456, "control_after_generate": "randomize", "steps": 28, "cfg": 7.0, "sampler_name": "dpmpp_2m", "scheduler": "karras", "denoise": 1.0 }

参数含义:

  • seed:随机种子,相同种子在相同条件下能复现同一张图。
  • steps:采样步数,写真类建议 25~30,太低细节不足,太高性能浪费。
  • cfg:提示词引导强度,建议 6~8,白玉模型本身风格较强,cfg 太大会导致颜色过饱和。
  • sampler_name:采样器名称,dpmpp_2m 是通用性较好的选择。
  • scheduler:调度器,karras 能让采样步长分布更合理,画面层次更分明。
  • denoise:重绘幅度,图生图时常用。如果你用的是文生图主流程,保持 1.0。

3.3 提示词组织策略

很多用户以为写真效果不好是模型问题,实际上提示词组织不合理占很大比例。套系写真和普通文生图不一样,普通图你只需要描述画面内容,但写真需要同时控制人物、服装、光线、场景、镜头语言这五类信息。

正向提示词建议按以下顺序组织:

(masterpiece, best quality:1.2), 1girl, solo, photorealistic, white dress, long black hair, soft smile, upper body, looking at viewer, soft light, depth of field, delicate skin texture, clean background, pastel tones

反向提示词建议固定写:

worst quality, low quality, bad anatomy, bad hands, extra fingers, missing fingers, deformed face, blurry, jpeg artifacts, watermark, text, logo, oversaturated, saturated colors, plastic skin

这里强调一下,反向提示词里的bad anatomybad hands非常关键。人物写真最容易被看出问题的地方就是手部结构和面部比例,提前在反向提示词里屏蔽能减少大量废片。

4. 手把手搭建 Krea2 套系写真工作流

现在进入实战环节。我假设你本地已经装好 ComfyUI,并且下载了白玉模型和 Krea2 节点包。接下来从画布上的空白处开始搭建。

4.1 新建工作流并加载底模

打开 ComfyUI 后,点击菜单栏的Workflow,选择New,创建一个空白工作流。

在空白画布上双击鼠标,弹出节点搜索窗口,输入Checkpoint,找到Load Checkpoint节点并点击创建。

在节点位置处,把 Checkpoint 下拉菜单切换到白玉模型:

Load Checkpoint ckpt_name: 白玉模型_v1.0.safetensors

Loaded checkpoint 输出端有三个接口:

  • MODEL:用于采样阶段。
  • CLIP:用于文本编码阶段。
  • VAE:用于解码阶段。

4.2 搭建提示词节点

继续双击画布,搜索CLIP Text Encode,创建两个节点,分别命名为:

  • Positive Prompt
  • Negative Prompt

Load Checkpoint的 CLIP 输出端分别连接到两个提示词节点的 CLIP 输入端。将上一节写的正向与反向提示词文本复制到对应文本框。

然后搜索CLIP Text Encode的公共输出目标Conditioning,我们下一步会用到。

4.3 加载角色参考图

双击画布,搜索Load Image,创建图像加载节点。点击节点上的choose file to upload,上传一张你准备好的角色参考图。

这张参考图的选择有讲究:

  • 面部清晰,眼部不发生遮挡。
  • 光线均匀,不要一半亮一半暗。
  • 服装就是你想生成的服装风格,或者至少风格接近。

如果要实现“换衣但保持脸部一致”,需要把参考图处理成面部特写,而不是全身图。全身图参考脸部和半身图的参考效果完全不同。

4.4 接入 Krea2 角色参考处理

接下来是所有节点中最重要的部分。双击搜索Krea2,找到角色参考相关节点。不同版本的 Krea2 节点名称可能略有差异,但功能类似。

创建 Krea2 节点后,将Load Image的图像输出端连接到 Krea2 的图像输入端。Krea2 会先对输入图像进行分析,提取面部特征、姿态信息和服装纹理特征,最终输出一个或多个特征条件向量。

如果节点有modeweight之类的参数,可以这样设置:

mode: character_reference weight: 0.8

weight 控制参考特征对生成结果的引导强度。过高会导致生成结果和参考图几乎一样,缺少多样性;过低则角色特征容易丢失。建议先以 0.8 起步,生成后根据效果微调。

4.5 连接采样器与解码输出

双击搜索KSampler,创建采样器节点。按下面方式接线:

  1. Load Checkpoint的 MODEL → KSampler 的 model。
  2. 正向提示词的 CONDITIONING → KSampler 的 positive。
  3. 反向提示词的 CONDITIONING → KSampler 的 negative。
  4. Krea2 输出的参考条件,如果有imageconditioning端口,根据工作流设计接入采样器对应端口或通过合并节点融合。

再搜索VAEDecodeSave Image,将 KSampler 的LATENT输出接至 VAEDecode 的 samples 输入,VAEDecode 的 VAE 输入来自 Load Checkpoint 的 VAE 输出,解码后的 IMAGE 接到 Save Image 的 images 输入。

接线整体链路如下:

Load Checkpoint → CLIP Text Encode → KSampler → VAEDecode → Save Image → Load Image → Krea2 ──────────→ KSampler

4.6 运行与验证

点击右侧面板的Queue Prompt按钮,或使用快捷键 Ctrl + Enter,开始生成。

第一次运行可能需要下载一些额外模型文件,耐心等待。如果一切正常,你会看到 Save Image 节点下方出现一张写真图。

生成完成后,重点检查几个部分:

  • 面部是否与参考图高度相似。
  • 手部结构是否自然。
  • 皮肤质感是否细腻,有无塑料感。
  • 服装纹理是否清晰。

如果效果不满意,优先调整 Krea2 节点的 weight,而不是去整体换模型。换模型牵一发动全身,容易引入新的风格偏移。

5. 角色参考一致性专项优化

很多用户卡在“角色参考不生效”这一步。Krea2 节点已经接线正确,但生成结果的脸和参考图完全不像。这个问题的本质是特征引导强度不够,或参考图本身质量不佳。

5.1 多种角色参考方案对比

我在实际测试中总结过几种角色参考组合方案,表现形式差别很大。

方案优点缺点适用场景
Krea2 单独参考操作简单极端角度容易失效日常半身写真
Krea2 + IPAdapter面部一致性较强多一个节点面部是核心卖点的写真
Krea2 + InstantID换脸能力最强容易崩面部纹理侧重于“换脸”场景
Krea2 + LoRA 人物模型角度宽容度最高需要训练 Lora套系写真商业化

如果是静态套系写真,建议优先尝试 Krea2 + LoRA。如果是同一张脸、多个动作,则使用 Krea2 + IPAdapter 组合。

5.2 用 LoRA 锁定服装与风格

如果你需要同一套服装、同一风格生成多张不同姿态的图,单靠参考图还不够稳定,因为参考图会限制姿态多样性。更稳妥的做法是训练一个轻量级 LoRA。

LoRA 文件放置到models/loras后,在工作流中创建Load LoRA节点,连接方式为:

  1. Load Checkpoint 的 MODEL → Load LoRA 的 model。
  2. Load Checkpoint 的 CLIP → Load LoRA 的 clip。
  3. Load LoRA 的输出 MODEL → KSampler 的 model。
  4. Load LoRA 的输出 CLIP → 提示词节点的 clip。

LoRA 提示词写法:

<lora:cloth_style_v1:0.7>

0.7 表示 LoRA 权重,建议从 0.6~0.8 开始调,过高会产生过拟合效果,细节纹理丢失。

5.3 提示词与参考条件的权重平衡

角色参考和提示词的权重平衡是写真工作流调试的核心。参考图决定“这个人”,提示词决定“穿什么、在什么环境、用什么镜头拍”。两者不能被一方完全压制。

我的建议是:

  • 脸部参考权重保持 0.8。
  • 服装描述放在正面提示词中前 10 个 token 内。
  • 场景描述不要太多,默认让模型根据服装风格补全。

如果生成结果中人物姿势僵硬,可以降低 Krea2 姿态参考的权重,只保留面部特征参考。Krea2 节点如果支持分离输出姿态与面部,建议分别控制。

6. 常见问题与排查思路

工作流搭建过程中,我遇到最多的问题集中在缺失节点、模型加载失败、显存溢出、出图崩脸这四个方向。下面逐一说明排查思路。

6.1 节点库缺失

问题现象常见原因解决思路
节点显示红色缺少自定义节点使用 Manager 安装缺失节点
提示找不到 Krea2自定义节点未安装Git clone 官方仓库到 custom_nodes
缺少 Python 包插件依赖未安装在 ComfyUI 的 Python 环境中 pip install

这类问题的通用解决思路是:

  1. 点击红色节点,查看报错信息中的关键字。
  2. 到 ComfyUI Manager 中点Install Missing Custom Nodes
  3. 安装后必须重启 ComfyUI,部分节点还需要到 Settings 中刷新节点列表。

6.2 模型加载卡住或报错

模型文件较大,加载速度慢是正常现象。但如果卡在某个百分比超过 5 分钟,需要检查:

  • 模型文件是否完整下载,网盘下载容易断点损坏。
  • 文件是否放入了正确的 checkpoints / loras 目录。
  • 是否缺少 VAE 文件。

一个常见的隐蔽错误是,网盘中附带的白玉模型文件名包含特殊字符或空格,导致 ComfyUI 在解析路径时报错。建议把文件名改为baiyu_v1.safetensors这种简洁格式。

6.3 显存不足

RuntimeError: CUDA out of memory.

出现这个报错,优先降低分辨率。将 KSampler 生成尺寸从 1024x1024 改为 768x768,先把流程跑通,再考验画质。

也可以使用--lowvram模式启动 ComfyUI:

python main.py --lowvram

这个模式会降低显存占用,但会牺牲部分速度。

6.4 出图崩脸

出图崩脸主要和采样器参数与 LoRA 强度有关。排查顺序:

  1. 先看反向提示词是否包含bad hands, bad anatomy
  2. 将 Krea2 面部参考权重从 0.8 降至 0.6。
  3. 将 LoRA 权重从 0.7 降至 0.5。
  4. 增加采样步数到 30,cfg 降至 6.5。

如果是连续多次崩脸,建议换一张更清晰的参考图。模糊参考图会导致模型无法准确提取面部特征,这时调参效果有限。

6.5 每次生成结果差异过大

角色一致性不稳定,常见原因是参考图面部占比太小。Krea2 提取面部特征时,如果参考图里脸部只占图片面积的 10%,面部信息量不足,出来的脸就不稳定。

解决方法是先在 PS 或任意裁剪工具中,把参考图裁剪为“肩部以上”构图,再重新加载。

7. 最佳实践与工程化建议

工作流跑通只是第一步,真正让它稳定地用于写真套系生产,还需要注意下面这些工程细节。

7.1 目录与文件规范

建议为不同项目创建独立目录,例如:

D:/ComfyUI/models/checkpoints/ D:/ComfyUI/models/loras/ D:/ComfyUI/models/krea2_ref/ D:/ComfyUI/output/my_studio/baiyu_wedding/

把工作流 JSON、参考图、生成结果按项目归档,后续复现时不需要重新找素材。

7.2 固定种子,先测风格再量产

找风格阶段不要固定种子,每次生成随机种子,有利于探索不同构图。

确定风格后,把 seed 固定下来,后续仅微调提示词。这样能保证拍摄套系时背景、色调基本一致,只是人物动作或服装细节有变化。

7.3 批量生成与筛选

批量生成时,建议把control_after_generate设置为randomize,一次生成 4~6 张再筛选。不要一张一张手动调。批量筛选时可以按以下标准打分:

  • 面部相似度是否达到 85% 以上。
  • 手部是否有结构错误。
  • 服装纹理是否清晰。
  • 整体色调是否符合“唯美写真”定位。

筛选后如果整体质量不理想,优先调整 Krea2 weight 和正向提示词的前几个 token,不必整套重新生成。

7.4 高清放大与细节增强

KSampler 直接出 1024 分辨率时,皮肤纹理还能看,但无法用于打印或壁纸级别输出。建议追加高清放大节点:

  1. 通过Upscale Image将图片放大至 2 倍。
  2. 通过KSampler二次采样,denoise 设为 0.4~0.5。
  3. VAE Decode 后保存。

二次采样时正向提示词保持不变,但可以加入detailed skin texture, realistic pores增强肤质细节。

7.5 安全与合规提醒

生成人物写真时,请确保你拥有参考图中人物的合法授权。不要对他人照片进行未经许可的“换脸”或“写真生成”,也不要将生成结果用于虚假宣传、诈骗等场景。技术上建议在本地运行,避免把人物图片上传至不明第三方服务。企业在批量生产时,应建立合规审核流程,保存完整的授权记录。

8. 学习路线与进阶方向

到这里,你已经能够搭建一套基于 Krea2 + 白玉模型 + 角色参考的套系写真工作流。接下来可以按下面路线继续往下走。

8.1 掌握图生图与局部重绘

套系写真经常会遇到“生成图服装满意但动作不对”的情况。学会局部重绘后,可以用遮罩锁定服装区域,只对背景或动作进行重绘,效率会提升很多。

8.2 学习 ControlNet 姿态控制

角色参考解决“脸像谁”的问题,ControlNet OpenPose 解决“动作是什么”的问题。把 Krea2 与 OpenPose 结合,就能做到用一个人物的照片,摆出多个指定姿势,这是套系写真商业化的核心能力。

8.3 训练自己的 LoRA

如果你需要在固定服装、固定人物、固定场景风格下大批量生产,自己训练 LoRA 是绕不开的路径。不建议用在线训练平台直接替换,可以先用本地 WebUI 自带的 LoRA 训练脚本,收集 15~20 张干净素材做一次小规模训练实验,感受数据配置、学习率和迭代步数对效果的影响。

8.4 搭建批量自动化任务

当工作流稳定后,可以通过 ComfyUI 的 API 模式批量调用。把 workflow.json 转换成 API 格式后,可以配合 Python 脚本批量提交任务,并根据返回结果自动保存。这样就不再需要人工一张张点 Queue Prompt 了。

可以用一个很简单的 Python 思路来实现批量提交:先读 JSON 模板,替换其中的 seed、提示词、参考图路径,再通过 API 提交。注意控制并发数量,防止显存不足。这种方式尤其适合时间有限、需要大量出图的场景。

9. 写在最后

Krea2 套系写真工作流的核心价值不在于某个单点技术,而在于它把“角色参考、风格控制、批量产出”串成了一条完整链路。当你把这些节点背后的原理一个一个弄明白,ComfyUI 就不再是“别人发的神秘 JSON”,而是一套你可以自由改造的工具箱。

最后给一个非常实际的建议:如果你下载到的工作流跑出来效果跟别人的示例图差距很大,不要急着删,先看一下底模、LoRA、参考图三个变量是不是完全一致。90% 的“复现失败”都出在这三个地方。

如果本文对你有帮助,可以收藏备用。后续我也会继续分享 Krea2 工作流在不同风格场景下的调参笔记,欢迎在实践中多交流。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询