Modelverse GPT Image 1 Edit
OpenAI's editor, with a mask input
- client
- image
- mask
- image
GPT Image 1 is OpenAI's image generation model, and the Edit variant is the one with a rare luxury in this pack: an actual mask input. Most of the editing nodes here trust the model to figure out what to change from your prompt alone; this one lets you point. Through UCloud's Modelverse API, that means a genuinely surgical editing node - change one object in a busy photo and leave the rest untouched. If you've been through the local inpainting wars, you know how much of a win that is.
What it is
An image editor with optional mask-guided inpainting. Feed it an image and an instruction, optionally a mask marking the region to change, and it returns the edited image. The mask is what separates it from the "describe the whole change" nodes: wire a mask and the model limits its work to that area, which is how you get "add a beach ball in the center" (the shipped default prompt) without the model redesigning your entire photo.
The inputs that matter
- client - required, from the Modelverse Client / Secret Client node.
- prompt - the edit instruction.
- image - required. The input to edit.
- mask - optional, and the star feature. Any standard mask tensor works - from a segmentation node, an inpaint mask, or a hand-painted one.
- size -
1024x1024,1024x1536, or1536x1024. - quality - low/medium/high. The bill climbs with quality; medium is a fair default.
- output_format - png or jpeg.
- output_compression - 0–100, default 100 (least compressed).
- num_requests / num_images - batch knobs and bill multipliers.
Output is a single image (IMAGE tensor), ready to preview or save.
Installing and keying up
Standard pack install. ComfyUI Manager → search "ComfyUl-UCloud" → Install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/ucloud/comfyui-plugin
restart ComfyUI. Light deps (requests, pillow, numpy, openai, GitPython), no model downloads - GPT Image 1 runs on UCloud's side. Get a ModelVerse API key from the UCloud console and enter it via the Modelverse Secret Client node (name in workflow, key in secrets.json) or a config.ini MODELVERSE_API_KEY=... entry.
Common issues
- Mask ignored / whole image changed - no mask wired means prompt-guided editing of everything. If you want surgical, the mask is mandatory.
- Mask is white-on-black vs black-on-white - conventions differ across nodes. If the edit targets the opposite region, invert the mask.
- "API key is not set" - empty client node, always the first suspect.
- Edits beyond the mask anyway - GPT Image 1 uses the mask as a strong hint, not a hard fence. Keep the prompt scoped to the masked area.
- Costs - quality and size both move the meter; high quality at 1536 is the expensive lane.
The honest take: this is the pack's most surgical image node, and the mask input makes it the one that plays nicely with the rest of ComfyUI - you can build a whole segment-and-edit pipeline around it. If you're comparing it to local inpaint workflows, that's the one advantage the cloud actually can't fully take away: you still get to draw where the edit happens.
Inputs (10)
| Name | Type | Default | Description |
|---|---|---|---|
| client | MODELVERSE_API_CLIENT | — | |
| prompt | STRING | Add a beach ball in the center | — |
| image | IMAGE | Input image | |
| size | COMBO | 1024x1024 | 3 options: 1024x1024, 1024x1536, 1536x1024 |
| num_requests | INT | 11–10 | — |
| num_images | INT | 11–4 | — |
| maskopt | IMAGE | Optional mask image | |
| qualityopt | COMBO | 4 options: , low, medium, high | |
| output_formatopt | COMBO | png | 2 options: png, jpeg |
| output_compressionopt | INT | 1000–100 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| image | IMAGE | — |