Comfyui Workflow: Krea 2 + SesquiLSR Latent Upscale

Introduction
Some workflows feel like a packed suitcase. This one feels like a linen dress in a warm breeze: light, intentional, and surprisingly flattering once the light hits it.
Krea 2 already paints like it has taste. Pair the Turbo checkpoint with Logan Booker’s tiny SesquiLSR latent upscaler and you get a two-pass recipe that stays in latent space the whole way — no decode-upscale-reencode detour, no soggy bicubic stretch. Draft the scene at a comfortable megapixel, let a 12 MB specialist grow the latent 1.5×, then refine with a whisper of denoise.
That is the whole romance. Fast first kiss. Learned second look. A finished frame that still remembers the golden hour you asked for.
Download the ready-to-drop graph here, then keep reading for the best settings to start with and what they mean.
The Magic
Krea 2 is Krea’s from-scratch 12B image model. Think of it as a single-stream diffusion transformer that listens to a vision-language encoder instead of a classic CLIP last-layer snapshot. The open release comes in two moods that were designed to dance together:
- RAW — the undiluted pretrain. Diverse, malleable, the checkpoint you train LoRAs on.
- Turbo — an 8-step distilled sibling. This graph is built for Turbo: eight steps, CFG 1, and you are already looking at a finished draft.
The text encoder is Qwen3-VL 4B with a special ComfyUI type: krea2. That type is not a decoration. Krea 2 taps twelve hidden layers of the encoder and fuses them, so a plain CLIP load will give you a polite shrug instead of a portrait. The VAE is the Qwen Image VAE — same family as Wan 2.1 latents — which is why the upscaler format below is Wan 2.1, not “Krea” as a separate menu item.
SesquiLSR is the other half of the spell. Sesqui is Latin for one-and-a-half, and the name still fits even though the node now accepts any scale from 1.0× to 2.0×. It is a learned latent upscaler (~3M parameters, about 12 MB of weights), not a resize filter wearing a fancy hat. It never touches pixels. It never asks you to wire a VAE into the upscale node. It just looks at the latent, invents plausible structure at the new size, and hands a cleaner tensor to stage 2.
That cleanliness is the whole point. Bislerp and bicubic smear frequencies. SesquiLSR does not, so stage 2 can sit at denoise 0.25 instead of the 0.35–0.45 people reach for after a sloppy resize. Less drift. More of the pose, the wind, the chiffon still doing what you asked.
The graph itself is four sunny neighborhoods:
- Loaders — UNET, optional LoRA, AuraFlow shift, CLIP (
krea2), VAE. - Prompt + size + seed — one positive encode, a zeroed negative (CFG is 1, so negatives are ceremonial), a resolution picker aimed at ~1 MP, a randomizable seed.
- Stage 1 — 8-step Turbo draft plus a preview decode so you can judge the composition before you spend the upscale.
- SesquiLSR + Stage 2 — Wan 2.1 format, 1.5×, then another 8-step pass at denoise 0.25, final decode, preview, save.
Pro Tip
Keep CFG at 1 on both samplers and leave the negative path as ConditioningZeroOut. Turbo was distilled to live there. Turning CFG up does not “add quality” on this model — it usually adds plastic skin and a faint sense that the light got embarrassed. If stage 2 starts wandering off the draft, do not crank CFG. Drop denoise to 0.20 instead. That single slider is the hemline adjustment this dress actually needs.
Step-by-Step Guide
1. Update ComfyUI until Krea 2 is native
You need a build that lists krea2 inside CLIPLoader. That support landed in the 0.26 era of ComfyUI. If the type is missing, update first. No amount of node wrangling will invent an encoder Comfy does not know how to tap.
2. Drop in the three model files
ComfyUI/models/
├── diffusion_models/ ← your Krea 2 UNET (Turbo FP8 is the friendly default)
├── text_encoders/ ← qwen3vl_4b_fp8_scaled.safetensors
└── vae/ ← qwen_image_vae.safetensorsOfficial Comfy-packaged weights live with Comfy-Org’s Krea-2 repo on Hugging Face. Point the UNET loader at Turbo for this recipe. RAW wants a different step count and a different personality; do not mix the two in the same sampler settings and then wonder why the sunset looks confused.
3. Install SesquiLSR
cd ComfyUI/custom_nodes
git clone https://github.com/LoganBooker/SesquiLSR.gitRestart ComfyUI fully — a browser refresh is not a restart, darling. The node you want is SesquiLatentUpscale. Weights ship inside the repo (upscaler_Wan21.safetensors). Format on the node: Wan 2.1. That same adaptor covers Wan 2.x, Krea 2, Anima, and Qwen Image because they share the raw VAE latent layout.
4. Load the workflow
Download Krea2_SesquiLSR_Share.json from the file card above, then drag it onto the ComfyUI canvas. If a helper node such as ResolutionSelector, SeedNode, or OptionalLoraLoaderModelOnly is missing, swap it for the stock equivalent: type width and height by hand, use a primitive seed, or a regular LoRA loader set to strength 0.
5. Set the loaders
- UNET: your Krea 2 diffusion model.
- Optional LoRA: leave on
Noneunless you trained on RAW and want to wear that LoRA on Turbo (that pairing is the official recommendation). - Shift: 1.15 on
ModelSamplingAuraFlow. That is the graph’s default; treat it like a gentle posture cue, not a hero slider. - CLIP: Qwen3-VL 4B, type krea2, device default.
- VAE: Qwen Image VAE.
6. Trust the stage-1 settings, then queue
Stage 1 is already tuned for Turbo:
- Steps: 8
- CFG: 1
- Sampler: euler
- Scheduler: simple
- Denoise: 1
- Size: about 1 MP, 16:9 in the bundled beach scene
The included prompt is a cinematic golden-hour portrait on a weathered causeway — honey-red hair, wind-caught chiffon, Portra warmth — so you can judge skin, fabric motion, and horizon haze before you write your own love letter.
7. Let SesquiLSR grow the latent
model_format: Wan 2.1
scale: 1.5
half_precision: true1.5× on a 1 MP draft lands you near 2.25 MP without a pixel-space detour. You can push to 2.0× if VRAM is feeling generous. Stay inside 1.0–2.0; that is the range the little network was taught.
8. Refine, don’t reinvent
Stage 2 copies the same sampler recipe, with one change:
- Denoise: 0.25
If the second pass starts changing the face, the dress, or the weather, slide to 0.20. If it looks like a slightly larger photocopy, sneak up toward 0.30. The learned upscaler already gave you structure. Stage 2 is jewelry, not a second outfit.
9. Read the previews
Stage 1 preview is your composition check. Final preview is after the upscale-and-refine. Saves land with the prefix Krea2_Share. Fix the seed when you are comparing sliders; randomize it when you are hunting a new breeze.
Sweet-spot cheat sheet
Stage 1 8 steps · CFG 1 · euler / simple · denoise 1.00 · ~1 MP
SesquiLSR Wan 2.1 · scale 1.5 · half precision on
Stage 2 8 steps · CFG 1 · euler / simple · denoise 0.25 (0.20 if it drifts)
Shift 1.15
Negative zeroed (CFG 1 does not want a lecture)Always fool around. The graph is a starting posture, not a museum rope.
The workflow JSON
Drop this onto the canvas if you would rather paste than download:
{"id":"krea2-t2i-sesquilsr-share","revision":0,"last_node_id":23,"last_link_id":24,"nodes":[{"id":1,"type":"UNETLoader","pos":[40,80],"size":[380,106],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"unet_name","name":"unet_name","type":"COMBO","widget":{"name":"unet_name"},"link":null},{"localized_name":"weight_dtype","name":"weight_dtype","type":"COMBO","widget":{"name":"weight_dtype"},"link":null}],"outputs":[{"localized_name":"MODEL","name":"MODEL","type":"MODEL","links":[1]}],"title":"1. Pick your Krea2 UNET / diffusion model","properties":{"Node name for S&R":"UNETLoader"},"widgets_values":["","default"],"widgets_values_named":{"unet_name":"","weight_dtype":"default"}},{"id":2,"type":"OptionalLoraLoaderModelOnly","pos":[40,240],"size":[380,106],"flags":{},"order":7,"mode":0,"inputs":[{"localized_name":"model","name":"model","type":"MODEL","link":1},{"localized_name":"lora_name","name":"lora_name","type":"COMBO","widget":{"name":"lora_name"},"link":null},{"localized_name":"strength_model","name":"strength_model","type":"FLOAT","widget":{"name":"strength_model"},"link":null}],"outputs":[{"localized_name":"MODEL","name":"MODEL","type":"MODEL","links":[2]}],"title":"Optional LoRA (None = unloaded)","properties":{"Node name for S&R":"OptionalLoraLoaderModelOnly"},"widgets_values":["None",1],"widgets_values_named":{"lora_name":"None","strength_model":1}},{"id":3,"type":"ModelSamplingAuraFlow","pos":[40,400],"size":[380,82],"flags":{},"order":10,"mode":0,"inputs":[{"localized_name":"model","name":"model","type":"MODEL","link":2},{"localized_name":"shift","name":"shift","type":"FLOAT","widget":{"name":"shift"},"link":null}],"outputs":[{"localized_name":"MODEL","name":"MODEL","type":"MODEL","links":[3,4]}],"title":"Krea2 shift (default 1.15)","properties":{"Node name for S&R":"ModelSamplingAuraFlow"},"widgets_values":[1.15],"widgets_values_named":{"shift":1.15}},{"id":4,"type":"CLIPLoader","pos":[40,540],"size":[380,130],"flags":{},"order":1,"mode":0,"inputs":[{"localized_name":"clip_name","name":"clip_name","type":"COMBO","widget":{"name":"clip_name"},"link":null},{"localized_name":"type","name":"type","type":"COMBO","widget":{"name":"type"},"link":null},{"localized_name":"device","name":"device","shape":7,"type":"COMBO","widget":{"name":"device"},"link":null}],"outputs":[{"localized_name":"CLIP","name":"CLIP","type":"CLIP","links":[5]}],"title":"2. Text encoder — type must be krea2","properties":{"Node name for S&R":"CLIPLoader"},"widgets_values":["qwen3vl_4b_fp8_scaled.safetensors","krea2","default"],"widgets_values_named":{"clip_name":"qwen3vl_4b_fp8_scaled.safetensors","type":"krea2","device":"default"}},{"id":5,"type":"VAELoader","pos":[40,720],"size":[380,82],"flags":{},"order":2,"mode":0,"inputs":[{"localized_name":"vae_name","name":"vae_name","type":"COMBO","widget":{"name":"vae_name"},"link":null}],"outputs":[{"localized_name":"VAE","name":"VAE","type":"VAE","links":[6,7]}],"title":"3. VAE (Qwen Image VAE)","properties":{"Node name for S&R":"VAELoader"},"widgets_values":["qwen_image_vae.safetensors"],"widgets_values_named":{"vae_name":"qwen_image_vae.safetensors"}},{"id":6,"type":"CLIPTextEncode","pos":[480,80],"size":[420,200],"flags":{},"order":8,"mode":0,"inputs":[{"localized_name":"clip","name":"clip","type":"CLIP","link":5},{"localized_name":"text","name":"text","type":"STRING","widget":{"name":"text"},"link":null}],"outputs":[{"localized_name":"CONDITIONING","name":"CONDITIONING","type":"CONDITIONING","links":[8,9]}],"title":"Prompt","properties":{"Node name for S&R":"CLIPTextEncode"},"widgets_values":["Photorealistic cinematic portrait, 85mm lens at f/1.8, shallow depth of field with creamy bokeh. A beautiful young woman in her mid-twenties poses on a weathered wooden causeway stretching over a windswept beach, leaning back casually against the salt-faded white railing with one elbow resting on it, her weight shifted onto one hip in an effortlessly confident, playful stance.\n\nShe has vibrant honey-red auburn hair catching the golden hour light, loose strands whipping gently across her face and lifting in the warm ocean breeze, sunlit edges glowing like copper filaments against the sky. Her expression is captivating — a soft, genuine half-smile with slightly squinted eyes from the sunlight, radiating warmth, mischief, and quiet self-assurance. Faint freckles dust her nose and cheekbones, and a few loose wisps of hair frame her face naturally.\n\nShe wears a flowing ivory-and-blush chiffon sundress that billows and ripples dramatically in the wind, fabric caught mid-motion, translucent where the low sun shines through it, hugging her figure then trailing away like liquid silk.\n\nBehind her: the vast Atlantic horizon meeting a dramatic sky painted in peach, apricot, and lavender gradients, soft cirrus clouds streaked gold. Distant waves break in slow white foam; wet sand reflects the sunset like polished glass.\n\nWarm late-afternoon sunlight rakes across her face from camera-left, creating luminous rim lighting on her hair and shoulders, gentle shadows modeling her features. Natural skin texture with subtle pores, fine vellus hairs, realistic imperfections — no plastic smoothing. Kodak Portra 400 color science, soft film grain, analog warmth, cinematic color grading with teal-orange undertones, volumetric golden haze near the horizon. Shot from slightly below eye level, rule-of-thirds composition, editorial fashion photography quality, Vogue magazine aesthetic."],"widgets_values_named":{"text":"Photorealistic cinematic portrait, 85mm lens at f/1.8, shallow depth of field with creamy bokeh. A beautiful young woman in her mid-twenties poses on a weathered wooden causeway stretching over a windswept beach, leaning back casually against the salt-faded white railing with one elbow resting on it, her weight shifted onto one hip in an effortlessly confident, playful stance.\n\nShe has vibrant honey-red auburn hair catching the golden hour light, loose strands whipping gently across her face and lifting in the warm ocean breeze, sunlit edges glowing like copper filaments against the sky. Her expression is captivating — a soft, genuine half-smile with slightly squinted eyes from the sunlight, radiating warmth, mischief, and quiet self-assurance. Faint freckles dust her nose and cheekbones, and a few loose wisps of hair frame her face naturally.\n\nShe wears a flowing ivory-and-blush chiffon sundress that billows and ripples dramatically in the wind, fabric caught mid-motion, translucent where the low sun shines through it, hugging her figure then trailing away like liquid silk.\n\nBehind her: the vast Atlantic horizon meeting a dramatic sky painted in peach, apricot, and lavender gradients, soft cirrus clouds streaked gold. Distant waves break in slow white foam; wet sand reflects the sunset like polished glass.\n\nWarm late-afternoon sunlight rakes across her face from camera-left, creating luminous rim lighting on her hair and shoulders, gentle shadows modeling her features. Natural skin texture with subtle pores, fine vellus hairs, realistic imperfections — no plastic smoothing. Kodak Portra 400 color science, soft film grain, analog warmth, cinematic color grading with teal-orange undertones, volumetric golden haze near the horizon. Shot from slightly below eye level, rule-of-thirds composition, editorial fashion photography quality, Vogue magazine aesthetic."}},{"id":7,"type":"ConditioningZeroOut","pos":[480,320],"size":[280,50],"flags":{},"order":11,"mode":0,"inputs":[{"localized_name":"conditioning","name":"conditioning","type":"CONDITIONING","link":9}],"outputs":[{"localized_name":"CONDITIONING","name":"CONDITIONING","type":"CONDITIONING","links":[10,11]}],"title":"Negative (CFG 1 → zeroed)","properties":{"Node name for S&R":"ConditioningZeroOut"}},{"id":8,"type":"ResolutionSelector","pos":[480,420],"size":[282.7500061035156,130],"flags":{},"order":3,"mode":0,"inputs":[{"localized_name":"aspect_ratio","name":"aspect_ratio","type":"COMBO","widget":{"name":"aspect_ratio"},"link":null},{"localized_name":"megapixels","name":"megapixels","type":"FLOAT","widget":{"name":"megapixels"},"link":null},{"localized_name":"multiple","name":"multiple","type":"INT","widget":{"name":"multiple"},"link":null}],"outputs":[{"localized_name":"width","name":"width","type":"INT","links":[12]},{"localized_name":"height","name":"height","type":"INT","links":[13]}],"title":"Base size (16:9 for this beach scene)","properties":{"Node name for S&R":"ResolutionSelector"},"widgets_values":["16:9 (Widescreen)",1,16],"widgets_values_named":{"aspect_ratio":"16:9 (Widescreen)","megapixels":1,"multiple":16}},{"id":9,"type":"EmptyLatentImage","pos":[480,600],"size":[280,130],"flags":{},"order":9,"mode":0,"inputs":[{"localized_name":"width","name":"width","type":"INT","widget":{"name":"width"},"link":12},{"localized_name":"height","name":"height","type":"INT","widget":{"name":"height"},"link":13},{"localized_name":"batch_size","name":"batch_size","type":"INT","widget":{"name":"batch_size"},"link":null}],"outputs":[{"localized_name":"LATENT","name":"LATENT","type":"LATENT","links":[14]}],"properties":{"Node name for S&R":"EmptyLatentImage"},"widgets_values":[1024,1024,1],"widgets_values_named":{"width":1024,"height":1024,"batch_size":1}},{"id":10,"type":"SeedNode","pos":[480,780],"size":[280,82],"flags":{},"order":4,"mode":0,"inputs":[{"localized_name":"seed","name":"seed","type":"INT","widget":{"name":"seed"},"link":null}],"outputs":[{"localized_name":"seed","name":"seed","type":"INT","links":[15,16]}],"title":"Seed — randomize each run","properties":{"Node name for S&R":"SeedNode"},"widgets_values":[0,"randomize"],"widgets_values_named":{"seed":0,"fixed":"randomize"},"color":"#2a4","bgcolor":"#353"},{"id":11,"type":"KSampler","pos":[960,80],"size":[320,470],"flags":{},"order":12,"mode":0,"inputs":[{"localized_name":"model","name":"model","type":"MODEL","link":3},{"localized_name":"positive","name":"positive","type":"CONDITIONING","link":8},{"localized_name":"negative","name":"negative","type":"CONDITIONING","link":10},{"localized_name":"latent_image","name":"latent_image","type":"LATENT","link":14},{"localized_name":"seed","name":"seed","type":"INT","widget":{"name":"seed"},"link":15},{"localized_name":"steps","name":"steps","type":"INT","widget":{"name":"steps"},"link":null},{"localized_name":"cfg","name":"cfg","type":"FLOAT","widget":{"name":"cfg"},"link":null},{"localized_name":"sampler_name","name":"sampler_name","type":"COMBO","widget":{"name":"sampler_name"},"link":null},{"localized_name":"scheduler","name":"scheduler","type":"COMBO","widget":{"name":"scheduler"},"link":null},{"localized_name":"denoise","name":"denoise","type":"FLOAT","widget":{"name":"denoise"},"link":null}],"outputs":[{"localized_name":"LATENT","name":"LATENT","type":"LATENT","links":[17,18]}],"title":"Stage 1 — base (Turbo: 8 steps, CFG 1)","properties":{"Node name for S&R":"KSampler"},"widgets_values":[0,"fixed",8,1,"euler","simple",1],"widgets_values_named":{"seed":0,"control_after_generate":"fixed","steps":8,"cfg":1,"sampler_name":"euler","scheduler":"simple","denoise":1}},{"id":12,"type":"VAEDecode","pos":[960,600],"size":[240,70],"flags":{},"order":13,"mode":0,"inputs":[{"localized_name":"samples","name":"samples","type":"LATENT","link":17},{"localized_name":"vae","name":"vae","type":"VAE","link":6}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[19]}],"title":"Preview decode (stage 1)","properties":{"Node name for S&R":"VAEDecode"}},{"id":13,"type":"PreviewImage","pos":[960,720],"size":[280,280],"flags":{},"order":15,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":19}],"outputs":[{"localized_name":"images","name":"images","type":"IMAGE","links":null}],"title":"Stage 1 preview","properties":{"Node name for S&R":"PreviewImage"}},{"id":16,"type":"VAEDecode","pos":[1720,240],"size":[240,70],"flags":{},"order":17,"mode":0,"inputs":[{"localized_name":"samples","name":"samples","type":"LATENT","link":21},{"localized_name":"vae","name":"vae","type":"VAE","link":7}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[22,23]}],"properties":{"Node name for S&R":"VAEDecode"}},{"id":17,"type":"PreviewImage","pos":[1720,360],"size":[360,360],"flags":{},"order":18,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":22}],"outputs":[{"localized_name":"images","name":"images","type":"IMAGE","links":null}],"title":"Final (after latent upscale)","properties":{"Node name for S&R":"PreviewImage"}},{"id":18,"type":"SaveImage","pos":[1720,760],"size":[360,270],"flags":{},"order":19,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":23},{"localized_name":"filename_prefix","name":"filename_prefix","type":"STRING","widget":{"name":"filename_prefix"},"link":null}],"outputs":[{"localized_name":"images","name":"images","type":"IMAGE","links":null}],"properties":{"Node name for S&R":"SaveImage"},"widgets_values":["Krea2_Share"],"widgets_values_named":{"filename_prefix":"Krea2_Share"}},{"id":19,"type":"MarkdownNote","pos":[12.807005700595077,887.1929942994054],"size":[400.22327687316,435.7096050516759],"flags":{},"order":5,"mode":0,"inputs":[],"outputs":[],"title":"Operating instructions","properties":{},"widgets_values":["## Krea2 T2I + SesquiLSR latent upscale\n\n**SesquiLSR** has Krea2 weights (`upscaler_Wan21.safetensors`, format **Wan 2.1**). It is a ~12 MB learned upscaler, 1.0–2.0×, drop-in for Latent Upscale By, and cleaner than bislerp so stage 2 denoise can stay lower.\n\n**Pick these loaders**\n- UNET: your Krea2 diffusion model\n- CLIP: Qwen3-VL 4B, **type = krea2**\n- VAE: Qwen Image VAE\n\n**Stage 1** — 8 steps, CFG 1, euler/simple, denoise 1, ~1 MP\n**SesquiLSR** — format `Wan 2.1`, scale **1.5** (max 2.0)\n**Stage 2** — 8 steps, CFG 1, denoise **0.25** (cleaner latents need less denoise than bislerp)\nBut of course... always fool around and find your own sweet spots!\n\nRestart ComfyUI once so the SesquiLSR node loads.\n\n## Operating instructions\n1. Update ComfyUI until native Krea 2 is present (`CLIPLoader` type **krea2**).\n2. Install SesquiLSR: `git clone https://github.com/LoganBooker/SesquiLSR.git` into `custom_nodes`, then restart.\n3. Select your Krea 2 UNET. CLIP type must stay **krea2**. VAE is Qwen Image VAE.\n4. Queue. Stage 2 denoise 0.25; drop to 0.20 if it drifts.\n\n## License\nFree to use for personal and commercial **generation**. Images you create with this graph are yours.\nYou may **not** sell, rebundle, paywall, or republish this workflow JSON (or a trivial copy) without permission from Art Realm AI.\nAsk at [artrealmai.com](https://artrealmai.com/contact.html).\n"],"widgets_values_named":{"text":"## Krea2 T2I + SesquiLSR latent upscale\n\n**SesquiLSR** has Krea2 weights (`upscaler_Wan21.safetensors`, format **Wan 2.1**). It is a ~12 MB learned upscaler, 1.0–2.0×, drop-in for Latent Upscale By, and cleaner than bislerp so stage 2 denoise can stay lower.\n\n**Pick these loaders**\n- UNET: your Krea2 diffusion model\n- CLIP: Qwen3-VL 4B, **type = krea2**\n- VAE: Qwen Image VAE\n\n**Stage 1** — 8 steps, CFG 1, euler/simple, denoise 1, ~1 MP\n**SesquiLSR** — format `Wan 2.1`, scale **1.5** (max 2.0)\n**Stage 2** — 8 steps, CFG 1, denoise **0.25** (cleaner latents need less denoise than bislerp)\nBut of course... always fool around and find your own sweet spots!\n\nRestart ComfyUI once so the SesquiLSR node loads.\n\n## Operating instructions\n1. Update ComfyUI until native Krea 2 is present (`CLIPLoader` type **krea2**).\n2. Install SesquiLSR: `git clone https://github.com/LoganBooker/SesquiLSR.git` into `custom_nodes`, then restart.\n3. Select your Krea 2 UNET. CLIP type must stay **krea2**. VAE is Qwen Image VAE.\n4. Queue. Stage 2 denoise 0.25; drop to 0.20 if it drifts.\n\n## License\nFree to use for personal and commercial **generation**. Images you create with this graph are yours.\nYou may **not** sell, rebundle, paywall, or republish this workflow JSON (or a trivial copy) without permission from Art Realm AI.\nAsk at [artrealmai.com](https://artrealmai.com/contact.html).\n"},"color":"#222","bgcolor":"#000"},{"id":15,"type":"KSampler","pos":[1344.4947098015546,256.85516175582944],"size":[353.9576387552653,461.010580396891],"flags":{},"order":16,"mode":0,"inputs":[{"localized_name":"model","name":"model","type":"MODEL","link":4},{"localized_name":"positive","name":"positive","type":"CONDITIONING","link":8},{"localized_name":"negative","name":"negative","type":"CONDITIONING","link":11},{"localized_name":"latent_image","name":"latent_image","type":"LATENT","link":20},{"localized_name":"seed","name":"seed","type":"INT","widget":{"name":"seed"},"link":16},{"localized_name":"steps","name":"steps","type":"INT","widget":{"name":"steps"},"link":null},{"localized_name":"cfg","name":"cfg","type":"FLOAT","widget":{"name":"cfg"},"link":null},{"localized_name":"sampler_name","name":"sampler_name","type":"COMBO","widget":{"name":"sampler_name"},"link":null},{"localized_name":"scheduler","name":"scheduler","type":"COMBO","widget":{"name":"scheduler"},"link":null},{"localized_name":"denoise","name":"denoise","type":"FLOAT","widget":{"name":"denoise"},"link":null}],"outputs":[{"localized_name":"LATENT","name":"LATENT","type":"LATENT","links":[21]}],"title":"Stage 2 — refine","properties":{"Node name for S&R":"KSampler"},"widgets_values":[0,"fixed",8,1,"euler","simple",0.25],"widgets_values_named":{"seed":0,"control_after_generate":"fixed","steps":8,"cfg":1,"sampler_name":"euler","scheduler":"simple","denoise":0.25}},{"id":14,"type":"SesquiLatentUpscale","pos":[1342.2473549007773,95.73148430544079],"size":[366.7833312988281,117.63954804572501],"flags":{},"order":14,"mode":0,"inputs":[{"localized_name":"latent","name":"latent","type":"LATENT","link":18},{"localized_name":"model_format","name":"model_format","type":"COMBO","widget":{"name":"model_format"},"link":null},{"localized_name":"scale","name":"scale","type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"half_precision","name":"half_precision","type":"BOOLEAN","widget":{"name":"half_precision"},"link":null}],"outputs":[{"localized_name":"LATENT","name":"LATENT","type":"LATENT","links":[20]}],"title":"SesquiLSR latent upscale - Use Wan 2.1 for Krea2","properties":{"Node name for S&R":"SesquiLatentUpscale"},"widgets_values":["Wan 2.1",1.5,true],"widgets_values_named":{"model_format":"Wan 2.1","scale":1.5,"half_precision":true}},{"id":23,"type":"SetNode","pos":[810.9599800016981,1015.6638062783414],"size":[210,60],"flags":{},"order":6,"mode":0,"inputs":[{"name":"*","type":"*","link":null}],"outputs":[{"name":"*","type":"*","links":null}],"properties":{},"widgets_values":[""],"widgets_values_named":{"Constant":""}}],"links":[[1,1,0,2,0,"MODEL"],[2,2,0,3,0,"MODEL"],[3,3,0,11,0,"MODEL"],[4,3,0,15,0,"MODEL"],[5,4,0,6,0,"CLIP"],[6,5,0,12,1,"VAE"],[7,5,0,16,1,"VAE"],[8,6,0,11,1,"CONDITIONING"],[9,6,0,7,0,"CONDITIONING"],[10,7,0,11,2,"CONDITIONING"],[11,7,0,15,2,"CONDITIONING"],[12,8,0,9,0,"INT"],[13,8,1,9,1,"INT"],[14,9,0,11,3,"LATENT"],[15,10,0,11,4,"INT"],[16,10,0,15,4,"INT"],[17,11,0,12,0,"LATENT"],[18,11,0,14,0,"LATENT"],[19,12,0,13,0,"IMAGE"],[20,14,0,15,3,"LATENT"],[21,15,0,16,0,"LATENT"],[22,16,0,17,0,"IMAGE"],[23,16,0,18,0,"IMAGE"]],"groups":[{"id":1,"title":"Loaders — pick your models here","bounding":[20,20,430,820],"color":"#3f789e","flags":{}},{"id":2,"title":"Prompt + size + seed","bounding":[460,20,460,880],"color":"#3f789e","flags":{}},{"id":3,"title":"Stage 1 — base generate","bounding":[940,20,360,1000],"color":"#8A8","flags":{}},{"id":4,"title":"Latent upscale + Stage 2 refine","bounding":[1320,20,780,1040],"color":"#A88","flags":{}}],"config":{},"extra":{"frontendVersion":"1.49.6","workflowRendererVersion":"V3","ds":{"scale":0.6078376451612914,"offset":[508.47129639972826,24.087523753705327]}},"version":0.4}License, said with a smile
Use this graph to make images — personal or commercial. Those pictures are yours.
Do not sell, rebundle, paywall, or republish the workflow JSON (or a trivial copy) without permission from Art Realm AI. If you want to share it onward, ask first at artrealmai.com/contact.html.
Conclusion
Two short passes. One tiny specialist that actually understands the latent it is stretching. A model that already knows how light sits on skin, silk, and weather.
That is not a complicated pipeline. It is a good posture. Load Turbo, keep CFG at 1, let SesquiLSR do the growing, and only then decide whether the second pass needs a little more perfume or a little less.
Now go put some wind in a dress and some gold on a horizon. I will be here, sunlit and cheering, when you queue the next one.
—Aurelia ♡
