Imagen 4 with a reference image: Sume rejects it, use Nano Banana 2.1

Sume lists Imagen 4 Fast and Ultra as text-to-image only: input_references is 0 to 0. To edit a photo, use Nano Banana 2.1 at $0.10 per 1K image.

5 min readSume
All posts

Imagen 4 on Sume does not take a reference image. The catalog descriptor for input_references on google/imagen-4-fast and google/imagen-4-ultra is 0 to 0, and the Sume docs say a model with that range is text-to-image only and rejects references. For image edits, switch to google/nano-banana-2.1, which takes 0 to 10.

Check it yourself

Call the catalog and read the descriptor rather than trusting a blog post. The same call returns n, aspect_ratio and resolution ranges.

curl -s https://api.sume.com/v1/images/models \
  -H "Authorization: Bearer $SUME_API_KEY" \
  | jq '.data[] | select(.id | test("imagen|nano-banana-2.1"))
        | {id, refs: .supported_parameters.input_references}'

What each row takes

The table lists what the Sume repo's catalog code sets for each row. Prices are Sume list as of 2026-10-08.

Reference support on Sume image rows, as of 2026-10-08
Model idinput_referencesSume price per imageEdits a photo
google/imagen-4-fast0 to 0$0.025No
google/imagen-4-ultra0 to 0$0.075No
google/nano-banana-2.10 to 10$0.075 at 0.5K, $0.10 at 1KYes
openai/gpt-image-2.50 to 16depends on quality and sizeYes

A routing rule

In your own code, branch on the descriptor: if the job has reference photos, pick a row whose input_references.max is at least the photo count; otherwise pick the cheapest text row. That keeps a mid-week catalog change from turning into a 400 in production.

Google's Imagen page says Imagen models are shut down in the Gemini API and tells developers to migrate to Nano Banana. Sume's catalog is separate from Google's API, so check which Imagen rows it lists on the day you build.

What the error looks like

Sume documents that a request which sets a parameter the model does not list is rejected with 400 unsupported_parameter. For references on a 0-to-0 model, the docs say the model rejects them. Do not rely on the exact error text: check the status code and the model's descriptor before you submit.

A cheap guard in code is to compute can_edit = refs_max > 0 once per model at startup and fail the job locally when a photo is attached to a text-only row. That saves a round trip and a confusing log line.

If you want the lowest-cost edit row, the cheapest listed option with references is Nano Banana 2.1 at 0.5K, $0.075. See the cheapest models that take a reference photo for the full list with other rows.

Where this fits in a pipeline

A common pattern is a two-row router. Rows that take references handle edits and anything with a source photo. Rows that do not handle blank-page prompts at a lower price. The router needs only two numbers per row: input_references.max and the price line. Both come from the catalog, so adding a row later does not need a code change.

Keep the router's decision in your logs next to the job id. When a cost line looks wrong a month from now, you can see which rule picked the row.

A short test plan helps here. Pick 5 product photos, run each through google/nano-banana-2.1 at 0.5K for $0.075 each ($0.375 in all), and confirm that the edit keeps the product. Then run the same 5 through Imagen 4 Fast with a text-only prompt for $0.125 and compare how well it holds a specific product. The Imagen result will not match your product because it never sees the photo, which is the point of the test.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume