models

ByteDance: Seedance 2.0

Markdown · JSON

ByteDance: Seedance 2.0

Seedance 2.0 создаёт и редактирует видео по тексту, изображениям, видео- и аудиореференсам. Он может продолжать существующий видеоматериал и создавать синхронизированный звук; доступны длительность 4–15 секунд, результат в 480p или 720p и явно заданные роли референсов.

О модели

Описание раскрывает возможности модели. Доступные в Ailoot входные данные, результаты и параметры выбранного метода перечислены ниже.

Seedance 2.0 создаёт видео по письменному описанию сцены или сочетанию изображений, видео- и аудиореференсов. Конкретный селектор doubao-seedance-2-0-260128 обозначает стандартный профиль 2.0. Документированные сценарии включают создание нового видео, редактирование и продолжение существующего материала. Используйте референсы для передачи внешнего вида, движения, операторских приёмов и звука, затем укажите, какими частями сцены они должны управлять.

Текст можно передавать отдельно. Документированные мультимодальные сочетания также допускают изображения или видео с необязательным текстом, изображения со звуком, видео со звуком и изображения, видео и звук вместе. Таким образом, в перечисленных сочетаниях звук сопровождает визуальные материалы; отдельный запрос создания видео только по аудио не описан. Чётко задайте нужный результат даже там, где текст необязателен, чтобы роль каждого референса была явной и её не приходилось выводить из несвязанных материалов.

Массив content различает элементы text, image_url, video_url и audio_url. Мультимодальные референсы используют роли reference_image, reference_video и reference_audio. Изображение может задать человека, предмет, место или визуальное решение. Видео может показать исполнение, движение или ракурс камеры, а аудио — звуковую дорожку или временной рисунок. Укажите назначение в задании: сохранить объект с изображения, следовать ракурсу видео и использовать аудио как фон. Не поручайте каждому референсу определять сразу все свойства.

Документированный рекламный пример сочетает два изображения товара с видео- и аудиореференсом. Он описывает начальный вид, последовательность действий, крупную деталь товара и финальную композицию, сохраняя постоянство фонового голоса. Так же можно организовать короткую демонстрацию: представить объект, показать одно действие и закончить узнаваемой особенностью. Для редактирования укажите исходное видео и элемент, который должен измениться; для продолжения объясните действие за пределами существующей сцены с сохранением объекта и направления движения.

Для профиля 2.0 документирована длительность в целых секундах от четырёх до пятнадцати либо -1 для автоматического выбора в этом диапазоне. Значение по умолчанию — пять секунд. Варианты разрешения — 480p и 720p, по умолчанию — 720p; 1080p для 2.0 исключено. Фиксированные соотношения сторон: 16:9, 4:3, 1:1, 3:4, 9:16 и 21:9. Адаптивное соотношение сторон может выбирать кадрирование по тексту или референсу: работа с первым кадром следует начальному изображению, а мультимодальная — задуманной сцене или первому подходящему материалу, причём видео имеет приоритет над изображениями. Проверьте фактические соотношение сторон и длительность в результате задачи.

Генерируемый звук управляется отдельно от медиа-референсов. generate_audio=true запрашивает синхронизированные голоса, эффекты и фоновую музыку по тексту и визуальному содержимому; false — видео без звука. Документированное значение по умолчанию — true; для речи рекомендуются реплики в кавычках. Укажите, кто говорит и как звук связан с видимым действием, затем проверьте фактические слова, принадлежность голосов персонажам и временное согласование. Передача аудиореференса и включение генерации звука — разные настройки запроса.

Руководство 2.0 исключает старые настройки frames и camera_fixed и не поддерживает отложенную обработку flex. Используйте поле duration и описывайте движение камеры в самой сцене. Начальное значение генерации и водяной знак остаются документированными настройками; руководство говорит, что одинаковые запрос и seed могут дать похожие результаты, но не гарантирует точного совпадения. Не принимайте seed за доказательство воспроизводимости, а повторный запрос — за уже просмотренный клип.

Расход видеотокенов рассчитывается так: (длительность входного видео + длительность выходного видео) × ширина результата × высота результата × частота кадров результата / 1024. Запросы с входным видео и без него относятся к разным категориям тарификации. Запрос задачи сообщает usage.completion_tokens и usage.total_tokens; сохраняйте эти полученные значения вместе с готовым клипом.

Процесс асинхронный: отправка возвращает идентификатор задачи, а завершённая задача — content.video_url вместе с фактическими длительностью, разрешением, соотношением сторон, частотой кадров и расходом токенов. Сохраняйте идентификатор и готовое видео с исходными референсами и текстом запроса. Срок действия по умолчанию — 172800 секунд, допустимы 3600–259200 секунд от создания задачи; при превышении интервала задача получает статус expired. Просмотрите весь результат, включая стык редактирования или продолжения: внешность персонажей, детали объектов, пространственные отношения, непрерывность движения камеры и синхронизацию звука с изображением.

Ailoot Ultra · Видео POST /v1/videos doubao-seedance-2-0-260128

doubao-seedance-2-0-260128

ByteDance /doubao-seedance-2-0-260128

Начало

Seedance 2.0 создаёт и редактирует видео по тексту, изображениям, видео- и аудиореференсам. Он может продолжать существующий видеоматериал и создавать синхронизированный звук; доступны длительность 4–15 секунд, результат в 480p или 720p и явно заданные роли референсов.

Допустимые входные данные
Текст · Картинки · Видео · Аудио
Результаты
Видео

Доступно в Ailoot · входные данные и методы

Ailoot Ultra · Видео POST /v1/videos
Входные данные
text, image, video, audio
Результат
video
ПолеТипТребованиеЗначения и ограниченияПо умолчанию
ПолеmodelТипstringТребованиеОбязательноЗначения и ограничения
doubao-seedance-2-0-260128
По умолчанию—
ПолеcontentТипarrayТребованиеОбязательноЗначения и ограничения
Условия: Нативные объекты текста и медиа; внешний массив должен быть непустым. Этот общий конструктор Ailoot не проверяет типы вложенных узлов.
По умолчанию—
Полеgenerate_audioТипbooleanТребованиеНеобязательноЗначения и ограничения
Условия: Синхронизированный звук, встроенный в видео.
По умолчаниюtrue
ПолеdurationТипintegerТребованиеНеобязательноЗначения и ограничения
Условия: Целое число 4–15 или -1; возвращается фактическая длительность результата.
По умолчанию5
ПолеresolutionТипstringТребованиеНеобязательноЗначения и ограничения
480p, 720p
Условия: Для 2.0/fast явно указано отсутствие поддержки 1080p.
По умолчанию720p
ПолеratioТипstringТребованиеНеобязательноЗначения и ограничения
16:9, 4:3, 1:1, 3:4, 9:16, 21:9, adaptive
Условия: Adaptive явно отнесён к 2.0/fast/1.5; в примере для 2.5 — только 16:9.
По умолчаниюadaptive
ПолеwatermarkТипbooleanТребованиеНеобязательноЗначения и ограниченияПо умолчаниюfalse
ПолеseedТипintegerТребованиеНеобязательноЗначения и ограничения
Минимум: -1
Максимум: 4 294 967 295
По умолчанию-1
Полеexecution_expires_afterТипintegerТребованиеНеобязательноЗначения и ограничения
Минимум: 3 600
Максимум: 259 200
Единица: секунды
По умолчанию172 800
Полеservice_tierТипstringТребованиеНеобязательноЗначения и ограничения
default
Условия: Для 2.0/fast режим offline flex исключён; применимость к 2.5 не установлена.
По умолчаниюdefault
Полеsafety_identifierТипstringТребованиеНеобязательноЗначения и ограниченияПо умолчанию—
ПолеtoolsТипobjectТребованиеНеобязательноЗначения и ограничения
Условия: Только 2.0/fast; документировано type=web_search.
По умолчанию—
Сочетания входных материалов

Параметры и жизненный цикл метода
ПараметрКонтракт
Параметрcontent_typeКонтрактapplication/json
ПараметрrequiredКонтрактcontent, model
ПараметрoptionalКонтрактgenerate_audio, duration, resolution, ratio, watermark, seed, execution_expires_after, service_tier, safety_identifier, tools
Параметрmaterial_typesКонтрактtext, image, video, audio
Параметрadditional_propertiesКонтрактtrue
Параметрvalidation_scopeКонтрактAiloot проверяет типы обязательных полей, непустое значение model и непустой массив content. Остальные поля запроса сохраняются для выбранной модели.
Параметрmaterial_combinationsКонтрактtext, image, video, image, audio, image, video, video, audio, image, video, audio
Параметрoptional_text_with_mediaКонтрактtrue
Параметрreference_media_count_and_size_limitsКонтрактnull

Псевдонимы метода: /v1/videos/generations

Жизненный цикл: submit_once_poll_original

GET /v1/videos/{request_id}

GET /v1/videos/generations/{request_id}

GET /v1/videos/{request_id}/content

GET /v1/videos/generations/{request_id}/content

