Premium Image Edit 🔑 (Pollinations)
Edit Images Server-Side With Kontext
- image
- image
- url
- prompt
Premium Image Edit 🔑 is where this pack stops being a toy. The free nodes generate from nothing; this one takes an image already sitting in your graph and hands it to Pollinations' kontext model, a hosted image-to-image editor, to be changed server-side. Want to "enhance this image," restyle a render, or clean up a sketch without standing up a local img2img pipeline? This is the node.
How it works
The mechanism is the interesting part, and it has a catch baked in. The node takes your input IMAGE, downscales it to a maximum of 512px on its longest side, saves it as a JPEG at quality 85, base64-encodes the whole thing, and stuffs it into the request as a data: URL in the image parameter against image.pollinations.ai/prompt/. Then it sends the result back as a fresh IMAGE tensor.
Read that again: your source image is thumbnailed to 512px before it ever leaves your machine. That's the single most important thing to know about this node. Fine detail in a 2K source is gone before the model sees it. For quick touch-ups and style passes that's fine; for pixel-exact work it's disqualifying.
The node needs a token with "seed tier" access from auth.pollinations.ai, same as the rest of the premium lineup.
Inputs that matter
- image - the IMAGE you want edited, wired in from anywhere in your graph.
- api_token - required, checked before anything else.
- prompt - defaults to "enhance this image." This is your edit instruction: "make it a rainy street at night," "turn the background into a studio," whatever.
- model -
kontext(the default, and the one built for this job) orgptimagefor generation-style edits. - width / height - the output dimensions, 64 to 2048, step 64, default 512.
- enhance - on by default, but only actually sent when the model is
kontext.gptimagegets prompt enhancement instead; the two models split the workload down the middle.
Outputs: image (the edited result), url (where it lives), and prompt (what the edit engine ended up using).
Where it fits
This is the "I want a professional-ish edit without building the machinery" node. Product-shot polish, background swaps, style transfer on an existing render, "fix this" prompts on your last generation. Pair it with the pack's Premium Image Gen and you've got a closed loop: generate, edit, repeat - all remote, all on auth tiers, none of it touching your VRAM.
Install & common issues
Installs with the pack (Manager, or clone + pip install -r requirements.txt; dependencies are just requests and pydub). Token and tier setup as with the other premium nodes.
- "API token required" - token field is blank.
- 401/403 - bad or expired token.
- "Higher tier" message -
kontextneeds seed tier; your account isn't there yet. - Edited output looks soft - that's the 512px downscale, not a bug. If you need the source's detail preserved, this node is the wrong tool; you want local img2img.
One genuine quirk: because it's a remote img2img over a data: URL, an edit can take a while and occasionally fails mid-flight - and a failure comes back as the same black placeholder with the error text in the url output. When in doubt, read the url string. It's the only place the node tells you the truth.
Inputs (11)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| api_token | STRING | — | |
| prompt | STRING | enhance this image | — |
| model | COMBO | kontext | 2 options: gptimage, kontext |
| width | INT | 51264–2048 | — |
| height | INT | 51264–2048 | — |
| seed | INT | 00–2147483647 | — |
| enhanceopt | BOOLEAN | true | — |
| nologoopt | BOOLEAN | true | — |
| privateopt | BOOLEAN | true | — |
| safeopt | BOOLEAN | false | — |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| url | STRING | — |
| prompt | STRING | — |