How long does it take to generate an AI image?
On Sume, most AI images finish inside the 30 seconds the API holds a request open. What makes one take longer, and how to tell slow from stuck.

Generating an AI image takes under 30 seconds on most models: Sume's image API holds each request open for up to 30 seconds, and its docs say most catalog models finish inside that window. Big requests, such as 4K, high quality or several images at once, are the ones most likely to run longer and come back as a job you poll instead.
These timings come from Sume's Image API, Jobs and results and Generation admission docs, read on 2026-09-28. Sume publishes no per-model timings, and this post adds none.
What makes an AI image take longer?
Sume's docs name two things that stretch it: the size and settings you ask for, and how busy your workspace's queue is. How you choose to wait does not change it.
| Factor | What the docs say |
|---|---|
| Size and settings | 4K, high quality and a large n are the slow configurations most likely to run past the 30-second wait. On ChatGPT Image 2.5, high is the default quality when you omit it. |
| Your workspace's queue | Jobs beyond your workspace's concurrency limit wait as queued until a slot opens. The docs' static table runs from 1 job at a time on Free to 20 on Scale and Enterprise; the dashboard's Concurrency tab shows your workspace's actual limit. |
| The wait mode | sync, async and webhook change how you learn the outcome, never how long the job takes to run. |
Can AI generate images in real time?
Not on Sume today. Every catalog model reports supports_streaming: false, and stream: true returns 400 streaming_not_supported, so you get finished images, not a picture that sharpens while it renders. For progress, submit with mode: "async" and read GET /v1/jobs/{id}/events, which is a pull snapshot rather than a stream. mode: "subscribe" is not a progress stream either: it is the same bounded 30-second wait as sync.
How do I tell a slow image from a stuck one?
Check the job's status. queued means Sume accepted it and it is waiting to run, which is normal and not a failure; processing means it is running. GET /v1/jobs/{id}/events adds a timeline (job.queued, job.started, generation.submitted and so on). In their guidance on MCP job waits, Sume's docs say an image still running at 50 seconds is usually stuck rather than slow.
- Don't resubmit the paid request because your own process timed out. A client-side timeout does not cancel the job; it keeps running.
- Cancelling helps only before generation starts. After that,
POST /v1/jobs/{id}/cancelanswers409 job_generation_already_startedand the job runs to completion. - A generation that fails is not billed, and neither is a cancelled one.
How long should my code wait for an image?
Let the first call wait: wait_timeout_seconds defaults to 30 on POST /v1/images, which is also its maximum. A 202 means the wait ran out, or that Sume skipped it because its waiter capacity was full, so it does not always mean a slow image.
After a 202, poll the job's status_url, honoring next_poll_after_seconds when it is present and backing off otherwise, and stop on completed, failed or canceled. Read the result only for a completed job. The Python image generation API shows that loop. Video, avatar-video and face-swap jobs routinely outlast the 30-second wait; how long AI video generation takes covers those.
Sources
Related posts
More in Developers
- How to build your own AI video generator (no training)
Build your own AI video generator from a front end, a small backend and a video model API. You don't train a model; your backend holds the key.
- How to get a Kling AI API key and authenticate requests
Create a Kling AI API key in the developer console, copy it once, and send it as a Bearer token. Legacy endpoints use an Access Key JWT instead.
- How to get a public URL for an image an API can fetch
Host the image where anyone can fetch it over HTTPS without a login: a public storage object, a public bucket URL, or your own site. Then test it.
- How to test an MCP server: Inspector, Postman, or curl
Test an MCP server with the MCP Inspector: connect, sign in or add an auth header, list tools, and call a read-only one. Postman and curl work too.
Written by Sume