Генерация видео SeeDance
Вызов моделей Volcengine Ark Doubao Seedance через TENSORAXIS — текст-в-видео, изображение-в-видео, первый/последний кадр, видео-референс/продолжение, а также расширенные параметры metadata и тарификация.
SeeDance — это интеграция TENSORAXIS с видеомоделями Volcengine Ark Doubao Seedance (канал doubao-video). Как и все видеомодели, она работает асинхронно: отправьте задачу, чтобы получить task_id, опрашивайте статус задачи, а затем считайте URL видео после завершения. Общий процесс отправки/опроса описан в обзоре генерации видео; эта страница описывает только возможности и параметры, специфичные для SeeDance.
Используйте поля запроса TENSORAXIS prompt, images и metadata; релей преобразует их в формат задачи генерации контента Volcengine. Не отправляйте тело верхнего уровня content[] от апстрима напрямую в /v1/video/generations, иначе TENSORAXIS не найдёт prompt и вернёт 400 prompt is required.
Модели и матрица возможностей
| Модель | Текст-в-видео | Изображение-в-видео (первый кадр) | Первый/последний кадр | Мультимодальный референс (изображение/видео/аудио) | Нативное аудио |
|---|---|---|---|---|---|
doubao-seedance-1-0-lite-t2v | ✅ | — | — | — | — |
doubao-seedance-1-0-lite-i2v | — | ✅ | — | — | — |
doubao-seedance-1-0-pro-250528 | ✅ | ✅ | — | — | — |
doubao-seedance-1-5-pro-251215 | ✅ | ✅ | — | — | — |
doubao-seedance-2-0-260128 | ✅ | ✅ | ✅ | ✅ | ✅ |
doubao-seedance-2-0-fast-260128 | ✅ | ✅ | ✅ | ✅ | ✅ |
По возможностям 2-0-fast соответствует 2-0, но оптимизирована для более быстрой генерации. Поддержка возможностей в конечном счёте определяется моделью апстрима.
Поля запроса
POST /v1/video/generations
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
model | string | Да | Название модели SeeDance (см. таблицу выше) |
prompt | string | Да | Промпт для видео; при пустом значении возвращается 400 prompt is required |
images | string[] | Нет | URL референсных изображений для генерации изображение-в-видео (первый кадр); сюда же добавляются несколько референсов |
image | string | Нет | URL одного референсного изображения; нормализуется в images, когда images пусто |
seconds | string | Нет | Длительность в секундах; положительное целое число преобразуется в апстрим-поле duration, эквивалентно metadata.duration |
metadata | object | Нет | Расширенные параметры SeeDance — см. расширенные параметры metadata |
Текст-в-видео
Укажите только prompt; разрешение, длительность, соотношение сторон и т. д. добавляются через metadata.
curl https://api.tensoraxis.com/v1/video/generations \
-H "Authorization: Bearer $TENSORAXIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedance-2-0-260128",
"prompt": "An old man wearing a hat smiles and walks forward down an autumn street",
"metadata": {
"resolution": "1080p",
"ratio": "16:9",
"duration": 5
}
}'Изображение-в-видео
Первый кадр
Передайте референсное изображение через images, чтобы использовать его в качестве первого кадра; остальные параметры аналогичны тексту-в-видео.
curl https://api.tensoraxis.com/v1/video/generations \
-H "Authorization: Bearer $TENSORAXIS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "doubao-seedance-1-0-lite-i2v",
"prompt": "Slow push-in, the subject smiles",
"images": ["https://example.com/first-frame.jpg"],
"metadata": {
"resolution": "1080p",
"duration": 5
}
}'Первый/последний кадр (Seedance 2.0)
Для первого/последнего кадра требуется metadata.content, чтобы пометить каждое изображение явным role (first_frame / last_frame); это переопределяет список содержимого, сгенерированный из images. См. структуру metadata.content.
{
"model": "doubao-seedance-2-0-260128",
"prompt": "A time-lapse from dawn to sunset",
"metadata": {
"resolution": "1080p",
"duration": 5,
"content": [
{ "type": "image_url", "image_url": { "url": "https://example.com/start.jpg" }, "role": "first_frame" },
{ "type": "image_url", "image_url": { "url": "https://example.com/end.jpg" }, "role": "last_frame" }
]
}
}Видео-референс/продолжение (эквивалент «редактирования видео»)
У бэкенда SeeDance нет отдельного эндпоинта для покадрового редактирования видео. Возможность Seedance 2.0 «видео-мультимодальный референс» позволяет передавать видео в качестве источника референса/продолжения — передайте элемент metadata.content с video_url.
{
"model": "doubao-seedance-2-0-260128",
"prompt": "Continue the motion in this clip, the camera keeps panning right",
"metadata": {
"resolution": "1080p",
"content": [
{ "type": "video_url", "video_url": { "url": "https://example.com/source.mp4" } }
]
}
}Когда запрос содержит видео на входе, TENSORAXIS классифицирует его как «видео на входе» на основе реального медиаконтента (а не декларации в metadata) и тарифицирует по более дешёвому тарифу — см. Тарификация. Если вам нужно покадровое редактирование видео (замена/перерисовка отдельных сегментов), используйте вместо этого редактирование видео HappyHorse (happyhorse-1.0-video-edit).
Расширенные параметры metadata
Поля внутри metadata соответствуют полям верхнего уровня задачи Volcengine. Столбец «Диапазон / По умолчанию» взят из официальной документации Volcengine и в конечном счёте определяется моделью апстрима; TENSORAXIS только принимает и передаёт эти поля.
| Поле | Передаётся как | Тип | Диапазон / По умолчанию | Описание |
|---|---|---|---|---|
resolution | resolution | string | 480p / 720p / 1080p / 2k, по умолчанию 1080p | Выходное разрешение |
ratio | ratio | string | 16:9 / 9:16 / 4:3 / 3:4 / 21:9 / 1:1 / adaptive | Соотношение сторон |
duration | duration | integer | 4–15, по умолчанию 5 | Длительность в секундах; эквивалентно полю верхнего уровня seconds |
frames | frames | integer | Определяется моделью | Общее количество кадров (связано с fps/длительностью) |
seed | seed | integer | Случайное начальное значение | Фиксирует случайность для воспроизводимости результатов |
camera_fixed | camera_fixed | boolean | По умолчанию false | Фиксировать ли камеру |
watermark | watermark | boolean | По умолчанию false | Добавлять ли водяной знак |
generate_audio | generate_audio | boolean | По умолчанию false | Генерировать нативное аудио (Seedance 2.0) |
return_last_frame | return_last_frame | boolean | По умолчанию false | Возвращать изображение последнего кадра |
draft | draft | boolean | По умолчанию false | Режим черновика/предпросмотра |
service_tier | service_tier | string | Определяется моделью | Уровень обслуживания |
execution_expires_after | execution_expires_after | integer | Определяется моделью | Срок истечения задачи (секунды) |
callback_url | callback_url | string | — | URL обратного вызова по завершении задачи |
tools | tools | array | — | Конфигурация инструментов (например, веб-поиск) |
content | content | array | — | Расширенный массив содержимого, см. ниже |
Примечания:
metadata.modelудаляется и не может переопределить тарифицируемую модель.- Ключи
metadata, не сопоставленные с указанными выше полями, обычно не передаются апстриму. - Если отправлены и
seconds, иmetadata.duration, приоритет имеетmetadata.duration.
Структура metadata.content
metadata.content — это расширенный массив содержимого, используемый для первого/последнего кадра, видео-референса, аудио-референса и т. д. При указании он переопределяет список содержимого, сгенерированный из images (любой элемент type: text игнорируется; текст берётся из prompt).
| Тип элемента | Поля | Официальные ограничения (определяются апстримом) |
|---|---|---|
image_url | image_url.url, необязательный role | Изображение ≤30 МБ, ≤9 элементов; role используется для первого/последнего кадра |
video_url | video_url.url | Видео 2–15 с, ≤3 клипов |
audio_url | audio_url.url | Аудио ≤15 МБ, ≤3 клипов |
text | text | Игнорируется; текст берётся из prompt верхнего уровня |
Тарификация
SeeDance тарифицируется по токенам; разрешение уже учтено в количестве токенов, поэтому отдельный коэффициент за разрешение не применяется.
- Обычная генерация (текст/изображение-в-видео) использует тариф
generate. - Видео на входе (видео-референс/продолжение) определяется по реальному медиаконтенту и попадает в более дешёвый льготный тариф
video_input(более низкая цена за единицу, чем при обычной генерации).
Точные цены за единицу определяются настройкой «Video Pricing» в консоли и страницей тарифов; операторы могут переопределить значения по умолчанию последними официальными тарифами.
Опрос задачи
Общий процесс отправки/опроса, коды статусов и пути получения результата, совместимые с OpenAI/Sora, описаны в обзоре генерации видео.
Генерация видео
Отправляйте задачи генерации видео, отслеживайте статус задачи и передавайте расширенные параметры Seedance/Doubao через TENSORAXIS.
Генерация видео HappyHorse
Вызов моделей HappyHorse Alibaba Cloud Bailian (DashScope) через TENSORAXIS — текст-в-видео, изображение-в-видео, референс-в-видео и редактирование видео, а также параметры и тарификация.