gpt-image-2 or gpt-image-2.5 to replace gpt-image-1 on Sume?
OpenAI names gpt-image-2.5 as the gpt-image-1 replacement. On Sume, gpt-image-2 and 2.5 differ on references, mask_url, background and quality tiers.

Pin openai/gpt-image-2.5-sunburst or openai/gpt-image-2.5 for a gpt-image-1 replacement, not openai/gpt-image-2. That is what OpenAI's deprecations page names for gpt-image-1, gpt-image-1-mini and gpt-image-1.5 as of 2026-10-06. gpt-image-2 appears on the same page only as a replacement for the retired DALL-E ids.
On Sume the practical difference is in what the request may carry. Only the 2.5 pair takes mask_url, background, up to 16 input references, and the xhigh and max quality tiers.
Request differences on Sume
| Field | openai/gpt-image-2 | openai/gpt-image-2.5 and -sunburst |
|---|---|---|
| input_references | up to 10 | up to 16 |
| mask_url | not accepted | accepted |
| background (transparent, opaque) | not accepted | accepted |
| quality | auto, low, medium, high | adds xhigh and max |
| custom image_size | multiples of 16, edge up to 3840 | same rule |
What happens if you send an unsupported field
Sume does not drop a field the model does not list. It returns 400 unsupported_parameter. If you call gpt-image-2 with mask_url, you get the 400 and the edit never runs. The sample picks the model from the fields the request needs:
def pick_model(body):
needs_25 = (
"mask_url" in body
or "background" in body
or len(body.get("input_references", [])) > 10
or body.get("quality") in ("xhigh", "max")
)
body["model"] = ("openai/gpt-image-2.5-sunburst" if needs_25
else "openai/gpt-image-2")
return body
if __name__ == "__main__":
print(pick_model({"prompt": "a mug", "mask_url": "https://example.com/m.png"}))
print(pick_model({"prompt": "a mug"}))Which should be your default?
Make 2.5 the default if you want one id to carry every old gpt-image-1 call, including edits. Sunburst and Flare share price and limits, as covered in the Flare versus Sunburst post. Run your own prompts on both before you commit; Sume's catalog can tell you what each accepts, but not which looks better for your product. See the 2.5 API guide.
Sources
Related posts
More in Models
- Ideogram 4.5 low, medium or high: a text grid to pick the tier
Run one headline through Ideogram 4.5 at low, medium and high on Sume, read the billed cost of each, and keep the cheapest tier whose text you can read.
- Ideogram 4.5 vs Nano Banana 2 for multi-turn edits: cost per turn
Ideogram 4.5 claims clean multi-turn edits. Compare it with Nano Banana 2 on Sume: price per turn, six-turn totals and a drift test you can run.
- Is MiniMax H3 Max 1080p native? Sume's catalog and price
H3 Max renders natively at 480p and 768p; its 1080p is a latent refinement from 768p. On Sume 1080p is $0.20 a second, double the 768p rate.
- One narrator across a series: Sume TTS 1.0 is Sonic 3.6, pin older ids
Sume TTS 1.0 always runs on sonic-3.6. To keep a series that began on an older Sonic, use the TTS Router and pin sonic-3.5 or sonic-3 with the same voice.
Written by Sume