Qwen Image Max is text-only on Sume; Qwen Image takes references

Qwen Image Max on Sume rejects reference images. For edits use qwen/qwen-image. The two ids compared: references, n, ratios, and the $0.075 Max list price.

5 min readSume
All posts

Qwen Image Max on Sume is text-to-image only: it accepts no reference images, so you cannot use it to retouch or restyle an existing photo. For edits with Qwen, send qwen/qwen-image instead, whose catalog row lists reference images and supports up to four images per call.

The two ids sound like one family with a quality tier, which is why a Max request with a product photo attached comes back as an error. This post lays out what each id accepts so you pick the right one before you build a pipeline around it.

What the sources say

The fal page for Qwen Image Max shows one price line, $0.075 per image, and a demo prompt with a koala holding a card that says 'Qwen Image Max is now available on fal'. The page does not make a formal claim about text rendering and does not list image sizes or a prompt limit, so a text-in-image comparison has to come from your own tests.

Sume's catalog describes the same model as text-to-image only and states that image_urls are not accepted. The Image API docs explain what that means in a request: a model whose input_references descriptor is a minimum and maximum of 0 is text-to-image only and rejects references.

Qwen ids on Sume (catalog and docs read 2026-10-03)
Sume idReference imagesImages per call (n)Aspect ratios
qwen/qwen-image-maxnone (text-only)1 to 413: 1:1, 16:9, 9:16, 4:3, 3:4, 4:5, 5:4, 3:2, 2:3, 21:9, 9:21, 1:2, 2:1
qwen/qwen-imageup to 10 (catalog default for edit-capable rows)1 to 4the same 13

Try it before you build on it

The check below sends a reference image to the Max id. The docs say a parameter the model does not list is rejected with a 400, so you should see an error status and no generation. That is also a useful pattern for any model you have not used: read the descriptors from the catalog, then send a probe request, before you wire a batch job to it.

The example uses a placeholder image URL. The rejection should happen on the model's capabilities, but the real URL rules still apply when you move on to a model that accepts references: public HTTPS only, with localhost, private-network and non-HTTPS URLs refused before submission.

import os
import requests

H = {"Authorization": "Bearer " + os.environ["SUME_API_KEY"]}
body = {
    "model": "qwen/qwen-image-max",
    "prompt": "Same mug, new logo",
    "input_references": [
        {"type": "image_url", "image_url": {"url": "https://example.com/mug.png"}}
    ],
}
r = requests.post("https://api.sume.com/v1/images", headers=H, json=body, timeout=60)
print(r.status_code)  # text-only model: expect a 400, not a generation

Choosing between them

Use Max when you start from words and want the model to compose the whole frame, for instance a backdrop plate you will composite your product onto. Use qwen/qwen-image when you start from a photo and want a controlled change. If you need the exact characters of a headline, generate a few candidates with n up to 4 and check them by eye; do not assume either id will spell a long line correctly.

Prices differ and I am only quoting the vendor figure for Max. For the amount Sume charges for either id, read the pricing line on its endpoint record at GET /v1/images/models/{model_id}/endpoints; the docs say that line is already the amount charged to your wallet.

Before you commit, read both rows from GET /v1/images/models and keep the output in your repo. A descriptor change is the earliest signal that a model has gained or lost a capability, and it is cheaper to notice in a diff than in a failed batch.

Sources

Related posts

More in Models

All Models posts

Written by Sume