Skip to main content

Краткий ответ

У Seedance 2.5 нет отдельного переключателя «референс-в-видео». Как только content содержит референсное видео, модель анализирует намерение вашего prompt, чтобы определить, является ли задача референс-в-видео, редактированием видео или расширением видео:
  • prompt изменяет исходное видео (добавляет, удаляет, изменяет, заменяет, сохраняет что-либо без изменений) → редактирование видео
  • prompt продолжает исходное видео вперёд или назад (расширяет, продолжает) → расширение видео
  • prompt только заимствует из материалов персонажа, движение или стиль для создания нового клипареференс-в-видео
Если задача классифицируется как редактирование, ratio должен быть adaptive, а duration должен быть -1. Передача конкретного соотношения сторон или длительности возвращает ошибку 400, обычно с упоминанием TaskTypeConstraint.
Эта страница относится только к Seedance 2.5 (doubao-seedance-2-5-260628). В семействе Seedance 2.0 нет задач редактирования видео или расширения видео, поэтому эта проблема там не возникает.

Ключевое различие: попадает ли ресурс в итоговый результат?

Быстрая проверка: видите ли вы само исходное видео в результате? Если да, это редактирование (или расширение). Если сохраняется только его «ощущение», это режим из референса в видео. Расширение видео похоже на редактирование: соотношение сторон зафиксировано в соответствии с исходным видео, но вы по-прежнему можете задать длительность.

Как модель принимает решение

Решение принимается в два шага: сначала анализируется ресурс role, затем prompt.
Список слов-триггеров не является исчерпывающим. Модель оценивает смысл, а не точные слова. Такие фразы, как «сохранить всё в видео без изменений», «увеличить видео 1 до HD» или «сохранить те же наряды», отсутствуют в списке, однако все они описывают обработку исходного видеоматериала, поэтому также могут быть классифицированы как редактирование видео.
Запрос с референсными изображениями, но без референсного видео, никогда не классифицируется как редактирование или расширение. На это нужно обращать внимание только при наличии reference_video.

Реальный случай

В этом запросе требовалось «увеличить разрешение видео», одновременно задав 4:3 и 15 секунд:
Он был немедленно отклонён с ошибкой 400:
«Увеличить разрешение» вместе с «оставить без изменений» означает работу с исходным видеоматериалом, поэтому модель классифицировала это как редактирование, а задачи редактирования не принимают пользовательское соотношение сторон или длительность. Поскольку этот запрос действительно является редактированием, правильное исправление:
После изменения результат соответствует соотношению сторон и длительности исходного видео.

Может ли параметр принудительно задать режим референс-в-видео?

Нет. В 2.5 omni_reference_task_type принимает только три значения: Значения «референс-в-видео» не существует. Кроме того, edit / extend лишь выполняют проверку раньше; они не принудительно задают тип задачи. Если объявленный тип отличается от типа, который модель определяет по prompt, задача всё равно завершится с ошибкой InvalidParameter.TaskTypeMismatch. Кратко: тип задачи определяет prompt. Параметры могут только соответствовать ему.

Три надёжных подхода

Универсальная настройка, рекомендуемая в документации провайдера. При наличии референсных материалов отправляйте следующее. Независимо от того, какую подзадачу выберет модель, запрос не завершится ошибкой из-за ограничений параметров.
Компромисс: если задача классифицируется как преобразование референса в видео, модель выбирает длительность (в наших тестах — 10 секунд или больше), и стоимость зависит от неё. Не рекомендуется для задач, чувствительных к стоимости.

Когда появляется ошибка

Для этих двух ошибок требуются разные исправления: для TaskTypeConstraint измените параметры; для TaskTypeMismatch измените prompt (или снова установите omni_reference_task_type в auto).

Примечания по стоимости

  • Результат редактирования видео имеет ту же длительность, что и исходное видео, а не ту, которую вы хотели. За исходное видео длительностью 25 секунд взимается плата примерно как за 25 секунд.
  • В задачах с референсным видео кадры входного видео также преобразуются в тарифицируемые tokens. Более длинные источники с более высоким разрешением стоят дороже.
  • При использовании duration: -1 в задаче преобразования референса в видео модель выбирает длительность, которая может оказаться больше ожидаемой.
Проверка длительности исходного видео перед отправкой позволяет избежать большинства неожиданностей. Чтобы проверить фактическую стоимость задачи, см. Как найти фактическую стоимость видео Seedance по task_id?.

Связанная документация

API генерации видео

Типы задач и ограничения параметров, полные параметры запроса

Обзор Seedance 2.0 / 2.5

Различия между 2.5 и 2.0, полное использование редактирования и расширения