拓冰建站拓冰建站
首页 / 资讯中心 / 正文

Krea 2(K2)文生图 LoRA Space 实战指南:Turbo/Raw 双检查点、Transformer 级 LoRA 加载与 ZeroGPU 部署

Krea 2K2文生图 LoRA Space 实战指南Turbo/Raw 双检查点、Transformer 级 LoRA 加载与 ZeroGPU 部署【免费下载链接】skillsGive your agents the power of the Hugging Face ecosystem项目地址: https://gitcode.com/GitHub_Trending/skills7/skills本指南以开源仓库huggingface-lora-space-builder技能中 Krea 2 参考文档 为核心系统讲解 Krea 2K2流匹配文生图模型的架构组成、Turbo/Raw 双检查点协作机制、在diffusers中加载 Krea 2 LoRA 的正确姿势以及如何把 Krea 2 LoRA 构建成一个可发布到 Hugging Face SpacesZeroGPU的 Gradio 演示。读完你将掌握从拿到一个 Krea 2 LoRA到跑通推理并部署上线的完整技术链路并能避开guidance_scale约定、Transformer 级适配器 API 等最容易踩的坑。Krea 2 是什么模型架构与技术组成Krea 2简称 K2是一个基于**流匹配flow-matching的文生图text-to-image**扩散模型其架构由三部分组成主干网络一个12B 参数的稠密 DiTDiffusion Transformer采用**分组查询注意力grouped-query attention, GQA**机制文本编码器Qwen3-VL模型如Qwen/Qwen3-VL-4B-Instruct实现多层级特征聚合multi-layer feature aggregation用于把提示词编码为条件图像 VAEQwen-Image VAEdiffusers 中的AutoencoderKLQwenImage负责图像在潜空间与像素空间之间的编解码。在diffusers生态中Krea 2 对应的流水线类pipeline class是Krea2Pipeline。这一事实是后续所有加载代码的前提——如果你的diffusers版本里执行from diffusers import Krea2Pipeline失败说明当前安装的diffusers早于 Krea 2 的集成时间点需要升级仓库文档明确提示krea/Krea-2-Turbo与krea/Krea-2-Raw两个仓库的library_name均为diffusers。双检查点协作训练用 Raw推理用 TurboKrea 2 以两个配套检查点的形式发布二者的角色完全不同Repo角色用途krea/Krea-2-Turbo8 步蒸馏distilled版推理 / 演示— LoRA Space 的加载目标krea/Krea-2-Raw基础非蒸馏版LoRA 训练— 明确不用于推理仓库文档强调了一个极易搞反的关键点Krea 2 的 LoRA 是在 RAW 上训练的但要在 Turbo 上运行官方描述是 LoRA 在 Turbo 上表达强烈而 RAW 明确不适合推理——直接加载 RAW 做推理预期质量会很差。因此凡是做 LoRA Space 演示几乎一律加载krea/Krea-2-Turbo官方 LoRA 卡片也印证了这一点卡片上通常写明To be used onkrea/Krea-2-Turbo。这一训练基座与推理基座分离的设计思路在技能主文档 SKILL.md 的 Phase 2选择基础流水线中也被归纳为 Krea 2 家族的核心特征references/base-models/krea-2.md覆盖的就是text-to-image在 RAW 上训练在 Turbo 蒸馏检查点上推理/运行 LoRA这一场景。环境与依赖准备构建 Krea 2 LoRA Space 前需要确认以下依赖对应原文档 Required dependencies 一节diffusers必须包含Krea2Pipeline。如果导入失败需要升级diffusers必要时可考虑在requirements.txt中使用githttps://github.com/huggingface/diffusers的最新构建这与仓库中 Qwen-Image-Edit-2511、LTX-2 等新模型的处理方式一致见 LTX 参考文档。transformers版本需足够新以支持Qwen3-VL因为 Krea 2 的文本编码器是Qwen3VLModel典型实例Qwen/Qwen3-VL-4B-Instruct。torchvision必须显式包含。Qwen3-VL 的 processor 会以传递依赖的方式引入它但缺失时会在启动阶段直接抛ImportError——这类流水线组件在加载时才传递导入的依赖正是技能文档 SKILL.md 中推导requirements.txt时要求逐个纳入的原因类似的还有 Qwen-Image 家族的torchvision、LTX 的imageio[ffmpeg]。sentencepiece仅在启动阶段遇到与 tokenizer 相关的ImportError时需要添加。在仓库技能中Krea 2 参考文档位于references/base-models/目录下与 qwen-image.md、ltx.md 并列专门服务于 LoRA Space 构建流程中的选对基础流水线环节。默认加载与 LoRA 挂载完整可运行示例原文档给出的 Krea 2 Turbo 加载 LoRA 挂载的完整代码如下这是 LoRA Spaceapp.py的核心骨架import torch from diffusers import Krea2Pipeline pipe Krea2Pipeline.from_pretrained(krea/Krea-2-Turbo, torch_dtypetorch.bfloat16).to(cuda) pipe.transformer.load_lora_adapter(user/my-krea2-lora, weight_namemy_lora.safetensors) pipe.transformer.set_adapters(default, weights1.0) # include the LoRAs trigger word(s) from its card image pipe( a deer grazing in a forest, trigger words, num_inference_steps8, guidance_scale0.0, generatortorch.Generator(cuda).manual_seed(0), ).images[0]其中三个要点需要重点理解1. LoRA 通过 Transformer 的适配器 API 加载而不是流水线级 API。代码中的关键区别在于使用了pipe.transformer.load_lora_adapter(...)加pipe.transformer.set_adapters(default, weights1.0)而非许多其他模型使用的pipe.load_lora_weights(...)。这是官方 LoRA 卡片指定的加载方式是 Krea 2 与 Qwen-Image / FLUX 等模型在 LoRA 接入上的核心差异。注意set_adapters的适配器名称 default 需要与load_lora_adapter内部注册的名称一致。2. 尊重 LoRA 卡片的 trigger word。Krea 2 LoRA 通常带有关键词trigger word需要在提示词中包含才能激活 LoRA 效果。示例代码中以trigger words占位实际应替换为 LoRA 卡片中声明的关键词。在 adapting-to-the-lora.md 中对此的建议是在 UI 层自动把 trigger word 前置到用户提示词而不是要求用户手动输入。3. 使用固定种子便于复现。通过torch.Generator(cuda).manual_seed(0)固定随机种子这也是技能文档 tasks.md 中对所有 T2I 任务的基线要求——UI 必须提供种子控件并在返回结果的同时返回实际使用的种子。从依赖角度这段代码还对应一个注意点weight_namemy_lora.safetensors必须与 LoRA 仓库中实际的.safetensors文件名一致。仓库文档 zerogpu-and-publishing.md 给出了一整套从多个权重文件中挑选正确 LoRA 文件的决策顺序先看 README 推荐、再取仓库根目录的pytorch_lora_weights.safetensors、再退到最新的训练检查点否则询问用户。若文件名对不上Space 会构建成功但首次推理时报weight_name相关错误——这正是发布后必须做 smoke test 的原因之一。推理配方Turbo 与 Raw 的各自定位Turbo演示默认num_inference_steps8guidance_scale0.0关闭 guidanceLoRA 权重1.0。这是官方推荐的推理配方应作为 Space 的默认参数。Raw仅用于训练不要发布基于 RAW 的推理演示。它的输出质量是刻意偏低的——它是供你微调的可塑基座微调完成后要在 Turbo 上运行。这一蒸馏版锁死步数与 CFG的模式与 Qwen-Image 家族上的 Lightning 蒸馏 LoRA4 步或 8 步、true_cfg_scale1.0如出一辙。在 UI 设计层面tasks.md 明确要求对于 few-step 蒸馏类 LoRALightning、Turbo、schnell隐藏步数与 guidance 滑块直接把推荐值写死为默认避免用户误调破坏质量。guidance_scale约定Krea 2 的独特坑点这是 Krea 2 最容易踩的一个约定差异原文档专门以 gotcha 标注Krea 2只要guidance_scale 0就启用 guidance其速度计算方式为cond guidance_scale * (cond − uncond)该式等价于通常的 CFG 公式其中 scale 为1 guidance_scale因此Turbo 用guidance_scale0.0关闭 guidance而不是其他流水线习惯的1.0。这一约定与多数1.0 表示关闭的流水线不同。如果你把其他模型的默认值如 1.0直接搬过来Turbo 实际上会以 CFG 模式运行效果与预期偏离。这也是技能文档反复强调信任 LoRA 卡片上的参数步数、guidance、LoRA scale、dtype的原因——卡片上的推理片段是参数真相来源。分辨率对齐16 的倍数与默认 1024×1024Krea 2 对height/width有硬性约束必须能被 16 整除约束来源为vae_scale_factor * patch_size。如果传入非 16 的倍数流水线会向上取整到最近的 16 的倍数并发出警告默认分辨率为1024×1024。这与 Qwen-Image 家族的 16 像素对齐规则一致qwen-image.md 同样要求 width/height 为 16 的倍数。在 Space UI 中实现时应提供一个宽高比下拉框由代码自动把所选宽高比换算为 16 对齐的整数尺寸——仓库文档给出了通用辅助函数模式def round_to_bucket(w, h, multiple16): return (w // multiple) * multiple, (h // multiple) * multiple并按 tasks.md 的建议把换算后的宽高以只读文本形式展示给用户。将 Krea 2 LoRA 落地为 ZeroGPU SpaceKrea 2 参考文档的 ZeroGPU 章节专门说明了该模型的运行性能特征这里结合技能主文档与 zerogpu-and-publishing.md 的完整规则展开。ZeroGPU 运行规则与时长预算ZeroGPU 是 Hugging Face Spaces 的共享无服务器 GPU 池每次请求分配 GPU、在spaces.GPU函数调用期间持有、调用结束后释放。对 Krea 2 Space 而言必须遵守以下规则模型在模块作用域module scope加载并执行pipe.to(cuda)不要懒加载在 GPU 函数内部。ZeroGPU 的 CUDA 模拟模式允许启动期.to(cuda)正常工作模块级放置比延迟放置显著更快。推理函数用spaces.GPU(duration...)装饰。Krea 2 Turbo 8 步 1024×1024 的生成很快约20–40 秒建议把 duration 设置得明显高于这个值仓库给出的典型 T2I 时长参考few-step T2I 30–60 秒、标准 T2I 60–90 秒例如spaces.GPU(duration120)。duration 设得越短队列优先级越高但必须给足余量。不要使用torch.compile——它与 ZeroGPU 的进程模型不兼容GPU 进程按调用 fork。技能文档明确指出这对 Qwen-Image、Krea 2 等所有模型一视同仁。显存规模12B DiT Qwen3-VL 编码器的组合可以放进 ZeroGPU 默认的large48GB VRAM档位如果在默认尺寸下 OOM改用spaces.GPU(sizexlarge)96GB、完整 Blackwell但消耗 2 倍每日配额且排队更长。输入校验放在 GPU 函数最前面在spaces.GPU内抛gr.Error也会消耗配额最好把校验放到非装饰函数里。gr.Examples必须使用cache_examplesTrue, cache_modelazy否则构建期无 GPU 可用会直接失败。requirements.txt 的推导原则技能文档 SKILL.md 给出了一套通用的requirements.txt推导顺序Krea 2 Space 适用同一套规则机械地列出app.py中每个顶层非标准库 import补上基础模型参考文档 Required dependencies 一节列出的非显然依赖——对 Krea 2 而言就是torchvisionQwen3-VL processor 传递依赖和按需的sentencepiece补上 LoRA 卡片明确要求安装的依赖基础 ML 栈diffusers、transformers、accelerate、peft、safetensors。反向约束同样重要不要在requirements.txt里列gradio由 README YAML 的sdk_version控制、torch、spaces、huggingface_hubZeroGPU 容器已预装pin 版本反而可能冲突xformers与flash-attn也不要反射式添加前者在 Blackwell 上存在 FA3 dispatch 误判硬件导致内核启动崩溃的风险见 SKILL.md 的详细说明。README.md 前端配置Spaces 通过 README 顶部的 YAML frontmatter 选择 ZeroGPU--- title: human-readable title emoji: colorFrom: pink colorTo: purple sdk: gradio sdk_version: current Gradio version app_file: app.py pinned: false hardware: zero-a10g short_description: one short line for the Space tile, ~60 chars max models: - krea/Krea-2-Turbo - lora repo ---注意hardware: zero-a10g是 ZeroGPU 的遗留标识符——实际硬件是 NVIDIA RTX Pro 6000 Blackwell但标识符沿用至今。ZeroGPU 需要 PRO/Team/Enterprise 账号非订阅用户在创建时若被 403 拒绝可去掉space_hardware参数重试并保留 YAML 中的hardware字段Space 会先以 CPU 运行。short_description建议控制在约 60 字符以内超长会在服务端 YAML 校验时返回 400。UI 设计要点与发布验证Krea 2 是标准的 T2I LoRA SpaceUI 应保持精简tasks.md 中的 T2I 基线提示词输入框、宽高比选择器、种子控件含随机化种子开关、Advanced折叠面板。由于 Krea 2 Turbo 是 8 步蒸馏模型步数与 guidance 滑块应当隐藏而非暴露。返回结果时同时返回实际使用的种子以便复现并用gr.Progress(track_tqdmTrue)透出 diffusers 的内部进度条。示例提示词应从 LoRA 卡片的示例 prompt 中提取放入gr.Examples。发布后务必执行 smoke testSKILL.md Phase 6等待 Space 构建完成、用gradio info校验端点签名、用gradio predict跑一次真实推理。Krea 2 Space 常见的构建期隐性失败包括weight_name与仓库实际文件名不符、diffusers版本不含Krea2Pipeline此时需把requirements.txt切到 git 版 diffusers、缺少torchvision导致的启动期ImportError——这些错误都能让构建显示绿色却只在首次推理时才暴露。注意事项清单Things to watch总结 Krea 2 LoRA Space 开发中的关键红线演示加载 Turbo不要加载 RAW。RAW 是训练基座不用于推理。guidance_scale0关闭 guidanceKrea 的独特约定不同于1.0 表示关闭的流水线。Turbo 配方 8 步 guidance_scale0.0。LoRA 使用pipe.transformer.load_lora_adapterset_adapters(default, …)Transformer 级而非流水线级pipe.load_lora_weights并且要阅读 LoRA 卡片中的trigger word。新流水线 → 升级 diffusers若from diffusers import Krea2Pipeline失败说明安装的diffusers早于集成版本升级后重试。围绕这些规则SKILL.md 给出了完整的六阶段工作流收集 LoRA 信息 → 选择基础流水线并核对基础模型卡片 → 设计 UI → 三文件一体编写 → 发布私有 Space → smoke testKrea 2 参考文档正是该工作流中基础流水线选择环节的直接依据——按此流程你可以在数十秒内把一个 Krea 2 LoRA 从仓库卡片转化为可在线体验的 Gradio 演示。【免费下载链接】skillsGive your agents the power of the Hugging Face ecosystem项目地址: https://gitcode.com/GitHub_Trending/skills7/skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门