FLUX 3 Klein Base · Text to Image
Stop writing tag soup
- images
- task id
Klein Base is BFL's answer to the complaint that Flux 2 needed a 24GB card to be worth anything: a small, Apache-2.0, trainable Flux that fits in about 13GB. This node is its text-to-image mode, running on PopNow's servers at up to 2K.
The honest case for using it as an API instead of locally: it suits a laptop, a Mac, or a card that groans at 13GB. The honest case against: if you already run Klein locally, you're paying per image for something you own. There's no drama in either direction - it's the same model family, different address.
How it works, and why your prompt style matters
The node assembles a request from the fields you see, quotes it, submits, polls, downloads the results and hands them back as a normal IMAGE batch. Under the surface there's no sampler, no CFG, no step count visible to you.
What does change your results is the text path. Klein conditions through an LLM encoder fed with a chat-style prompt, not CLIP. That has three practical consequences the local crowd has already priced in. Sentence-shaped prompts work better than comma salad. Prompt weighting syntax isn't implemented, so don't type (word:1.3) and expect anything. And the guidance-distilled generation path means "quality spam" - masterpiece, 8k, best quality - does nothing measurable; spend those tokens on the camera, the light and the lens instead.
The inputs that matter
prompt - the tooltip asks for the whole scene in full sentences: framing, subject, setting and light. "Low-angle portrait of a mechanic in a rain-soaked garage, single overhead fluorescent, 35mm, shallow depth of field" will outrun any 60-tag stack.
aspect_ratio - defaults to 1:1, with the full spread from 9:16 to 21:9 to 3:1. Pick it up front rather than cropping later; models compose for the frame they're told to fill.
resolution - 1k (~1 megapixel) or 2k (~4MP). This is the price lever, and it's not subtle: in the shipped price table 2K is about four times the 1K rate. Sketch at 1K, publish at 2K.
seed - starts on fixed, which is a deliberate crowd-pleaser here: queueing the same workflow twice returns the cached result instead of billing you for a second identical image. Set control_after_generate to randomize for a fresh take. Every random take is charged.
output_format - jpeg by default; png or webp if the file is going anywhere other than a folder.
Outputs
Two: images, a batch you wire straight into Save Image or a preview node, and task id, the PopNow job id. That second one is not decorative - it's what identifies the run in your API console and what support needs if a render fails.
Installing it
ComfyUI Manager → search PopNow → Install → restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/popnow-ai/popnow-comfyui
Create a key at popnow.ai/api/console/keys, restart, paste it into Settings > PopNow (or start with POPNOW_API_KEY=sk-popnow-...), then restart once more - the node list is built from your account's model catalog at startup. Nothing else to install; the pack depends only on what ComfyUI already ships.
Where people get burned
"Model from popnow.ai is missing" is a restart problem, not a permissions problem. The catalog is read at boot.
The bigger trap is the wallet. Credits are 1¢-per-100 (1 credit = $0.001), a node badge shows a rate rather than a total, and a 2K run with a new seed every queue can empty a small balance faster than you'd guess. Go into Settings > PopNow > Max credits per run and set a ceiling before you start poking at settings; anything quoted above it stops before a single credit is held.
If you get a PopNow 400 naming a field, the value isn't one the model accepts - check the combo box rather than the prompt. A content_rejected is the model's filter doing its job; the run is refunded, and there's no local trick to bypass it, because there's no local model.
Inputs (5)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt | STRING | Describe the whole scene in full sentences: framing, subject, setting and light. | |
| aspect_ratio | COMBO | 1:1 | Output aspect ratio. |
| resolution | COMBO | 1k | Output size tier: 1k is about one megapixel, 2k about four megapixels. |
| output_format | COMBO | jpeg | File format of the result. |
| 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. |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| images | IMAGE | — |
| task id | STRING | The PopNow task id, for the API console logs or support. |