Создайте один раз и сохраните возвращённые публичные id/polling_url.

Проверяйте исходную задачу; после succeeded скачайте фактический content.video_url, принадлежащий Ailoot.

Тарифы

Как рассчитывается итоговая плата

Отображаемые тарифы позволяют оценить стоимость до генерации. Итоговое списание рассчитывается по стоимости, записанной для исходной генерации. Измеренная длительность результата и прогнозные объёмы не являются итоговым оплачиваемым объёмом.

Тарифная справка не добавляет режимы запроса. Поддерживаемые параметры указаны для выбранного метода.

Быстрый режим
Не указано При выборе быстрого режима
Режим flex
Не указано При выборе режима flex
Максимальная интенсивность рассуждений
Не указано При максимальной интенсивности рассуждений с корректировкой по умолчанию (default)

Оценочные ставки для сравнения

Цены по конфигурациям

Сопоставьте каждую плату с указанными условиями. Для каждого набора альтернативных конфигураций используйте одну ставку.

КонфигурацияШкала ставокПрогноз количестваРасчётная единицаПлата
КонфигурацияБазовые тарифы на токеныШкала ставокБазовая ставкаПрогноз количества—Расчётная единица—Плата
Вход · Входные токены · Оценка только для сравнения — / 1K токенов
Выход · Выходные токены · Оценка только для сравнения — / 1K токенов
Вход · Чтение кэша · Оценка только для сравнения — / 1K токенов
Вход · Запись в кэш · Оценка только для сравнения — / 1K токенов
Вход · Запись в кэш, 1 час · Оценка только для сравнения — / 1K токенов
КонфигурацияВо входных данных есть видео.Шкала ставок—Прогноз количества—Расчётная единицаза 1K видеотокеновПлата
Выход · Оценка только для сравнения $0.0096 за 1K видеотокенов
КонфигурацияВо входных данных нет видео.Шкала ставок—Прогноз количества—Расчётная единицаза 1K видеотокеновПлата
Выход · Оценка только для сравнения $0.015768 за 1K видеотокенов
КонфигурацияОриентировочная стоимость генерацииШкала ставок—Прогноз количестваОценка для одной генерацииРасчётная единица—Плата
Выход · Оценочная стоимость генерации · Оценка только для сравнения $0.822402 оценка до генерации

Эта оценка не является дополнительным списанием или фиксированным тарифом для завершённой генерации.

Ailoot резервирует расчётную сумму перед запросом. После получения результата списывает итоговую плату по измеренному расходу. Для окончательного списания за потоковый ответ используется итоговая запись расхода. Как работают резервирование и расчёт →

Примеры запросов

Ailoot Ultra · Видео

curl · создать видеоcurl · прочитать исходную задачуcurl · скачать своё видео
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
cat > request.json <<'JSON_REQUEST'
{"model":"doubao-seedance-2-0-260128","content":[{"type":"text","text":"女孩抱着狐狸,女孩睁开眼,温柔地看向镜头,狐狸友善地抱着,镜头缓缓拉出,女孩的头发被风吹动"}]}
JSON_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/videos \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @request.json -D response-headers.txt -o result.json
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_POLL'
import json
from pathlib import Path
from urllib.parse import quote,urljoin,urlsplit
r=json.loads(Path("result.json").read_text())
i=r.get("id")
if not isinstance(i,str) or not i.startswith("native302_"):raise SystemExit("Keep original response/headers/id; do not resubmit creation.")
u=urljoin("https://api.ailoot.ai",r.get("polling_url") or "/v1/videos/"+quote(i,safe=""))
p=urlsplit(u)
if p.scheme!="https" or p.netloc!="api.ailoot.ai" or not p.path.startswith("/v1/videos/"):raise SystemExit("Use actual Ailoot lookup path.")
Path("poll-url.txt").write_text(u)
PY_POLL
curl --fail-with-body --silent --show-error "$(cat poll-url.txt)" -H "Authorization: Bearer $AILOOT_API_KEY" -D status-headers.txt -o status.json
set -eu
python3 - <<'PY_ASSETS'
import json
from pathlib import Path
from urllib.parse import urlsplit
r=json.loads(Path("status.json").read_text())
if r.get("status")!="succeeded":raise SystemExit("Poll same original job until an owned result is returned.")
u=r.get("content",{}).get("video_url")
urls=[u] if isinstance(u,str) else u
if not isinstance(urls,list) or not urls:raise SystemExit("No completed video URL.")
for u in urls:
    if not isinstance(u,str):raise SystemExit("Invalid returned URL.")
    p=urlsplit(u)
    if p.scheme!="https" or p.netloc!="api.ailoot.ai" or not p.path.startswith("/v1/media/assets/") or not p.path.endswith("/content") or not p.query:raise SystemExit("Wait for actual Ailoot-owned signed result.")
