Krea 2 Large
The hype model, served hot via API with no 24GB VAE hunt
- referenceImages
- advancedFeatures.watermark.image
- image
Krea 2 was the most hyped open image model of the first half of 2026, and this node is the easiest possible way to actually use it: the model runs on Runware's cloud, so you skip the three-file install dance that trips up every local Krea 2 beginner - the model checkpoint, the Qwen3-VL text encoder, and the Qwen-Image VAE. None of that exists here. Type a prompt, hit queue, get an IMAGE back.
One honest caveat up front: this is the hosted Krea 2, not the open Krea-2-Raw checkpoint people benchmark on local hardware. Krea itself said the open weights went through an alignment pass the hosted version never got. The community verdict on that split is harsh - "alignment training is a nice euphemism for lobotomy" was the friendliest phrasing - so if you're doing serious local work, know that you're renting a slightly different model than the one on HuggingFace. But for a quick, gorgeous image with zero setup, the API tier is hard to beat.
How it works
Standard pack mechanics: the node sends model AIR krea:krea@2-large with an imageInference task to Runware's REST API via the SDK, and the returned image comes back as a native IMAGE tensor - wire it into Preview Image or Save Image. referenceImages sockets accept IMAGE tensors for image-guided work, and there's a watermark socket if you're serving clients who want one.
The settings that matter
positivePrompt- the star. Krea prompts best in natural language; long, specific descriptions beat short ones, and wrap any text you want rendered in quotes. The model has deep pop-culture knowledge, so "Teen Titans" gives you Teen Titans Go - be specific.width/height- required, 1024 default.settings.creativity- the dropdown most people miss, and it's genuinely interesting:raw,low,medium,high.rawmaps to the undistilled Raw checkpoint behavior, which is the one Krea recommends training on;mediumis the default. Low follows the prompt tightly, high lets the model run with its own interpretation.seed- set it for reproducible runs.numberResults- 1–20 variations per queue. Each costs money, so don't max it out by reflex.advanced_json- the escape hatch forsettings.moodboards(feed it a moodboard as JSON to steer style).
The output
One image socket, type IMAGE, straight into any preview or save node. Output format defaults to JPG at quality 95 - switch to PNG if you need lossless.
Installing it
One-time pack install, same for every node here:
cd ComfyUI/custom_nodes
git clone https://github.com/Runware/ComfyUI-Runware
pip install -r ComfyUI-Runware/requirements.txt
Restart, then set your key in ComfyUI Settings → Runware API key, RUNWARE_API_KEY, or runware auth login. Dependencies are just the SDK, pillow, and soundfile - no 24GB text encoder to babysit.
Where people get burned
The main trap is assuming the API model behaves exactly like the open weights - it doesn't, in both directions. And since this is the Large tier, it's the pricier of the two Krea nodes; iterate on Runware_krea_2_medium first and spend Large credits on the winner. If your prompt comes back generic, check settings.creativity before you blame the model - you're probably sitting at medium when the shot needs high.
Inputs (21)
| Name | Type | Default | Description |
|---|---|---|---|
| positivePrompt | STRING | Text prompt describing elements to include in the generated output. | |
| referenceImagesopt | IMAGE | — | |
| advancedFeatures.watermark.imageopt | IMAGE | — | |
| sizeopt | COMBO | 1K (1:1) | Output size. Only one of resolution or dimensions is sent. |
| seedopt | INT | 00–9223372036854776000 | Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range. |
| numberResultsopt | INT | 11–20 | Number of results to generate. Each result uses a different seed, producing variations of the same parameters. |
| advancedFeaturesopt | BOOLEAN | false | Enable to set advancedFeatures. Off uses the model's default. |
| advancedFeatures.watermark.bgColoropt | STRING | Background color in hex format. | |
| advancedFeatures.watermark.displayPositionopt | COMBO | (default) | Watermark position. |
| advancedFeatures.watermark.fontColoropt | STRING | Text color in hex format. | |
| advancedFeatures.watermark.opacityopt | BOOLEAN | false | Enable to set advancedFeatures.watermark.opacity. Off uses the model's default. |
| advancedFeatures.watermark.opacity_valueopt | FLOAT | 0.100.1–1 | Watermark opacity. |
| advancedFeatures.watermark.textopt | STRING | Watermark text. | |
| settings.creativityopt | COMBO | medium | Creativity level. Controls how closely the model follows the prompt versus generating its own interpretation. |
| safetyopt | BOOLEAN | false | Enable to set safety. Off uses the model's default. |
| safety.checkContentopt | BOOLEAN | false | Enable or disable content safety checking. |
| ttlopt | BOOLEAN | false | Enable to set ttl. Off uses the model's default. |
| ttl_valueopt | INT | 60 | Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`. |
| outputFormatopt | COMBO | JPG | File format for the generated image. |
| outputQualityopt | INT | 9520–99 | Compression quality of the output. Higher values preserve quality but increase file size. |
| advanced_jsonopt | STRING | Optional JSON merged into the request. For: settings.moodboards |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |