AI greeting card front art on Qwen Image Max: ratio and price check

Qwen Image Max on Sume gives card-front art in 3:4, 4:5 or 2:3 portrait; read the catalog's n range and the billed usage.cost before pricing a card line.

5 min readSume
All posts

For greeting card front art, call qwen/qwen-image-max with a portrait ratio such as 3:4, 4:5 or 2:3, then read the n range and the price from GET /v1/images/models instead of assuming them. Sume bills list times 1.25 and puts the billed amount in usage.cost.

Holiday cards are portrait pieces, and a print shop works from a fixed size, so the ratio matters more than the model. Facts are from Sume's Image API page and the catalog source, read on 2026-10-05. This post does not state a Qwen price, because the number lives in the catalog row: read it there and multiply by your batch size.

Which portrait ratios does Qwen list?

Qwen is in the custom-pixel family, so its list includes the named families plus 4:5, 3:2 and 2:3. A 5x7 inch card is about 5:7, which none of them equals, so pick 3:4 or 2:3 and trim.

Portrait ratios for a card front (read 2026-10-05)
RatioClosest card sizeWhat to do
3:4Near 6x8 inUse as is
4:5Near 8x10 inUse as is
2:3Near 4x6 inUse as is
5:75x7 inGenerate 3:4 and trim, or set image_size

How do I request a card front?

Leave blank space where your layout tool will set the greeting, and ask for no text so the model does not invent a message.

import os, requests

body = {
    "model": "qwen/qwen-image-max",
    "prompt": "Watercolor card front: a robin on a snowy holly branch, wide empty cream area at the top for a greeting, no text",
    "aspect_ratio": "2:3"
}
r = requests.post(
    "https://api.sume.com/v1/images",
    headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"},
    json=body,
    timeout=60,
)
if r.status_code == 200:
    out = r.json()
    for img in out["data"]:
        print(img["url"])
    print("billed USD:", out["usage"]["cost"])
elif r.status_code == 202:
    print("still running, poll:", r.json()["data"]["status_url"])
else:
    print(r.status_code, r.text)

What should I check?

  • Read the model's n range in the catalog; a fixed one-image model rejects larger values.
  • Check that margins are empty enough for your greeting.
  • Set the greeting in your layout tool, not in the prompt.
  • Compare usage.cost with the catalog list times 1.25.

Sources

Related posts

More in Models

All Models posts

Written by Sume