Path("asset-urls.txt").write_text("\n".join(urls)+"\n")
PY_ASSETS
index=0
while IFS= read -r asset_url; do
  curl --fail-with-body --silent --show-error "$asset_url" -o "video-${index}.bin"
  index=$((index + 1))
done < asset-urls.txt

Получить и сохранить результаты

Ailoot Ultra · Видео

Нативный JSON с публичными id/polling_url. После публикации content.video_url содержит подписанные URL, принадлежащие Ailoot; до публикации выбранные URL результатов очищаются.

  • GET /v1/videos/{request_id}
  • GET /v1/videos/generations/{request_id}
  • GET /v1/videos/{request_id}/content
  • GET /v1/videos/generations/{request_id}/content
Сохраняйте все готовые результаты

Сохраните каждое готовое видео или полученный файл; загрузите содержимое по каждому фактически полученному URL материала.

Сохраните каждый фактический URL в content.video_url; index должен указывать на реальный возвращённый результат.

Если нужно проверить исходный ответ

Сохраните исходные ответ, заголовки и id и проверяйте эту операцию; никогда не повторяйте создание с неизвестным исходом.

Поля ответа
ПолеТип
ПолеidТипstring
Полеprovider_task_idТипstring
Полеpolling_urlТипstring
ПолеstatusТипstring when supplied
Полеcontent.video_urlТипstring|string[]
ПолеusageТипobject when supplied
Ошибки и дальнейшие шаги
ОтветУсловиеСледующий шаг
Ответ400 · invalid_request_errorУсловиеНедопустимые JSON/model, типы обязательных полей или индекс содержимого.Следующий шаг
Ответ401 · authentication_errorУсловиеНедействительный ключ Ailoot API.Следующий шаг
Ответ404 · not_found_errorУсловиеЗадача или результат отсутствуют либо не принадлежат тому же пользователю, ключу API или группе.Следующий шаг
Ответ502 · result_pending_checkУсловиеИсходная отправка или статус неполны; сохраните исходный ID, не отправляйте повторно.Следующий шаг
Ответ503 · result_pending_checkУсловиеИсходные медиа, маршрут или окончательный расчёт проверяются; продолжайте исходную операцию.Следующий шаг

Псевдонимы

Псевдонимы моделей

Ailoot Ultra doubao-seedance-2-0-260128

Псевдонимы путей метода

/v1/videos/generations

Связанные ID для вызова

doubao-seedance-2-0-260128

FAQ · ByteDance: Seedance 2.0
Какие входные данные и результаты доступны?

POST /v1/videos · doubao-seedance-2-0-260128: text, image, video, audio → video

Какие поля использует запрос?

POST /v1/videos · doubao-seedance-2-0-260128: model, content, generate_audio, duration, resolution, ratio, watermark, seed, execution_expires_after, service_tier, safety_identifier, tools

Какие ограничения действуют?

POST /v1/videos · doubao-seedance-2-0-260128: seed.minimum: -1; seed.maximum: 4294967295; execution_expires_after.minimum: 3600; execution_expires_after.maximum: 259200

Подробнее

Подключите Ailoot к Claude Code, OpenCode, Hermes или своему приложению.

Компания и портфель её проектов

Компания и портфель её проектов: миллионы клиентов; продажи на миллиарды ежемесячно.

Покупайте токены со скидкой.

Скидка по подписке для регулярной работы. Промокоды — до 50% на покупку токенов.

Подписка
Выберите тариф со скидкой для своих регулярных запросов.
Промокод до 50%
Введите код при покупке. Цена пересчитается с учётом действующей акции.
Расходы в истории
Модель, токены и сумма сохраняются для каждого запроса.

Выбрать подписку · Посмотреть цены моделей

Подключайте API к продукту, который вы продаёте.

SaaS, приложения и боты — по оферте и лицензионному договору Ailoot. Для перепродажи запросите реселлерскую лицензию.

Коммерческое приложение
Встраивайте генерацию текста, картинок, видео и звука в платные функции своего сервиса.
Лицензия для реселлера
Пришлите описание проекта и схему доступа. Запросите письменные условия использования и перепродажи.
Документы на сайте
Оферта, лицензионный договор и политика обработки данных доступны до подключения.

Запросить реселлерскую лицензию · Оферта и лицензионный договор