
Fast Seedream image model that splits one image into editable layers, edits by coordinate or sketch marker, and fuses up to 10 references.
Fast Seedream image model that splits one image into editable layers, edits by coordinate or sketch marker, and fuses up to 10 references.
Also known as Seedream Flash, ByteDance Seedream 5.0 Flash
seedream-5-0-flash/v1/images/generationsbytedance/dola-seedream-5-0-flash-260915bytedance/seedream-5-0-flashbyteplus/dola-seedream-5-0-flash-260915byteplus/seedream-5-0-flashdola-seedream-5-0-flash-260915seedream-5-0-flash-260915seedream-5-flashseedream-5.0-flashLive pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.
Seedream 5.0 Flash runs through POST /v1/images/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Or add "sync": true to skip polling: the request stays open and returns the finished OpenAI-style image response directly, so OpenAI SDKs work as-is. Get an API key from the EmpirioLabs dashboard.
curl https://api.empiriolabs.ai/v1/images/generations \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedream-5-0-flash",
"prompt": "Describe what you want Seedream 5.0 Flash to generate."
}'curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY"import requests
response = requests.post(
"https://api.empiriolabs.ai/v1/images/generations",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
json={
"model": "seedream-5-0-flash",
"prompt": "Describe what you want Seedream 5.0 Flash to generate.",
},
)
job = response.json()
# Generation runs as an async job. Poll until it completes.
import time
while True:
status = requests.get(
f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
).json()
if status.get("status") in ("completed", "failed"):
print(status)
break
time.sleep(5)Request parameters supported by the Seedream 5.0 Flash API on EmpirioLabs. Defaults apply when a field is omitted.
| Parameter | Type | Default | Range / values | Description |
|---|---|---|---|---|
| prompt | string | - | - | Text prompt. With image attached, becomes an editing or fusion instruction. |
| image | array | - | - | Reference image URL, data URI, or uploaded image object. Seedream 5.0 Flash supports up to 10 reference images, and exactly one for layer decomposition or a... |
| images | array | - | - | Alias for image. Use this for multiple uploaded image references. |
| aspect_ratio | enum | auto | auto, 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, 21:9 | Auto lets the model choose dimensions within the selected resolution tier. Explicit ratios use the preset size for that tier. |
| layer_decomposition | boolean | false | - | Split one input image into a base image plus up to 16 transparent PNG layers, each returned with its stacking order, its position in the base image, a name, and a... |
| quality | enum | 2K | 1K, 1.5K, 2K | Output resolution tier. All tiers are billed at the same flat per-image rate. Defaults to 2K. In layer decomposition, leaving this unset matches the input image instead. |
| size | string | - | - | Resolution tier or explicit pixel size such as 1K, 1.5K, 2K, or 2048x1152. Explicit pixels override aspect_ratio and quality. Layer decomposition accepts tiers or... |
| use_custom_size | boolean | false | - | Use custom_width and custom_height instead of preset aspect_ratio and quality. |
| custom_width | number | - | 15 to 8600 | Custom output width in pixels. Total area must be in [0.92MP, 4.62MP] and aspect must be in [1:16, 16:1]. |
| custom_height | number | - | 15 to 8600 | Custom output height in pixels. Total area must be in [0.92MP, 4.62MP] and aspect must be in [1:16, 16:1]. |
| watermark | boolean | false | - | When enabled, the generated image includes an AI-generated provenance watermark. EmpirioLabs does not add a separate watermark. |
| output_format | enum | png | jpeg, png | Output image file format. In layer decomposition this sets the base image format, and layers are always returned as PNG. |
| background | enum | opaque | opaque, transparent | Transparent keeps the alpha channel so the output has no background. Supported when editing exactly one input image that already has an alpha channel, and requires... |
| response_format | enum | url | url, b64_json | Return signed image URLs by default, or include base64 image data when b64_json is requested. |
Mark the region to change directly on the input image with a sketch, circle, or arrow, then describe it in the prompt. For exact placement, use coordinate tags on a 0 to 1000 normalized grid:
Place the subject from image 1 <bbox>179 283 796 986</bbox> at the position in image 2 <bbox>118 331 933 871</bbox>.Set layer_decomposition to true with exactly one input image to split it into a base image plus up to 16 transparent PNG layers. Every returned image carries its stacking order as z_index, and each layer also carries its position in the base image as bounding_box.absolute and bounding_box.normalized, plus a name and a description. Leave the prompt empty to let the model choose the elements, or name the elements or coordinate regions to separate. Resolution accepts 1K, 1.5K, or 2K, and matches the input image when unset.
Every resolution tier bills at the same per-image rate, and reference images are free. Layer decomposition bills every returned image, the base image and each layer, at that same rate.
Generated images pass an automated content-safety check. An image flagged as explicit is not returned. Because the image is generated before the check runs, a flagged generation is still billed.
On EmpirioLabs, Seedream 5.0 Flash is billed pay as you go: Image generation $0.030 per image; Layer decomposition $0.030 per image. The live rate card on this page always matches what the API charges.
Seedream 5.0 Flash is served through POST /v1/images/generations on api.empiriolabs.ai with standard bearer-token authentication.
Yes. The EmpirioLabs playground runs Seedream 5.0 Flash in the browser with the same parameters the API exposes, so you can test prompts before writing code.
Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.
Check out our pricing or reach out if you want your own model deployed on our stack.