Documentation Index Fetch the complete documentation index at: https://docs.oxen.ai/llms.txt
Use this file to discover all available pages before exploring further.
Try Seedream 4.5 in the Workbench Run this model interactively, tune parameters, and compare outputs.
Model ID: bytedance-seedream-4-5
bytedance/seedream-4.5 is an image generation model. It excels in high-fidelity text-to-image and image-to-image generation with improved consistency, editing capabilities, and realism in physics, lighting, and multi-angle outputs compared to prior versions.
Some other noteworthy features of bytedance/seedream-4.5 include multi-reference control (up to 10 images), batch generation (up to 6-15 images), 4K resolution support, and enhanced text rendering.
Metric Value Parameter Count Unknown Mixture of Experts Unknown Context Length Unknown Multilingual No Quantized* Unknown
*Quantization is specific to the inference provider and the model may be offered with different quantization levels by other providers.
Example request
Use the Workbench as a request builder: configure parameters for this model in the UI, then open the API tab to copy the exact cURL or Python call.
Sync
Async
Async with SSE
See the image generation reference for more details. Minimal
Basic parameters
All parameters
curl -X POST https://hub.oxen.ai/api/ai/images/generate \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere."
}'
curl -X POST https://hub.oxen.ai/api/ai/images/generate \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere.",
"input_image": [
"https://hub.oxen.ai/api/repos/elau/assets/file/main/bloxy/bloxy_cropped_512x512.png"
]
}'
curl -X POST https://hub.oxen.ai/api/ai/images/generate \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere.",
"input_image": [
"https://hub.oxen.ai/api/repos/elau/assets/file/main/bloxy/bloxy_cropped_512x512.png"
],
"aspect_ratio": "1:1",
"size": "4K"
}'
See the async queue reference for more details. Minimal
Basic parameters
All parameters
# Enqueue, capture the generation id.
GEN_ID = $( curl -s -X POST https://hub.oxen.ai/api/ai/queue \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere."
}' | jq -r '.generations[0].generation_id' )
# Poll until the generation reaches a terminal status.
while true ; do
STATUS = $( curl -s -H "Authorization: Bearer $OXEN_API_KEY " \
"https://hub.oxen.ai/api/ai/queue/ $GEN_ID " | jq -r '.status' )
echo "Status: $STATUS "
case $STATUS in succeeded | failed | cancelled ) break ;; esac
sleep 5
done
# Print the result.
curl -s -H "Authorization: Bearer $OXEN_API_KEY " \
"https://hub.oxen.ai/api/ai/queue/ $GEN_ID " | jq .
# Enqueue, capture the generation id.
GEN_ID = $( curl -s -X POST https://hub.oxen.ai/api/ai/queue \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere.",
"input_image": [
"https://hub.oxen.ai/api/repos/elau/assets/file/main/bloxy/bloxy_cropped_512x512.png"
]
}' | jq -r '.generations[0].generation_id' )
# Poll until the generation reaches a terminal status.
while true ; do
STATUS = $( curl -s -H "Authorization: Bearer $OXEN_API_KEY " \
"https://hub.oxen.ai/api/ai/queue/ $GEN_ID " | jq -r '.status' )
echo "Status: $STATUS "
case $STATUS in succeeded | failed | cancelled ) break ;; esac
sleep 5
done
# Print the result.
curl -s -H "Authorization: Bearer $OXEN_API_KEY " \
"https://hub.oxen.ai/api/ai/queue/ $GEN_ID " | jq .
# Enqueue, capture the generation id.
GEN_ID = $( curl -s -X POST https://hub.oxen.ai/api/ai/queue \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere.",
"input_image": [
"https://hub.oxen.ai/api/repos/elau/assets/file/main/bloxy/bloxy_cropped_512x512.png"
],
"aspect_ratio": "1:1",
"size": "4K"
}' | jq -r '.generations[0].generation_id' )
# Poll until the generation reaches a terminal status.
while true ; do
STATUS = $( curl -s -H "Authorization: Bearer $OXEN_API_KEY " \
"https://hub.oxen.ai/api/ai/queue/ $GEN_ID " | jq -r '.status' )
echo "Status: $STATUS "
case $STATUS in succeeded | failed | cancelled ) break ;; esac
sleep 5
done
# Print the result.
curl -s -H "Authorization: Bearer $OXEN_API_KEY " \
"https://hub.oxen.ai/api/ai/queue/ $GEN_ID " | jq .
See the async queue reference for more details. Minimal
Basic parameters
All parameters
# Enqueue, capture the generation id.
GEN_ID = $( curl -s -X POST https://hub.oxen.ai/api/ai/queue \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere."
}' | jq -r '.generations[0].generation_id' )
# Stream the SSE channel, grab the data line that follows a
# media_generation_completed event for our id, and pretty-print it.
curl -sN -H "Authorization: Bearer $OXEN_API_KEY " https://hub.oxen.ai/api/events \
| awk -v id=" $GEN_ID " '
/^event: media_generation_completed$/ { expect=1; next }
/^data: / && expect {
payload = substr($0, 7)
if (index(payload, "\"generation_id\":\"" id "\"")) { print payload; exit }
expect = 0
}
' | jq .
# Enqueue, capture the generation id.
GEN_ID = $( curl -s -X POST https://hub.oxen.ai/api/ai/queue \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere.",
"input_image": [
"https://hub.oxen.ai/api/repos/elau/assets/file/main/bloxy/bloxy_cropped_512x512.png"
]
}' | jq -r '.generations[0].generation_id' )
# Stream the SSE channel, grab the data line that follows a
# media_generation_completed event for our id, and pretty-print it.
curl -sN -H "Authorization: Bearer $OXEN_API_KEY " https://hub.oxen.ai/api/events \
| awk -v id=" $GEN_ID " '
/^event: media_generation_completed$/ { expect=1; next }
/^data: / && expect {
payload = substr($0, 7)
if (index(payload, "\"generation_id\":\"" id "\"")) { print payload; exit }
expect = 0
}
' | jq .
# Enqueue, capture the generation id.
GEN_ID = $( curl -s -X POST https://hub.oxen.ai/api/ai/queue \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $OXEN_API_KEY " \
-d '{
"model": "bytedance-seedream-4-5",
"prompt": "An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting ' \' 'Oxen.ai Cafe' \' ' in glitching cyan and magenta lettering above it' \' 's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere.",
"input_image": [
"https://hub.oxen.ai/api/repos/elau/assets/file/main/bloxy/bloxy_cropped_512x512.png"
],
"aspect_ratio": "1:1",
"size": "4K"
}' | jq -r '.generations[0].generation_id' )
# Stream the SSE channel, grab the data line that follows a
# media_generation_completed event for our id, and pretty-print it.
curl -sN -H "Authorization: Bearer $OXEN_API_KEY " https://hub.oxen.ai/api/events \
| awk -v id=" $GEN_ID " '
/^event: media_generation_completed$/ { expect=1; next }
/^data: / && expect {
payload = substr($0, 7)
if (index(payload, "\"generation_id\":\"" id "\"")) { print payload; exit }
expect = 0
}
' | jq .
Fetch model details
The models endpoint returns the full model object, including its json_request_schema.
curl -H "Authorization: Bearer $OXEN_API_KEY " https://hub.oxen.ai/api/ai/models/bytedance-seedream-4-5
Request parameters
Required parameters
Field Type Default Description promptstring"An exterior shot of a gritty neon-drenched cyberpunk caf\u00e9, a flickering holographic sign projecting 'Oxen.ai Cafe' in glitching cyan and magenta lettering above it's outdoor windows. High-contrast digital aesthetic with neon tones, chromatic aberration, digital noise artifacts, and dense megacity back-alley atmosphere."Prompt for generated image
Optional parameters
Field Type Default Description input_imagearray<string>— Input images to transform or use as reference (supports multiple image urls) aspect_ratiostring"1:1"Aspect ratio for the generated image One of: 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3, match_input_image. sizestring"4K"Image resolution: 2K (2048px) or 4K (4096px). One of: 2K, 4K. seedinteger— Random seed. Set for reproducible generation