sume/auto and aspect_ratio 8:1: name Nano Banana 2.1 instead

sume/auto does not tell you which family ran, and the repo gives it the GPT Image ratio list, which has no 4:1 or 8:1. Name google/nano-banana-2.1 for strips.

3 min readSume
All posts

model: "sume/auto" lets the Image Router choose, and Sume never discloses which family ran. The repo advertises the GPT Image 2 ratio list for Auto (auto, 1:1, 16:9, 9:16, 4:3, 3:4, 5:4, 9:8, 4:5), which has no 4:1 or 8:1, so for the new strip ratios send google/nano-banana-2.1 by name.

Auto against the named model

Ratio coverage (read 2026-10-09)
Ratiosume/auto listgoogle/nano-banana-2.1
1:1YesYes
4:5YesYes
16:9YesYes
4:1NoYes
1:4NoYes
8:1NoYes
1:8NoYes

What to send

Name the model when the ratio is the requirement. You trade routing flexibility for a ratio you know exists. Price is per image at the tier you choose: $0.10 at 1K, $0.15 at 2K and $0.20 at 4K for Nano Banana 2.1.

import os, requests

body = {
    "model": "google/nano-banana-2.1",
    "prompt": "Wide hero strip for a travel site, sunrise over a harbour, no text",
    "aspect_ratio": "8:1",
    "resolution": "1K",
}
r = requests.post(
    "https://api.sume.com/v1/images",
    headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"},
    json=body, timeout=60,
)
print(r.status_code)  # 200 = image body, 202 = job envelope
if r.status_code == 200:
    out = r.json()
    print(out["data"][0]["url"], out["usage"]["cost"])

Gotchas

  • The docs state that a model accepts only the values its catalog descriptors list, and that a parameter the model does not list returns 400 unsupported_parameter. Auto is not in GET /v1/images/models, so you cannot read its descriptor there.
  • Use sume/auto when any shape will do and you want Sume to pick; use the named id when the shape is fixed.
  • Image 1.0 URLs are compatibility aliases for Auto and follow the same GPT list.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume