AI flower bouquet photos for a florist: Seedream 4.5 reference edit

A florist can keep a real arrangement and change only the backdrop on Seedream 4.5: $0.04 list, $0.05 billed on Sume, 4:5 ratio, up to 10 references.

5 min readSume
All posts

To make flower bouquet photos for a florist, send a photo of the real arrangement as a reference to bytedance-seed/seedream-4.5 with aspect_ratio: "4:5" and ask for a new backdrop only. Sume lists Seedream 4.5 at $0.04 per image, billed at list times 1.25 as $0.05, and the row accepts up to 10 references.

A bouquet that a customer receives has to match the picture, so a florist's AI use is backdrops and seasons around a real arrangement rather than invented flowers. Prices and limits are from Sume's Image API page and the catalog source, read on 2026-10-05. A fall-to-winter swap of tables, windows and wrapping is a reasonable first job.

What does a backdrop set cost?

Seedream 4.5 lists 1:1, 4:5, 3:4, 16:9 and more, with up to 4 images per call. It bills the same $0.05 as Recraft V4 but takes references, which Recraft does not.

Bouquet backdrops on Seedream 4.5 (read 2026-10-05)
ItemValueSource
Model idbytedance-seed/seedream-4.5Image API page
Billed price per image$0.05$0.04 list x 1.25
Five backdrops, one bouquet$0.255 x $0.05
Ten bouquets, three backdrops$1.5030 x $0.05
ReferencesUp to 10Catalog range
Ratio for Instagram portrait4:5Seedream ratio list

How do I change only the backdrop?

State what must stay and what changes. The example uses a placeholder URL; use a public image of your own arrangement.

import os, requests

body = {
    "model": "bytedance-seed/seedream-4.5",
    "prompt": "Keep the bouquet exactly as in the reference. Change the background to a rustic wooden table by a frosted window, soft winter light.",
    "aspect_ratio": "4:5",
    "input_references": [
        {
            "type": "image_url",
            "image_url": {
                "url": "https://example.com/bouquet.jpg"
            }
        }
    ]
}
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?

  • Compare every flower and color with the real bouquet before posting.
  • Show real arrangements in the listing; use generated backdrops for seasonal posts.
  • A reference URL that returns an error fails the job with input_media_unreachable; retry after fixing the URL.
  • A 202 response is a running job: poll its status_url.

Sources

Related posts

More in Models

All Models posts

Written by Sume