Seedream Image Generation
Seedream is ByteDance's image generation model series, supporting text-to-image, high-resolution output, and fine prompt understanding (including Chinese text rendering), via the OpenAI-compatible images API with synchronous responses.
Endpoint
POST $URL/v1/images/generationsWhen using the OpenAI SDK, set base_url to $URL/v1.
Supported Models
| Model | Site | Description |
|---|---|---|
dola-seedream-5.0-pro | CN site | Pro, highest quality, with two resolution bands (≤1.5K / >1.5K) |
seedream-5.0-lite | CN site | Lite, cost-efficient, flat pricing |
dola-seedream-5.0-pro | Global site | Pro, highest quality, with two resolution bands (≤1.5K / >1.5K) |
seedream-5.0-lite | Global site | Lite, cost-efficient |
Parameters
| Param | Type | Required | Description |
|---|---|---|---|
model | string | yes | One of the models above |
prompt | string | yes | Image description; include subject, style, and any text to render |
n | integer | no | Number of images, default 1. Each request currently returns 1 image: larger values are accepted without error but only 1 image is returned |
size | string | no | Output size, e.g. 1024x1024, 1536x1536, 2048x2048. Both lite models (seedream-5.0-lite / seedream-5.0-lite) require at least 1920x1920 (≥ 3,686,400 pixels, e.g. 2048x2048, 2560x1440); smaller sizes return 400 |
seed | integer | no | Random seed for reproducibility |
response_format | string | no | url (default, temporary link) / b64_json |
quality | string | no | Output quality tier; support depends on the model |
style | string | no | Image style; support depends on the model |
background | string | no | Background mode (e.g. transparent); supported by some models only |
output_format | string | no | Output file format (e.g. jpeg / png); supported by some models only |
watermark | boolean | no | Whether to add a watermark |
Request Example
curl $URL/v1/images/generations \
-H "Authorization: Bearer $YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "dola-seedream-5.0-pro",
"prompt": "A futuristic product poster featuring wireless earbuds on a deep-blue gradient background, bold white text at the bottom: FUTURE SOUND",
"n": 1,
"size": "2048x2048"
}'from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY", base_url="$URL/v1")
resp = client.images.generate(
model="seedream-5.0-lite",
prompt="A futuristic product poster featuring wireless earbuds on a deep-blue gradient background",
n=1,
size="2048x2048",
seed=42,
)
print(resp.data[0].url)Response Fields
| Field | Type | Description |
|---|---|---|
created | integer | Unix timestamp (seconds) |
model | string | Actual model code that processed the request (vendor-normalized, e.g. seedream-5-0-260128, seedream-5-0-260128) |
data | array | Generated results (currently 1 image) |
data[].url | string | Temporary image URL (download promptly) |
data[].size | string | Actual generated size, e.g. 2048x2048 |
data[].b64_json | string | Base64 image content (returned when response_format: "b64_json") |
usage.generated_images | integer | Number of images actually generated |
usage.output_tokens | integer | Output tokens consumed (metering only, not billed) |
Response Example
{
"model": "seedream-5-0-260128",
"created": 1791869249,
"data": [
{
"url": "https://.../seedream-5-0/xxxx.jpeg",
"size": "2048x2048"
}
],
"usage": {
"generated_images": 1,
"output_tokens": 16384,
"total_tokens": 16384
}
}Pricing
Billed per output image; the Pro models are tiered by resolution (CNY on the CN site, USD on the global site):
| Model | Site | ≤1.5K | >1.5K | Input reference image |
|---|---|---|---|---|
dola-seedream-5.0-pro | CN site | ¥0.3/image | ¥0.6/image | 1st free, ¥0.02/image from the 2nd |
seedream-5.0-lite | CN site | ¥0.22/image | ¥0.22/image | — |
dola-seedream-5.0-pro | Global site | $0.045/image | $0.09/image | 1st free, $0.003/image from the 2nd |
seedream-5.0-lite | Global site | $0.035/image | $0.035/image | — |
Tier boundary: on the CN site the ≤1.5K band covers up to 2.36M pixels (≈1536x1536), above that is the 2K tier; the global site splits at 2.61M pixels. Both lite models are flat-priced with no resolution bands (the CN-site lite requires size ≥ 1920x1920).
Example: dola-seedream-5.0-pro at 1024x1024 (≈1.05M px) = ¥0.3; 2048x2048 (≈4.19M px, 2K tier) = ¥0.6. seedream-5.0-lite = ¥0.22 per image at any supported size, settled by the number of images actually returned. dola-seedream-5.0-pro at 2048x2048 = $0.09; 1536x1536 = $0.045.
Notes
- Result URLs are temporary — download promptly (or use
response_format: "b64_json"for base64). - Seedream handles Chinese prompts and text rendering well — great for posters, covers, and e-commerce visuals.
- Do not rely on
nfor multiple images: send concurrent requests instead. - Both lite models (
seedream-5.0-lite/seedream-5.0-lite) have a minimum size (1920x1920); the Pro models (dola-seedream-5.0-pro/dola-seedream-5.0-pro) work from1024x1024up. - Group multipliers apply on top; prices above are in the base currency (CNY on the CN site / USD on the global site).
