FLUX.2 Klein 4B LoRA · Edit
Klein 4B LoRA Edit
- image_urls
- loras
- images
- task id
Style LoRAs and edit models are two different answers to "make this photo look like that". Klein 4B LoRA · Edit lets you use both at once: hand it a source image, an instruction, and up to three of your weight files, for about 3.06 credits ($0.0306) an image. It's the node you want when the change isn't just content but look.
What you get for the extra cent
The plain Klein 4B · Edit node costs 1.89 credits. This one costs 3.06 - about 60% more, for one reason: it accepts a loras socket. If you're not loading weights, use the cheaper node; there's no quality bonus for paying more.
loras takes a POPNOW_LORAS value from the pack's PopNow LoRA node, not a file picker. That node's source field is where the reference goes: a .safetensors in ComfyUI/models/loras (uploaded once, 2GiB cap, reused for ~12 hours), a Hugging Face repo id, a Civitai model page (imported server-side; set CIVITAI_API_KEY or HF_TOKEN in ComfyUI's environment for gated files), or any direct https:// link. scale sets strength, and chaining PopNow LoRA nodes stacks them - three is the cap on this endpoint.
Size is the wall: files must be Klein 4B weights. The tooltip allows either the distilled or the Base 4B build, so a Base-trained LoRA is fine here, but a 9B LoRA is a failed run and a FLUX.1 LoRA isn't even the same architecture.
Why LoRAs matter more on edits than on generations
Because "make it look like my style" is most of what people actually want from an edit. A consistency LoRA keeps a character recognisable across a series of shots. A texture or grading LoRA makes a batch of product photos look like one photographer shot them. Neither survives being phrased as a prompt - that's the difference between asking and training.
The honest caveat: small 4B models plus a LoRA is two approximations stacked. Klein already drifts on identity; a style LoRA at full strength can pull it further. Which is why the scale slider is the most important control in this workflow, and why you should start at 1.0 rather than 1.6.
The node's own fields
image_urls is Autogrow - connect one image, another socket appears, up to three. The service labels them image 1, image 2, image 3, so an instruction like restyle the subject in image 1 to match the grain of image 2 is unambiguous. Watch the batch trap: each socket can carry a whole batch and every image in it is sent as a separate reference, so a batch of four in one socket plus anything else will be rejected with a 400 naming the field.
prompt takes up to 5,000 characters and needs the LoRA trigger phrase up front, then a plain-English instruction. Say what changes and what must not; the encoder is an LLM, not a tag matcher, and prompt weighting is ignored.
aspect_ratio defaults to auto, keeping the first source's shape - right for most edits. resolution is 1k or 2k, and the edit endpoints bill flat rather than by size tier, so taking the larger one costs nothing extra at the moment.
seed starts fixed: a re-queue replays the cached result rather than charging you twice. That default also hides whether your scale change did anything, so flip control after generate to randomize while you're comparing.
Outputs
images is a normal IMAGE - Save Image, preview, or into your own colour-match and upscale chain. task id is the string PopNow uses for the job.
Install
Manager → Custom Nodes Manager → PopNow → Install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/popnow-ai/popnow-comfyui
# restart ComfyUI
Key from popnow.ai/api/console/keys into Settings > PopNow - or POPNOW_API_KEY in the environment if you're headless - then restart once more so the node list rebuilds from your account. Zero dependencies; the only prerequisite is a ComfyUI new enough for the V3 node API.
Two failures worth naming
A LoRA that resolves but does nothing usually means a missing trigger word in the prompt, or a scale too low to survive a busy instruction. A LoRA that resolves and wrecks the image means the opposite. Neither is a node bug - and since there's no negative prompt available on this endpoint, your only dials are words, scale, and the source you fed in.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Say what to change and what must stay the same. Put a LoRA trigger phrase first. | |
| image_urls | COMFY_AUTOGROW_V3 | One to three source images, in the order your prompt refers to them. | |
| aspect_ratio | COMBO | auto | Output aspect ratio; auto keeps the shape of the first source image. |
| resolution | COMBO | 1k | Output size tier when you choose an aspect ratio; with auto the result keeps the shape of the first source image. |
| seed | INT | 00–2147483647 | Same seed and settings, same result. Set 'control after generate' to randomize to get a new result on every run; every run is billed. |
| lorasopt | POPNOW_LORAS | Up to three LoRA weight files trained for FLUX.2 [klein] 4B or FLUX.2 [klein] Base 4B, each with its own strength. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| task id | STRING | The PopNow task id, for the API console logs or support. |