Text Encode with Krea2 System Prompt
A Text Encode for Krea 2 That Hands You Its System Message
- clip
- CONDITIONING
Krea 2 is one of those models whose text encoder is a general-purpose LLM, so the prompt you type is a chat turn and the model ships with a built-in system message telling itself how to describe what it sees. UC_TextEncodeKrea2SystemPrompt is the text encode node that wraps your prompt in Krea's chat template and - the useful part - lets you replace that default system message with your own.
What it does
It takes a clip (Krea 2's Qwen-based LLM encoder), a prompt, and a system_prompt, and builds the ChatML-style template:
<|im_start|>system
<your system message><|im_end|>
<|im_start|>user
<your prompt><|im_end|>
<|im_start|>assistant
Leave system_prompt empty and it injects Krea's stock instruction instead - the "Describe the image by detailing the color, shape, size, texture, quantity, text, spatial relationships of the objects and background" message. That default is a big part of how Krea behaves, because it forces the encoder to produce a dense visual description before the image is generated. If you want to steer how Krea perceives the scene - "describe it as a cinematic wide shot with these exact lighting terms" - you replace that system message here.
The inputs
- clip - Krea 2's encoder.
- prompt - your generation or edit request.
- system_prompt - your replacement for Krea's built-in describe-the-image instruction. Empty = stock message.
Output: one CONDITIONING tensor, wired to the positive input like any other encode. Both text inputs support dynamic prompts.
Installing it
It's in ComfyUI-UtilsCollection (author: silveroxides):
cd ComfyUI/custom_nodes
git clone https://github.com/silveroxides/ComfyUI-UtilsCollection
Restart ComfyUI, or install "ComfyUI-UtilsCollection" via Manager. The pack's only requirements are opencv-python and typing-extensions.
What to keep in mind
Krea 2's encoder is an LLM, so structured instruction-style prompts beat tag lists - and if you replace the stock system message with something weaker, expect adherence to change. The famous Krea 2 caveat isn't the encoder though, it's the VAE: the model ships with the Qwen Image VAE, which the community widely dislikes for its over-smoothing and poor color, and swapping in a Wan-style VAE via a VAE-utils loader is a common fix. If your Krea 2 output looks washed out, that's the VAE, not this node. Also, this is Krea 2's system prompt encode - if you're after Krea 2 token-level attention tricks, the pack keeps those in separate experimental nodes.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| prompt | STRING | — | |
| system_prompt | STRING | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| CONDITIONING | CONDITIONING | — |