⚗ Alchemica · Two-phase prompt [1.0, use Alchemica Two-Phase Text Encode]
Scene for the picture, detail for the texture
- clip
- positive_scena
- positive_dettaglio
- testo_dettaglio
Krea 2 Turbo doesn't build an image steadily. It decides what the image is in the first step, then spends the rest of the trajectory deciding how it looks. One prompt box forces you to write for both of those jobs at once. This node gives you two.
The idea
Measured on the actual checkpoint: 98.5% of the composition is locked at sigma ≈ 0.87, and textural sharpness grows between sigma 0.57 and 0.13. So there's a hand-off point on the trajectory where the model stops placing things and starts rendering them. Above it, only the composition part of your prompt can act. Below it, colour and global style are already frozen - but texture, fabric, skin and optics are still up for grabs.
AlchemicaPromptFasi encodes two texts against that boundary:
- scena - subject, pose, framing, setting, overall light, colours and style. The author includes colours and style here deliberately; they're decided in the earliest step, so a late prompt simply cannot install them.
- dettaglio - rendering only: skin, materials, grain, optics. Empty is allowed, and empty means no second phase at all.
It returns positive_scena, positive_dettaglio, and testo_dettaglio - the string the node actually encoded for the detail slot, which is handy when you use the merge mode and want to see the concatenation.
The merge mode, and why the default is the right one
unione has two options:
aggiungi alla scena(default) - the detail conditioning becomes scene + detail joined into one string. Recommended, and for a plain reason: the detail text on its own contains no subject. Below the hand-off sigma the model still needs to know what it is texturing, and stripping the scene out makes it forget.solo dettaglio- the detail text replaces the scene text for the second phase.
Stick with the default unless you're deliberately experimenting.
Why the split is not cosmetic
The author's own same-seed test is the argument: keeping only the scene prompt gave an image 0.996–0.997 similar to the full two-phase output. A single merged prompt using the same words scored 0.35–0.71 - that's a different picture, not a different finish. Splitting the text where the model already splits its own work preserves resemblance; cramming everything into one prompt at the wrong depth doesn't.
There's a practical knock-on. If you're comparing two prompts and everything changes, you can't tell which change did it. Two-phase prompting gives you a composition dial and a rendering dial that don't interfere, which is worth more than any single result.
Wiring
⚗ Two-phase prompt ─ positive_scena ─────→ AlchemicaKrea Pro · positive
└ positive_dettaglio ─→ AlchemicaKrea Pro · positive_dettaglio
clip comes from ⚗ Load Krea 2 (or any CLIPLoader set to type krea2). The sampler-side socket only exists on AlchemicaKrea Pro; the plain AlchemicaKrea takes a single positive, and the advanced AlchemicaSampler gets the second phase through its option nodes instead.
If you want the AI to write both halves for you rather than type them yourself, ⚗ Prompt enhancer outputs scena and dettaglio as strings - feed those two into this node's text fields and you get the encoding handled properly, including the merge.
Installing
Part of the pack, so one clone:
cd ComfyUI/custom_nodes
git clone https://github.com/Nessuno76/ComfyUI-AlchemicaSampler
Restart the ComfyUI server - the pack's nodes don't register on a browser reload. It's under Add Node → ⚗ AlchemicaMente → sampling, needs no extra models, and pulls in no Python dependencies beyond what ComfyUI already has.
Traps
Putting "more detail, 8k, sharp focus" in the detail box and expecting the composition to change. It can't. Change scena for that.
Leaving dettaglio empty and wondering where the second phase went. Empty detail means the node hands the scene encoding to both outputs - you get normal single-prompt behaviour, and both sampler sockets receive effectively the same conditioning. That's a feature, not a bug, but it's why nothing appears to happen.
Expecting the detail prompt to reach the whole image. With cross-fade at 0 (the sfumatura default on the Pro sampler) the switch is hard. Anything the model decided above the hand-off sigma - framing, palette, how many people are in the shot - is already committed.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| clip | CLIP | — | |
| scena | STRING | Subject, pose, framing, setting, overall light, colours and style | |
| dettaglio | STRING | Rendering: skin, materials, grain, optics. Empty = no second phase | |
| unione | COMBO | aggiungi alla scena | aggiungi alla scena (add to scene) = the detail prompt is scene + detail (recommended: the model does not forget the subject). solo dettaglio (detail only) = replaces the scene entirely |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| positive_scena | CONDITIONING | — |
| positive_dettaglio | CONDITIONING | — |
| testo_dettaglio | STRING | — |