AI image edit changed my crop: aspect_ratio auto vs omitted on Sume

On edit calls, aspect_ratio auto matches the reference; leaving the field out is not the same thing. Ideogram 4.5 keeps the source shape when you omit it.

5 min readSume
All posts

Send aspect_ratio: "auto" on the edit. The public Image API docs say that on edit and image-to-image calls auto matches the reference, and that omitting the field gives a result that is not the same as auto. The one exception stated in the docs is ideogram/ideogram-v4.5: an edit without aspect_ratio keeps the shape of the source image.

Which rows list auto

auto is only valid on rows whose ratio descriptor lists it. From the repo's capability data:

Sume image catalog rows (list from the Sume repo, billed = list x 1.25), read 2026-10-13
Sume model idLists autoNotes
openai/gpt-image-2.5, 2YesAlso 9 ratios total
google/nano-banana-2.1, proYesPlus resolution tier
bytedance-seed/seedream-4YesSeedream 4.0 only in this family
bytedance-seed/seedream-5-lite, 4.5NoPick a ratio from the list
black-forest-labs/flux.2-pro, flexNoPick a ratio from the list
ideogram/ideogram-v4.5NoOmit the field to keep the source

Checklist

If an edit comes back cropped or stretched, check these in order. Each is a parameter fix, not a prompt change.

  • Is the row's descriptor listing auto? If not, pick the closest listed ratio.
  • Did you send a ratio that differs from the source? That forces a new frame.
  • For Ideogram 4.5, did you leave the field out?
  • Did you pass image_size? It has priority over aspect_ratio.
{
  "model": "google/nano-banana-2.1",
  "prompt": "change the jacket to dark green, keep everything else",
  "input_references": [{"type": "image_url", "image_url": {"url": "https://example.com/photo.jpg"}}],
  "aspect_ratio": "auto"
}

Why it matters

A silent crop breaks product listings that need the same frame in every colorway. Compare the output size with the source in your test before you run a batch.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume