Семейство Seedance
Модели генерации видео от ByteDance — всего четыре, вызываются через видеоэндпоинт OfoxAI POST /v1/videos. Задачи выполняются асинхронно: после создания задачи вы получаете её ID и по нему запрашиваете результат.
Выбор модели
Все четыре модели поддерживают текст в видео, изображение в видео и видеореференсы, а также могут создавать синхронную звуковую дорожку (generate_audio по умолчанию true). adaptive означает сохранение пропорций входного изображения.
bytedance/seedance-2.530 секунд, 21:9bytedance/seedance-2.04Kbytedance/seedance-2.0-fast480p, 720pbytedance/seedance-2.0-mini480p, 720pТаблица выше совпадает с video_attributes, которые возвращает Models API; если возможности модели изменятся, ориентируйтесь на ответ API. Оплата посекундная, фактическая стоимость определяется полем usage.video_cost в результате задачи; цены см. на странице модели .
Указывайте resolution и duration явно. Если их не передать, 2.0 по умолчанию использует 1080p; стоимость рассчитывается по уровню разрешения и будет выше, чем для 720p.
Примеры вызова
Примеры ниже показывают только запрос на создание задачи. Полный процесс — запрос статуса и скачивание результата — описан в разделе Video API · Быстрый старт.
Текст в видео
Передаётся только prompt.
curl -X POST https://api.ofox.io/v1/videos \
-H "Authorization: Bearer $OFOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "bytedance/seedance-2.0-mini",
"prompt": "Лиса бежит по снегу, камера следует за ней",
"duration": 5,
"resolution": "720p",
"aspect_ratio": "16:9"
}'frame_imagesиinput_referencesнельзя передавать одновременно — это возвращает400 references_conflict.- Изображения можно передавать как публичный URL или как строку, начинающуюся с
data:image/...;base64,. - Если звуковая дорожка не нужна, передайте
"generate_audio": false. - Полное описание структуры полей — в разделе Создание задачи видео.
Референсы с реальными людьми
real_person: true на верхнем уровне запроса.Официальный API Seedance от ByteDance не позволяет напрямую загружать референсные изображения или видео с лицами реальных людей. Официальная документация BytePlus Seedance 2.0 требует использовать разрешённые ассеты с изображением реальных людей, а руководство Volcano Engine Ark по библиотеке реальных людей описывает шаги: отправка приглашения, проверка личности и выдача разрешения, загрузка материалов, приём разрешения и получение ID ассета.
{
"model": "bytedance/seedance-2.0",
"prompt": "Человек из кадра идёт по кинематографичному ночному рынку",
"duration": 5,
"resolution": "720p",
"real_person": true,
"input_references": [
{ "type": "image_url", "image_url": { "url": "https://example.com/person.jpg" } }
]
}- Перед отправкой OfoxAI выполняет предобработку референсов для защиты приватности. Это снижает число ложных отказов anti-deepfake-модерации upstream, но не гарантирует, что upstream примет задачу; задачи, отклонённые upstream, не тарифицируются.
real_person— инструкция по обработке, а не подтверждение согласия. Отправляйте только изображения, на использование которых у вас есть законное право и согласие.- Что делать, если изображение всё равно отклоняется, и коды ошибок предобработки — в разделе Референсы с реальными людьми.
Выбор провайдера
Чтобы закрепить провайдера, добавьте на верхнем уровне запроса:
"provider": { "type": "byteplus" }Для генерации контента, подходящего не для всех аудиторий, byteplus нужно указать явно. Без этого запрос может быть направлен в volcengine и отклонён модерацией. Если провайдер закреплён и недоступен, запрос не переключается на другого автоматически.
Неверное значение provider.type возвращает 400 invalid_provider_type; если указанный провайдер не обслуживает модель — 400 provider_type_unavailable. Общее описание — в разделе Маршрутизация провайдеров для видео.
Распространённые ошибки
Если задача создана успешно, но завершилась неудачей на этапе генерации, запрос статуса вернёт status: "failed", а причина будет в поле error; таймаут соответствует error.code: "expired". Полный список кодов — в разделе Коды ошибок Video API.
Официальная документация
- BytePlus Seedance 2.0: API генерации видео
- Центр документации Volcano Engine Ark
- OfoxAI · Создание задачи видео
Часто задаваемые вопросы
Как сделать в Seedance видео по первому и последнему кадрам?
Передайте в frame_images два изображения: одно с frame_type first_frame, другое — last_frame. Если передать только last_frame, вернётся 400 last_frame requires a first_frame. frame_images нельзя передавать вместе с input_references.
Поддерживает ли Seedance 2.0 разрешение 4K?
Значение 4k поддерживает только bytedance/seedance-2.0. Максимум для 2.5 — 1080p, для Fast и Mini — 720p. Неподдерживаемое разрешение возвращает 400, а в сообщении об ошибке перечислены допустимые значения.
Какую максимальную длительность поддерживает Seedance?
Seedance 2.5 — от 4 до 30 секунд на задачу, 2.0, 2.0 Fast и 2.0 Mini — от 4 до 15 секунд. Значение вне диапазона возвращает 400 duration out of range.
Поддерживает ли Seedance соотношение 21:9?
Соотношение 21:9 поддерживает только Seedance 2.5. Серия 2.0 поддерживает только 16:9, 9:16, 1:1 и adaptive.
Что делать, если Seedance выдаёт ошибку из-за реального человека на референсе?
При прямом вызове официального API сначала нужно пройти проверку личности в библиотеке ассетов. При вызове через OfoxAI достаточно добавить real_person: true на верхнем уровне запроса и передать изображение напрямую — OfoxAI сначала выполнит предобработку для защиты приватности. Если upstream всё равно отклонит задачу, оплата не взимается; скорректируйте изображение по рекомендациям со страницы о референсах с реальными людьми и повторите.
Сколько референсных изображений можно передать в Seedance за раз?
В input_references — до 9 изображений, 3 аудиофрагментов (каждый не длиннее 15 секунд) и 1 видео. При превышении возвращается 400 too_many_references.
Как долго действуют ссылки на видео, созданные Seedance?
Используйте в первую очередь mirror_urls. Если возвращаются только unsigned_urls, это временные адреса upstream, которые могут перестать работать через 24 часа, — скачайте и сохраните видео заранее.