Poe Image Edit
Edit images with a sentence instead of an inpainting mask
- image
- image
- raw_response
img2img with a credit card instead of a checkpoint
PoeImageEdit is the image-edit node from the ComfyPoe pack, and it answers the question "how do I change this picture without rebuilding a local pipeline?" It's img2img: you feed it an image and a sentence - "make it night", "change the background to a rainy street", "turn the cat into a corgi" - and a closed image model on Poe's servers does the edit. No inpainting masks, no ControlNet, no VRAM. The heavy lifting happens on Poe's infrastructure through their OpenAI-compatible API.
Where you'd actually reach for it: you've got a render you mostly like, but one thing is wrong, and setting up an inpaint workflow with a mask plus a local model feels like more machinery than the job deserves. PoeImageEdit is the lazy, effective version of that job. It's also a genuinely good way to pressure-test what today's top closed models can follow in an edit prompt before you decide to care.
How it works
The mechanism is simple and worth knowing because it explains the limitations. The node takes your image tensor, converts it to a PIL image, base64-encodes it as a PNG, and stuffs it into a chat-completions message as a data URL alongside your text prompt. Poe's server runs the model on the image-plus-prompt pair and replies with text containing a markdown image URL. The node pulls the first URL, downloads the result, and hands you back a standard ComfyUI IMAGE tensor. So under the hood this is really "describe what you want the model to do to this image," not a deterministic edit. The model interprets your instruction.
The inputs that matter
Three required:
image- theIMAGEtensor you want edited. Wire it straight out ofLoadImage.prompt- the edit instruction, multiline. Be specific: "make the background a rainy street at dusk, keep the subject" beats "make it cool."api_key- from https://poe.com/api_key, with a Poe account that has API access.
Optional:
model- the 10-model dropdown, defaultGPT-Image-1. For edit fidelity, that default is the right call; GPT-Image-1 was built multimodal and follows edit instructions far better than the text-only holdovers.aspect- defaultauto, which lets the model decide; set a ratio like16:9to force one.quality- low / medium / high.seed--1for random, a number to reproduce.
Outputs
image - the edited result as an IMAGE tensor, ready for PreviewImage or SaveImage. And raw_response - the full API text reply, which is your debugging window when the edit goes sideways.
Installing
Search ComfyPoe in ComfyUI Manager and install, or:
cd ComfyUI/custom_nodes
git clone https://github.com/mrf/ComfyPoe.git
Restart ComfyUI; openai and requests install automatically on first load. No model downloads, no heavy dependencies - this is one of the lightest installs in the ecosystem.
Gotchas
- "API key is required" - blank key field. Same fix as always: paste one in.
- "No image URL found in response" - the model replied with text. With DALL-E-3 that's frequently a content refusal (it's the most trigger-happy censor in the lineup); check
raw_responseto see the actual message. - Edits are interpretations, not masks. If you need a pixel-exact region change, a real inpainting pipeline with a local model is still the right tool. This node is for "rephrase the picture," not surgery.
- Big images mean big requests. The image travels as a base64 PNG over the wire, so huge inputs are slow. Downscale before feeding it if speed matters.
- It's a blocking HTTP call. The node hangs until Poe's server responds, so treat it as a single-shot operation, not something to loop a hundred times.
- Don't share the workflow file - your API key is stored in it in plain text.
One honest caveat: this is a community pack wrapping someone else's paid API, and Poe's endpoint and model list are the author's snapshot of reality. It works, the code is readable and MIT-licensed, but if Poe changes their API tomorrow, the node changes too.
Inputs (7)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| prompt | STRING | Edit this image to... | — |
| api_key | STRING | — | |
| modelopt | COMBO | GPT-Image-1 | 10 options: GPT-Image-1, DALL-E-3, Imagen-4, FLUX-pro-1.1, FLUX-schnell, Playground-v3, +4 |
| aspectopt | COMBO | auto | 8 options: 1:1, 3:2, 2:3, 4:3, 3:4, 16:9, +2 |
| qualityopt | COMBO | high | 3 options: low, medium, high |
| seedopt | INT | -1-1–2147483647 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |
| raw_response | STRING | — |