krea2-txt2img · git:20260626.80f5c48 · 2026-06-26 · sha256 3835b9566106b3dc
krea2-txt2img git:20260626.80f5c48A
Immutable. This exact content is served forever at /api/v1/blob/3835b9566106b3dc.
--- name: krea2-txt2img description: Build Krea 2 Turbo txt2img workflows — native krea2 CLIPLoader, Qwen3-VL encoder, Qwen image VAE, 8-step turbo settings, and Ideogram-style JSON prompting globs: - "**/*.json" --- # Krea 2 Text-to-Image Workflows ## Overview Krea 2 is a **12B-parameter Diffusion Transformer** from Krea.ai (released June 2026, weights open-sourced under the Krea 2 Community License — free commercial use up to 50 seats). Two variants: 1. **Krea 2 Raw** — the base checkpoint before extra post-training. For fine-tuning / maximum fidelity, more steps. 2. **Krea 2 Turbo** — post-trained + **distilled**; generates in **~8 steps at cfg 1**. This is what the `krea2-txt2img` pack ships. Krea 2 has **native ComfyUI support** (`comfy/text_encoders/krea2.py`, ComfyUI ≥ v0.26.0): the `CLIPLoader` uses **`type=krea2`**, with a **Qwen3-VL 4B** text encoder and the **Qwen image VAE**. The Qwen3-VL encoder drives strong prompt adherence and structured-JSON prompts. ## Models (all from the `Aitrepreneur/FLX` mirror; official: `krea/Krea-2-Turbo`) | Slot | File | Notes | |---|---|---| | `diffusion_models/` | `krea2_turbo_fp8.safetensors` | 12B Turbo, fp8 — RTX 4000/3000/2000 | | `diffusion_models/` | `krea2_turbo_mxfp8.safetensors` | RTX 5000 (Blackwell) native fp8 | | `text_encoders/` | `qwen3vl_4b_fp8_scaled.safetensors` | Qwen3-VL 4B encoder | | `vae/` | `qwen_image_vae.safetensors` | Qwen image VAE | ## Node stack - **core**: `UNETLoader` (krea2_turbo) → `CLIPLoader` (type=krea2) → `VAELoader` (qwen_image_vae), wired via KJNodes `SetNode`/`GetNode` buses into a subgraph (`CLIPTextEncode` → `KSampler` → `VAEDecode`, with an rgthree `Any Switch` that picks the manual prompt vs the JSON-builder prompt). - **rgthree-comfy**: Power Lora Loader, Any Switch, Label, Fast Groups. - **ComfyUI-KJNodes**: Set/Get, `Ideogram4PromptBuilderKJ`, `ImageSharpenKJ`. - **ComfyUI-RBG-SmartSeedVariance**: `RBG_Smart_Seed_Variance` (opt-in). - **ComfyUI-ConditioningKrea2Rebalance**: `ConditioningKrea2Rebalance` — the Krea 2 **safety-filter bypass**. Ship it **bypassed**; the filter is intact by default. ## Settings that matter - **steps 8, cfg 1** — Turbo is distilled; more steps/higher cfg over-cooks it. - **sampler `er_sde`, scheduler `simple`** — the verified defaults. - **1920×1080** default; Krea 2 handles a wide aspect range. - The JSON prompt-builder (`Ideogram4PromptBuilderKJ`), seed-variance, and laplacian-sharpen post-proc ship **bypassed** — opt-in. ## JSON / area prompting Like Ideogram 4, Krea 2's Qwen3-VL encoder reads structured prompts (per-region desc + bounding boxes + palettes). The pack ships with BOTH a manual-prompt node and the JSON builder, picked by an rgthree `Any Switch` — and the JSON builder ships **bypassed**, so by default the manual prompt wins. To drive it from the JSON builder: **set `Ideogram4PromptBuilderKJ` (node 14) to mode 'active' and the manual prompt (node 143) to mode 'bypass'** — on the live canvas use `panel_set_node_mode` for both, then re-read with `panel_get_graph` to confirm the modes actually flipped (the `Any Switch` feeds whichever is active into the encoder). Do NOT assume the switch is already on the path you want — a stale bypass here silently renders the wrong (old manual) prompt. After the render, VERIFY the image matches the JSON you set (view it) BEFORE continuing; if it doesn't, the builder is probably still bypassed or a field is stale — fix and rerun. Gotchas learned the hard way: - **Set ALL the builder fields**, not just the prompt/boxes — `background`, `technical`, `style`, `lighting` (widgets 3/5/6/7). Leaving stale values leaks content (a leftover celebrity portrait bled into a tea still-life). - **Keep palettes minimal or empty.** A rich top-level palette can render as a literal color-swatch strip down the edge of the image. Empty `palette: []` (top-level and per-box) gives a clean full-frame result. - Add "no people / single full-frame photograph" to `style` for object/landscape scenes — Krea 2 follows it well. ## Render-verified 5 images render crisp at 1920×1080 / 8 steps / cfg 1 / er_sde — 3 prose (wildlife, urban night, still-life) + 2 Ideogram-JSON (still-life, landscape). **Note:** the `ImageSharpenKJ` (rcas 0.55) before `SaveImage` ships **active** — bypassing it drops the image link (a converter gap: bypass-passthrough doesn't cross a subgraph IMAGE output), and the contrast-adaptive sharpen suits Krea 2's crisp look anyway. ## Gotchas - `CLIPLoader: 'krea2' not in list` → ComfyUI too old; update to ≥ v0.26.0. - `Torch not compiled with CUDA enabled` → reinstall torch for your CUDA tag (`--index-url https://download.pytorch.org/whl/cu128`).