公司动态
krea-2turbo工作流搭建:ComfyUI从零到API调用
krea-2turbo 这段时间在 ComfyUI 社区讨论度不低。它吸引人的地方不是工作流本身有多复杂而是背后的模型基于 Krea 团队在 FLUX 生态上的 Turbo 蒸馏方案用更少采样步数就能出可用图生成速度和资源成本都比常规生图模型有优势。这篇文章不做“下载别人做好的 Json 直接导入”这种操作而是直接打开 ComfyUI从空白画布开始把官方 krea-2turbo 工作流徒手搭出来。整个过程覆盖节点选择、连线方式、采样参数、功能测试、API 调用和批量任务扩展。文章主要解决三个问题。第一krea-2turbo 工作流到底需要哪些节点节点之间怎么连。第二模型文件放在哪里、采样器参数怎么填才能发挥 Turbo 模型的优势。第三工作流搭好之后怎么验证效果、怎么改成批量任务、怎么接 HTTP 接口以及本地部署时最容易踩哪些坑。适合的读者有两类。一类是已经把 ComfyUI 跑通、但平时只导入别人工作流的用户读完能理解节点拓扑和参数含义。另一类是刚上手 ComfyUI、准备在本地搭建图像生成流程的新手按步骤操作就能得到一个可用的工作流。全文按“能力规格 - 环境准备 - 搭建节点 - 功能测试 - API 与批量 - 性能观察 - 排错 - 最佳实践”的顺序展开。1. krea-2turbo 核心能力速览能力项说明项目类型ComfyUI 图像生成工作流基于 Turbo 蒸馏架构的 krea-2turbo 模型主要功能文生图、图生图、批量出图可通过 API 二次封装推理特点低步数出图常规配置下通常可用 4-8 步完成采样启动方式依赖 ComfyUI 运行浏览器打开 WebUI 后加载工作流硬件要求GPU 环境优先显存需求以模型文件精度和输出分辨率而定支持平台Windows / Linux 均可运行前提是 ComfyUI 正常部署是否支持 CPU理论可跑但速度较慢不建议实际推理接口 API支持ComfyUI 自带的 /prompt、/history、/view 等接口可复用批量任务支持通过 batch_size、队列或 API 轮询实现适合场景快速出图、风格化测试、批量素材生成、接入自动化流程先说明一个预期问题krea-2turbo 工作流并不需要堆积几十个自定义节点核心结构就是“加载模型 - 文本编码 - 采样 - 解码 - 保存”。真正决定出图质量的是模型版本、采样步数、调度器选择和分辨率。因此徒手搭建的意义是把每个节点的作用搞清楚后续想加 ControlNet、LoRA、局部重绘时才知道往哪里接、怎么接。2. krea-2turbo 工作流适用场景与合规边界krea-2turbo 工作流适合这样几种场景。第一快速迭代设计方案。UI 素材、场景草图、海报初稿这类需求通常要短时间出多张图krea-2turbo 的 Turbo 特性正好匹配。第二批量生成测试集。在做模型评估或素材筛选时用固定提示词模板加不同种子、不同参数批量出图可以快速生成一组对比样本。第三作为自动化管线的一环。通过 ComfyUI 的 API 接口把生成任务嵌入自己的 Python 脚本或后端服务实现“上传提示词 - 排队 - 出图 - 回收结果”的闭环。不适合的场景也要说清楚。如果目标是输出达到商用精修级别的正式稿单靠低步数 Turbo 模型往往不够需要叠加后期处理或改用高步数模型。另外如果工作流要部署在生产环境且并发量高直接调用本机 ComfyUI 的 /prompt 接口并不稳妥需要考虑队列管理和并发限制。使用边界方面图像生成涉及版权、肖像权与敏感内容。输入提示词和参考图必须来自合法渠道涉及真人肖像、品牌元素或他人作品时要确认有无授权模型权重也要遵循发布方的许可证条款某些模型只允许非商业使用商用前务必核对模型发布页的授权声明。3. ComfyUI 本地部署环境准备与模型放置在徒手搭建工作流之前先确认 ComfyUI 本身已经能正常运行。3.1 操作系统与硬件Windows 10/11、Linux 都是 ComfyUI 常见的运行环境。GPU 优先选择 NVIDIA 显卡因为 PyTorch 的 CUDA 生态最成熟。老显卡或显存偏小的显卡也可以运行但需要把分辨率、步数、模型精度控制好。如果使用的是 RTX 50 系列或较新的显卡重点检查驱动、CUDA 版本和 PyTorch 版本是否匹配新显卡在这几项上踩坑概率偏高。3.2 部署方式选择ComfyUI 的部署一般有两条路。第一条是官方仓库手动部署适合已经具备 Python 环境的用户。核心思路是克隆 ComfyUI 仓库、安装依赖、启动主程序。git clone https://github.com/comfyanonymous/ComfyUI.git cd ComfyUI pip install -r requirements.txt python main.py --listen 127.0.0.1 --port 8188以上命令是通用模板。如果不想手动配置 Python 环境可以考虑第二种方式。第二条是使用整合包。社区里常见的秋叶 ComfyUI 整合包就是这类方案它把 Python 运行时、依赖、常用模型目录和启动脚本打包在一起适合不喜欢折腾环境的新手。整合包启动后同样是浏览器访问 WebUI节点操作与官方版一致。需要说明的是整合包属于第三方分发形式下载后要先确认来源并注意模型目录结构和版本更新方式与手动部署不完全相同。3.3 模型文件放置krea-2turbo 模型文件需要放到 ComfyUI 的 models 目录下。根据模型文件的封装方式可能有两种情况如果模型是完整检查点文件放到ComfyUI/models/checkpoints/。如果模型发布时只提供扩散模型文件或 LoRA 文件则放到ComfyUI/models/diffusion_models/或ComfyUI/models/loras/并在工作流里改用对应的加载器节点。ComfyUI/ ├─ models/ │ ├─ checkpoints/ │ │ └─ your-krea-2turbo.safetensors │ ├─ diffusion_models/ │ │ └─ ... │ ├─ vae/ │ │ └─ ... │ └─ loras/ │ └─ ... ├─ custom_nodes/ ├─ input/ └─ output/具体文件名叫什么、放进哪个子目录以你下载到的模型页面说明为准。最稳妥的做法是下载后先看模型发布页的“使用方法”一节再决定节点加载方式。3.4 依赖检查如果工作流中用到第三方自定义节点ComfyUI 默认不会自动安装节点依赖。启动时报“请安装缺失的包以使用此工作流”时说明工作流里引用了未安装的节点或 Python 包需要在 ComfyUI 的 Python 环境中执行对应安装命令。这类报错和模型文件缺失无关属于节点环境问题排查时先看终端日志。4. 徒手搭建官方 krea-2turbo 工作流这一步开始操作环境是浏览器里的 ComfyUI WebUI。打开页面后把默认工作流清空从左侧节点列表拖出下面的节点。4.1 节点清单节点类型作用CheckpointLoaderSimple加载 krea-2turbo 检查点输出模型、CLIP、VAECLIPTextEncode正面提示词编码CLIPTextEncode负面提示词编码EmptyLatentImage设置输出分辨率与 batch_sizeKSampler采样器负责实际生成VAEDecode把潜空间结果解码为图像SaveImage保存到 output 目录如果 krea-2turbo 模型发布的是标准 checkpoints 文件上面 7 类节点就够用。如果模型发布的是扩散模型文件则需要把 CheckpointLoaderSimple 替换为 Load Diffusion Model、CLIPLoader 和 VAELoader 三个节点并采用对 FLUX 架构更合适的双 CLIP 加载方式。先说明这点是因为“徒手搭建”时最容易踩的坑是照抄别人截图里的节点但自己的模型文件格式不同导致连线对不上。4.2 标准搭建步骤第一步添加 CheckpointLoaderSimple在 ckpt_name 下拉框中选择你放入 checkpoints 目录的 krea-2turbo 模型文件。第二步添加两个 CLIPTextEncode 节点分别作为正面和负面提示词。从 CheckpointLoaderSimple 的 CLIP 输出口拉一根线连接到 CLIPTextEncode 的 clip 输入口。注意连线方向不要接反。第三步添加 EmptyLatentImage设置 width、height。krea-2turbo 这类模型通常建议从模型训练分辨率出发常见起步值是 1024 x 1024。如果需要批量出图把 batch_size 从 1 调大。第四步添加 KSampler。按顺序接线model 接 CheckpointLoaderSimple 的 MODEL 输出positive 接正面提示词输出negative 接负面提示词输出latent_image 接 EmptyLatentImage 输出。采样参数先按 Turbo 模型的常见配置填例如 steps 设置 4 到 8cfg 设置为 1.0 或模型发布页指定值sampler_name 和 scheduler 以模型说明为准seed 先手动填一个固定值方便复现。第五步添加 VAEDecode。KSampler 的 IMAGE 输出接到 VAEDecode 的 samples 输入再从 CheckpointLoaderSimple 的 VAE 输出口拉一根线到 VAEDecode 的 vae 输入口。第六步添加 SaveImage接收 VAEDecode 输出的图像设置 filename_prefix比如krea2turbo_test。生成图片会保存到 ComfyUI 的 output 目录下文件名带上这个前缀。接线完成后的节点链路如下CheckpointLoaderSimple ├── MODEL ─────────────→ KSampler.model ├── CLIP ────→ CLIPTextEncode(正) ──→ KSampler.positive ├── CLIP ────→ CLIPTextEncode(负) ──→ KSampler.negative └── VAE ───────────────→ VAEDecode.vae EmptyLatentImage ──→ KSampler.latent_image KSampler ─────────→ VAEDecode.samples VAEDecode ────────→ SaveImage.images以上是文生图最简工作流。点击界面右上角的 Save 按钮可以导出 JSON 文件方便后续复用。4.3 图生图工作流在文生图基础上图生图只需增加两个节点LoadImage 和 VAEEncode。LoadImage 的输出接到 VAEEncode 的 pixels 输入VAEEncode 的 vae 输入接 CheckpointLoaderSimple 的 VAE 输出。VAEEncode 输出的 LATENT 连接到 KSampler 的 latent_image 输入替换掉原来的 EmptyLatentImage。此时 KSampler 的 denoise 参数要调低比如 0.4 到 0.8。denoise 越大生成结果离原图越远。4.4 工作流导出为 API 格式工作流搭好并测试通过后可以导出为 API 格式的 JSON供后续程序调用。ComfyUI 界面右上角的“Save (API Format)”按钮可以导出。这个 JSON 文件里每个节点是一个字典带 class_type 和 inputs后续用 /prompt 接口提交时需要的就是这种格式。5. krea-2turbo 工作流功能测试与效果验证工作流搭好后建议按下面的顺序做一轮功能测试。5.1 文生图基础测试先在正面提示词里输入一个简单描述比如a wooden cabin on the lake shore at sunrise, warm light, high detail点击 Queue Prompt 后观察两个地方页面上的图片输出以及终端或控制台日志是否报错。第一次运行如果正常出图说明模型加载、CLIP 编码、采样、解码、保存整条链路是通的。此时重点观察采样步数和 cfg。如果出图出现过曝、发灰或细节不足优先调整采样参数而不是反复换提示词。5.2 不同提示词长度测试krea-2turbo 工作流对提示词的理解能力需要在长文本条件下验证。分别测试短提示词a red apple中等长度a red apple on a wooden table, soft window light, shallow depth of field长提示词一段包含主体、光线、镜头、风格、色彩倾向的完整描述长提示词测试的目的是确认 CLIP 编码和采样流程在长文本下不报错同时观察输出是否稳定。如果长文本下出图崩坏或风格漂移调整提示词结构把关键信息前置。5.3 不同采样参数测试Turbo 模型的特点是低步数下就有可用的图像可以快速跑一组不同 steps 的对比例如 3、4、6、8。每组固定同一个提示词和种子对比细节和稳定性。记录每组参数对应的运行时间和显存变化方便后续挑选最适合自己显卡的一套配置。对批量生成来说seed 可以固定也可以随机。固定 seed 适合复现用例随机 seed 适合探索生成结果。5.4 图生图测试图生图测试的重点是 denoise 参数。准备一张输入图片用 VAEEncode 接入工作流后分别测试 denoise 0.3、0.5、0.7观察与原始图的相似程度。轻微调色或细节增强denoise 应该偏低参考构图和颜色重绘denoise 可以调高。5.5 批量任务测试最简单的方式是把 EmptyLatentImage 的 batch_size 调成 4然后 Queue Prompt。一次采样会生成 4 张图但显存占用也会同步上升。如果显存不足改成循环调用脚本逐条提交任务避免一次性申请过多显存。6. 接口 API 与批量任务扩展ComfyUI 自带接口服务krea-2turbo 工作流部署在本地后不需要额外安装插件就能通过 HTTP 接口调用。6.1 接口服务启动启动 ComfyUI 时加上监听参数表示允许 HTTP 访问接口python main.py --listen 0.0.0.0 --port 8188生产环境不建议把服务直接暴露到公网应该监听在 127.0.0.1或者用反向代理做鉴权。6.2 提交任务ComfyUI 的 /prompt 接口接收 API 格式的工作流 JSON。下面是一个最小调用示例import json import requests server http://127.0.0.1:8188 workflow { 1: { class_type: CheckpointLoaderSimple, inputs: { ckpt_name: your-krea-2turbo.safetensors } }, 2: { class_type: CLIPTextEncode, inputs: { text: a wooden cabin on the lake shore at sunrise, clip: [1, 1] } }, 3: { class_type: CLIPTextEncode, inputs: { text: , clip: [1, 1] } },