Qwen Image 2.1 rate limits: 120 RPM Turbo, 20 RPM Pro, and batching
Alibaba caps qwen-image-2.1-turbo at 120 requests per minute and Pro at 20. Here is how to size a batch and where Sume's async mode fits.

Alibaba's Model Studio pages list 120 requests per minute for qwen-image-2.1-turbo and 20 requests per minute for qwen-image-2.1-pro, in every region. At those caps a 1,000-image run takes at least 9 minutes on Turbo (1,000 / 120) and at least 50 minutes on Pro (1,000 / 20), if every request makes one image and none is rejected.
The arithmetic
The figures below are plain division of the vendor's request cap. They assume one image per request and no retries, and the vendor pages do not say whether a request can return more than one image.
| Images | Turbo at 120 RPM | Pro at 20 RPM |
|---|---|---|
| 100 | 1 min (rounded up) | 5 min |
| 1,000 | 9 min (rounded up) | 50 min |
| 5,000 | 42 min (rounded up) | 250 min |
Sume's side of a batch
Sume does not list Qwen-Image-2.1. For the Qwen rows it does list, the Image API waits up to 30 seconds and then returns 202 with a job envelope. With mode: "async" the call returns the envelope at once and you read the images from GET /v1/jobs/{id}/result. Slow configurations fall back to 202, so branch on the status code, not the body shape.
The sample submits four async jobs on qwen/qwen-image and prints the job ids.
import os, requests
H = {"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"}
ids = []
for i in range(4):
r = requests.post(
"https://api.sume.com/v1/images",
headers=H,
json={"model": "qwen/qwen-image", "prompt": f"poster draft {i}", "mode": "async"},
timeout=30,
)
r.raise_for_status()
body = r.json()
job = body.get("data", body)
ids.append(job.get("job", job)["id"])
print(ids)Rules of thumb
- Read the cap from the vendor page for the region you call, not from a blog.
- Back off on
429and do not resubmit a paid job because a local timer fired; store the job id instead. - Sume's own limits are separate from Alibaba's; check your plan before you size a run.
Sources
Related posts
More in Developers
- Qwen Image 2.1 rate limits: Pro 20 RPM, Turbo 120 RPM vs Sume's queue
Alibaba caps qwen-image-2.1-pro at 20 requests a minute and Turbo at 120. How long 1,000 images take at each cap, and how Sume's plan queue behaves instead.
- Repeatable AI images: seed returns 400 on Sume, so do this
Sume's schema accepts seed, but no image model lists it, so seed returns 400 unsupported_parameter. Pin the model and prompt, and keep the output file.
- Image model sume/auto or a pinned id: when to send which
Send sume/auto when you want Sume to choose and pin an id when you need the same look and price every time. Auto never names the model that ran.
- sume/auto or a fixed video model id: decision rules for client work
Use sume/auto for 3-10 s clips with no family requirement. Pin an id when you need over 10 s, 1080p-only, a given family or 4:3. Read 2026-10-13.
Written by Sume