Seedream 5 Lite product photo background swap: what Sume offers

Swap a product photo's background with Seedream 5.0 Lite: ByteDance's edit page facts, and the Sume id, ratios and n range you can call today.

5 min readSume
All posts

Can Seedream 5 Lite swap the background behind a product?

Yes: Seedream 5.0 Lite is an editing model, so you pass the product photo as a reference and describe the new scene in the prompt. On Sume it is the catalog id bytedance-seed/seedream-5-lite, called through POST /v1/images with input_references.

The model's own page describes it as a tool for "fast, intelligent and high quality image editing suitable for creative advertising and real-world usecases", with product mockups and marketing assets named as uses. That is a vendor description of the endpoint, not a promise that a specific cutout will be clean, so check every edge on your own SKUs before you publish a batch.

What does the vendor page say about limits and price?

The page lists up to 10 reference images, up to 6 generations per call, and output sizes from 2560x1440 up to 3072x3072. It prices an image at $0.035. Sume does not mirror those numbers one for one, so the table below separates what the vendor page says from what Sume's catalog exposes.

Vendor values from the Seedream 5.0 Lite edit page on fal; Sume values from the catalog and the Image API docs (read 2026-10-03).
ItemVendor pageOn Sume
Model idfal-ai/bytedance/seedream/v5/lite/editbytedance-seed/seedream-5-lite
Reference imagesUp to 10Read the input_references descriptor on the catalog row
Images per callUp to 6n range of 1 to 4 for this model
Aspect ratiosFlexible, 2560x1440 to 3072x30721:1, 16:9, 9:16, 4:3, 3:4, 4:5, 5:4, 3:2, 2:3
List price$0.035 per imageEndpoint pricing lines are what your wallet is charged; read them from the endpoint record

How do I call it for a background swap?

Use a public HTTPS URL for the product photo, because Sume rejects localhost, private-network and non-HTTPS reference URLs. Set aspect_ratio to auto on edits so the result keeps the reference's shape; the docs note that omitting the field is not the same as auto.

A normal request returns 200 with hosted image URLs. If the generation outlives the 30-second blocking budget, or you send mode: "async", you get a 202 job envelope and read the result from the job endpoints instead, so check the status code before parsing the body.

import asyncio, os
import requests

async def main():
    r = requests.post(
        "https://api.sume.com/v1/images",
        headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}"},
        json={
            "model": "bytedance-seed/seedream-5-lite",
            "prompt": "Keep the product unchanged; place it on a pale oak table by a window",
            "aspect_ratio": "auto",
            "input_references": [{"type": "image_url", "image_url": {"url": "https://example.com/product.jpg"}}],
        },
        timeout=60,
    )
    print(r.status_code)
    body = r.json()
    if r.status_code == 200:
        print(body["data"][0]["url"])
    else:
        print(body)

asyncio.run(main())

When should I pick a different model?

If a marketplace needs a fixed ratio such as 4:5 portrait, Seedream 5 Lite lists it, so no padding step is needed. If your priority is a long run of references or text overlays, compare it with the older catalog row in Seedream 4.5 edit: product replacement and text overlay.

Because billing is per completed image, you can try a swap on a handful of products first. Failed or cancelled generations are not billed, and the cost is cost_usd times n from the endpoint record.

Sources

Related posts

More in Models

All Models posts

Written by Sume