Nodes/DiffSynth-ComfyUI/DiffSynth: Krea 2 Inference
ComfyUI Node

DiffSynth: Krea 2 Inference

Krea 2 Inference — 8 steps turbo or 52 steps raw, pick your CFG

By modelscope·Created about a month ago·Updated a day ago· 8
DiffSynth: Krea 2 Inference
  • pipe
  • image
◄prompt►
◄seed0►
◄num_inference_steps52►
◄height1024►
◄width1024►
◄negative_prompt►
◄cfg_scale3.5►
◄mu0.0►
◄context_pre_computetrue►

Krea 2's selling point is that it's a base - 12B trained from scratch, aligned rather than safety-muzzled, and shipped with zero-day LoRA support so the community could start stacking on it immediately. This node is where you generate with it, and its defaults are set for the Raw checkpoint rather than the fast one, which is the first thing to know.

Required sockets: pipe (from the Krea 2 Loader), prompt, seed, num_inference_steps (default 52), height, width (1024). One output: image → Save Image.

Two configurations, and they don't overlap

Raw: 52 steps at CFG 3.5 (the node's cfg_scale default). This is the checkpoint's tuned setting, it's the slow path, and it's the one to use when you're evaluating how good the model is.

Turbo: 8 steps at CFG 1.0. The shipped turbo template is exactly that, and it renders at 2048×2048 while it's at it. Turbo is distilled - guidance is baked into the weights - so raising CFG above 1 doesn't buy adherence, it applies the correction a second time and burns the image while roughly doubling the render time. If you're stuck at CFG 3.5 thinking you're being thorough, this is your sign.

The other two sockets:

  • negative_prompt - real at CFG 3.5 on Raw, discarded at CFG 1 on Turbo. On Turbo, put the constraint in the positive prompt as a presence instead: "clean studio background, sharp focus" rather than a list of things you don't want.
  • mu - default 0, a sampling-schedule shift. The templates never touch it and neither should you until you've got a look you like and want a variation.
  • context_pre_compute - default on, and leave it on. It's a performance path for the prompt context; turning it off only makes sense if you're debugging something specific.

Prompting Krea 2

Natural language, long and specific, is the documented style - this is not a tag model. And there's one trick worth internalizing: put words you want rendered as text in quotes. Krea's own prompting notes call for it, and it's the difference between a sign that says what you asked for and a sign that says something adjacent.

Install

# Manager: search "DiffSynth-ComfyUI" → Install → restart
pip install git+https://github.com/modelscope/DiffSynth-Studio.git
cd ComfyUI/custom_nodes && git clone https://github.com/modelscope/DiffSynth-ComfyUI.git

Template tab → DiffSynth Krea 2 raw and turbo workflows. Both exist, they're the same graph with different model ids, and loading them side by side is the cleanest way to feel the 8-step/52-step tradeoff for yourself. Weights download on first execute from ModelScope by default; the Qwen3-VL encoder is a separate multi-GB pull.

Troubleshooting

Muddy, low-contrast output on Turbo: cfg_scale is above 1 - set it to 1.0 and, if anatomy is the problem, nudge to 1.2-1.5 and double the steps to 8 rather than pushing CFG further. Washed-out Raw output: your CFG probably slid down to 1; Raw wants its 3.5. Everything slow: you're on Raw at 52 steps, which is the point of Raw - use the Turbo checkpoint for iteration and Raw for the final pass. Text in the image garbled: quote the string, and keep it short. And on VRAM, 8GB is the fp8 floor and 16-24GB is comfortable, so if a 2048×2048 turbo run dies, that's memory rather than the sampler - the VRAM Limit buffer and a CPU-offload VRAM Config are the levers.

CategoryDiffSynth/inference

Inputs (10)

NameTypeDefaultDescription
pipeDIFFSYNTH_PIPE—
promptSTRING—
seedINT00–4294967295—
num_inference_stepsINT521–200—
heightINT102464–4096—
widthINT102464–4096—
negative_promptoptSTRING—
cfg_scaleoptFLOAT3.50–10000—
muoptFLOAT0.00–10000—
context_pre_computeoptBOOLEANtrue—

Outputs (1)

NameTypeDescription
imageIMAGE—