Image
Seedream 5.5
Вызывайте Seedream 5.5 для генерации по тексту, правок с использованием до 10 референсов, прозрачного вывода и разделения на слои с распознаванием текста: оплата за изображение, результат через задачу.
Seedream 5.5 — модель изображений от ByteDance. Один запрос создаёт одно изображение из промпта, из промпта и до 10 референсов либо разделяет одно изображение на фоновую подложку и прозрачные слои, при необходимости с распознанным текстом каждого текстового слоя. Отправьте запрос, сохраните возвращённый идентификатор задачи и получите готовые изображения из задачи. Референсы передаются как URL.
ID моделей
| ID модели | Входные данные | Размер вывода | Изображений на запрос |
|---|---|---|---|
seedream-5-5 | текст, 0–10 изображений | 1K, 1.5K, 2K или WIDTHxHEIGHT | 1 либо 2–100 при разделении на слои (включая фоновую подложку) |
Актуальные цены — на странице модели.
Краткий пример
curl https://api.seedrouter.ai/v1/images/generations \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "seedream-5-5",
"prompt": "A ceramic teapot shaped like a sleeping fox on a linen tablecloth, soft morning window light, shallow depth of field. No text.",
"size": "1K"
}'Конечная точка
POST https://api.seedrouter.ai/v1/images/generations| Заголовок | Значение |
|---|---|
| Authorization | Bearer YOUR_API_KEY |
| Content-Type | application/json |
Ответ — это задача ({"id": "task_...", "status": "processing"}), а не готовое изображение. Опрашивайте GET /v1/tasks/{task_id}, чтобы получить результат. Храните API-ключи в серверном коде. Референсы и разделение на слои передаются в том же запросе через image; /v1/images/edits для этой модели не используется и возвращает 400.
Параметры
| Поле | Тип | По умолчанию | Примечания |
|---|---|---|---|
model | строка | обязательно | seedream-5-5 |
prompt | строка | обязательно | Описывает создаваемое изображение. При layer_decomposition необязательно: укажите элементы для отделения или опустите поле, и модель сама найдёт объекты, текст и фон. |
image | URL или список URL | нет | Один публичный URL изображения или список из не более чем 10 URL. Без поля запрос выполняет генерацию по тексту. При layer_decomposition — ровно одно изображение. Каждый референс оплачивается. |
size | строка | 2K | Уровень 1K, 1.5K или 2K либо точные размеры в пикселях WIDTHxHEIGHT — см. Размер вывода. При layer_decomposition: только auto (по умолчанию), 1K, 1.5K или 2K. |
output_format | перечисление | png | png или jpeg. При layer_decomposition задаёт только формат фоновой подложки; слои всегда в PNG. |
background | перечисление | auto | auto, opaque или transparent. transparent работает с референсами и без них и требует вывода в png. При layer_decomposition не передавайте это поле, даже со значением auto. |
layer_decomposition | логический | false | Разделяет одно входное изображение на фоновую подложку и прозрачные PNG-слои. |
layer_decomposition_options.max_images | целое число | 30 | Только при layer_decomposition. 2–100, включая фоновую подложку. Это максимум: модель может вернуть меньше. |
layer_decomposition_options.text_recognition | логический | false | Только при layer_decomposition. Добавляет распознанный текст к обычным текстовым слоям — см. Распознавание текста. |
optimize_prompt_options.mode | перечисление | standard | Только standard. Оптимизация промпта всегда включена, отключить её нельзя. |
watermark | логический | false | true добавляет отметку «AI generated». |
content_filter | логический | true | Доступен только через API. В Playground всегда включён. |
Поля вне этого списка удаляются перед передачей запроса; они не вызывают ошибку и не меняют результат. n, stream, seed и response_format недоступны: каждый запрос возвращает одно изображение, а при layer_decomposition — до max_images. callback_url недоступен; вместо этого опрашивайте задачу.
Размер вывода
| Способ | Пример | Правила |
|---|---|---|
| Уровень | "size": "2K" | 1K, 1.5K или 2K. Опишите форму в prompt; модель выбирает по нему соотношение сторон. |
| Точные размеры в пикселях | "size": "2560x1440" | Общее число пикселей от 921 600 до 4 624 220; ширина / высота от 1/16 до 16. |
Уровней 3K и 4K нет, задать размер соотношением сторон тоже нельзя: для фиксированного кадра 16:9 в 2K отправьте 2560x1440. 1K и 1.5K стоят одинаково; 2K и любой размер свыше 2,61 миллиона пикселей стоят дороже (см. Факторы стоимости).
Референсы
Передайте одно изображение для правки или несколько для объединения и укажите в prompt, что сохранить и что изменить. Ссылайтесь на них по порядку («куртка с изображения 1»).
{
"model": "seedream-5-5",
"prompt": "Turn this scene into a snowy winter night with warm light from the lighthouse windows, keep the composition",
"image": "https://example.com/lighthouse.jpg",
"size": "2560x1440"
}Прозрачный фон
Установите background: "transparent", чтобы получить PNG с прозрачным фоном только по промпту или по референсам:
{
"model": "seedream-5-5",
"prompt": "A glossy red enamel pin shaped like a cherry, product cutout",
"background": "transparent",
"output_format": "png",
"size": "1K"
}Разделение на слои
Отправьте ровно одно изображение с layer_decomposition: true. Задача возвращает сначала фоновую подложку, затем каждый слой как прозрачный PNG.
{
"model": "seedream-5-5",
"image": "https://example.com/poster.jpg",
"layer_decomposition": true,
"size": "1K",
"layer_decomposition_options": { "max_images": 4, "text_recognition": true }
}Каждый слой содержит z_index (у фоновой подложки — 0; большие числа означают расположение выше), background, а также name, description и bounding_box, если модель их предоставила. bounding_box.absolute — это [left, top, right, bottom] в пикселях фоновой подложки; bounding_box.normalized — та же рамка в масштабе 0–1000. Файлы слоёв создаются на выбранном уровне, поэтому их размеры в пикселях могут отличаться от рамки: чтобы собрать картинку заново, масштабируйте каждый слой до его рамки и поместите на фоновую подложку в порядке возрастания z_index.
Уровень задаёт размер фоновой подложки и каждого слоя. При auto результат подстраивается под входное изображение: размер повышается как минимум до 1K и понижается максимум до 2K.
Распознавание текста
При layer_decomposition_options.text_recognition: true слой с обычным печатным текстом также содержит text_recognition: полный text (строки соединены через \n) и lines, каждая со своими bounding_box и runs — фрагментами текста с разным оформлением. В style фрагмента есть similar_font_family, foreground_color (#RRGGBB) и признаки bold, italic, underline, strikethrough, shadow и translucent. Шрифты и признаки — оценка модели. Для художественных или рукописных надписей текст не возвращается, а prompt, переданный при разделении, может подавить его выдачу, поэтому считайте это поле необязательным.
Медиавходы
Каждый референс — это публичный URL по HTTP(S). Data URI в base64 не принимаются: загрузите файл в собственное хранилище и передайте его URL. Принимаются JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC и HEIF, до 30 МБ каждый и с общим числом пикселей не более 36 000 000. AVIF и JP2 не поддерживаются; задача, которая не может прочитать входное изображение, завершается сбоем и не оплачивается.
Факторы стоимости
Актуальные тарифы смотрите в разделе цен модели. Seedream 5.5 оплачивается за каждое выходное изображение по его пиксельному уровню, плюс каждый референс:
cost = Σ each returned image's price for its own tier + reference images × reference price- Нижний ценовой уровень охватывает изображения до 2,61 миллиона пикселей (
1Kи1.5K); всё крупнее относится к верхнему уровню. - Каждый референс оплачивается, включая первый. При разделении на слои оплачивается одно входное изображение.
- При разделении на слои оплачиваются фоновая подложка и каждый слой, каждый по уровню своего размера.
- Сумма, резервируемая при приёме задачи, покрывает максимальный результат: одно изображение запрошенного уровня либо
max_imagesизображений (30, если поле опущено) при разделении на слои;autoсчитается верхним уровнем. Затем списывается стоимость фактически возвращённых изображений, а разница освобождается.
Итоговые списания смотрите в истории использования своей учётной записи. Неудачные задачи не оплачиваются.
Схема вывода
При отправке возвращается задача:
{"id": "task_...", "model": "seedream-5-5", "status": "processing", "created_at": 1794323757}Получение задачи
GET https://api.seedrouter.ai/v1/tasks/{task_id}Опрашивайте каждые 10–20 секунд, пока status не станет completed или failed. Сетевой тайм-аут во время опроса не означает, что генерация завершилась сбоем: сохраните идентификатор задачи и продолжите проверку. Не создавайте другую задачу, чтобы узнать ход выполнения.
Выполненная задача
{
"id": "task_...",
"model": "seedream-5-5",
"status": "completed",
"created_at": 1794323757,
"finished_at": 1794323804,
"output": {
"data": [
{
"url": "https://static.seedrouter.ai/media/tasks/task_example/0.png",
"size": "1248x832",
"output_format": "png",
"background": "opaque"
}
]
}
}Задача разделения на слои перечисляет сначала фоновую подложку, затем каждый слой. Это реальное разделение плаката с включённым распознаванием текста; показаны фоновая подложка и первый из трёх слоёв:
{
"data": [
{ "url": "https://static.seedrouter.ai/media/tasks/task_example/0.png", "size": "836x1254", "output_format": "png", "background": "opaque", "z_index": 0 },
{
"url": "https://static.seedrouter.ai/media/tasks/task_example/1.png",
"size": "1455x721",
"output_format": "png",
"background": "transparent",
"z_index": 1,
"name": "Dark blue serif main title text with dash decorations",
"description": "Dark blue serif main title text reading \"BLUE TIDE SESSIONS\", with short horizontal dash decorations on its left and right sides.",
"bounding_box": { "absolute": [0, 0, 836, 414], "normalized": [0, 0, 1000, 330] },
"text_recognition": {
"text": "BLUE TIDE\nSESSIONS",
"lines": [
{
"bounding_box": { "absolute": [146, 69, 694, 196], "normalized": [175, 55, 830, 156] },
"runs": [
{
"text": "BLUE TIDE",
"style": { "similar_font_family": "HTF Didot", "foreground_color": "#122C4D", "bold": false, "italic": false, "underline": false, "strikethrough": false, "shadow": false, "translucent": false }
}
]
},
{
"bounding_box": { "absolute": [175, 168, 664, 300], "normalized": [209, 134, 794, 239] },
"runs": [
{
"text": "SESSIONS",
"style": { "similar_font_family": "HTF Didot", "foreground_color": "#122C4D", "bold": false, "italic": false, "underline": false, "strikethrough": false, "shadow": false, "translucent": false }
}
]
}
]
}
}
]
}В наших тестах изображение 1K заняло 47 секунд, правка в 2K с одним референсом — 40 секунд, а разделение на слои в 1K, вернувшее четыре изображения, — 39 секунд. Более крупные разделения могут занимать несколько минут.
Ошибки
Запросы, отклонённые до создания задачи, возвращают HTTP-ошибку вместе с объектом error и не оплачиваются. Задача, которая завершилась сбоем уже после приёма, при запросе возвращает HTTP 200 с status: "failed" и объектом error.
Коды, HTTP-статусы и рекомендации по повторным попыткам приведены в общем каталоге ошибок.
{
"id": "task_...",
"model": "seedream-5-5",
"status": "failed",
"error": {
"code": 60001,
"message": "The request was rejected by the content policy. Please revise the prompt or input images."
}
}Если тайм-аут произошёл при самой отправке, сначала проверьте свои задачи и только потом отправляйте повторно: первый запрос мог быть уже принят.
Советы
- Начните с
1Kили1.5Kдля пробных версий;1.5Kстоит столько же, сколько1K. - Используйте точные размеры в пикселях для фиксированной формы кадра, например
2560x1440для 16:9 в 2K. - Каждый референс стоит денег: отправляйте только изображения, нужные для правки.
- Для разделения на слои установите
max_imagesблизко к ожидаемому числу элементов; резервируемая сумма зависит от него. - Если вам нужен прежде всего текст, не передавайте
promptпри разделении с включённымtext_recognition.
