API преобразования видео в видео RunwayML превращает существующий клип в заново сгенерированное видео. Если вы хотите создать подобный рабочий процесс с помощью OdiRouter, проверьте актуальный каталог моделей, прежде чем отправлять запрос. На официальных страницах OdiRouter, сохранённых для этого руководства, не была указана модель под брендом Runway. По этой причине в этой статье не утверждается, что runwayml-video-to-video работает через OdiRouter.
Эту деталь легко упустить. Маркетинговый ярлык, название модели у провайдера и конечная точка шлюза могут выглядеть связанными, но при этом относиться к разным системам. Сначала подтвердите идентификатор модели, формат запроса, единицу тарификации и жизненный цикл задачи. Это значительно дешевле, чем обнаружить несоответствие после того, как вы уже построили вокруг него воркер.
Доступность меняется. Используйте текущий каталог OdiRouter и документацию по выбранной модели в качестве источников истины.
Что в настоящее время документирует Runway
В официальном справочнике API Runway для запуска задачи преобразования видео из видео используется POST /v1/video_to_video. В его текущем примере SDK используются aleph2, исходное видео, текстовый промпт и необязательные ключевые кадры. Runway также поддерживает отдельное руководство по моделям, доступным через его API.
Поэтому считайте runwayml-video-to-video поисковой или каталожной меткой, если только вызываемый вами API не возвращает его как допустимый идентификатор. Идентификатор, скопированный у одного провайдера, может не иметь смысла для другого.
Поля запроса также зависят от провайдера. Runway документирует собственные поля URI видео и промпта. OdiRouter использует конечную точку очереди для поддерживаемых мультимодальных моделей, а тело запроса берётся из документации для выбранной модели OdiRouter. Схожий результат не делает эти схемы взаимозаменяемыми.
Проверьте маршрут в OdiRouter
Начните с OdiRouter model catalog. Найдите видеомодель, которая принимает видео на вход и создаёт видео на выходе. Общедоступная страница помогает в поиске. Для интеграционных работ более надежной проверкой будет каталог, доступный по вашему API-ключу.
Документ OdiRouter содержит запрос в каталог для получения списка моделей, доступных для текущего ключа:
GET https://api.odirouter.ai/v1/models/catalogВы можете фильтровать каталог по категории, поставщику, способу ввода и способу вывода. Скопируйте возвращённый id в точности, а не формируйте его на основе отображаемого имени.
Затем вызовите GET https://api.odirouter.ai/v1/models/catalog/{model_id}/pricing. Он возвращает позиции тарификации модели, единицу измерения, валюту и цену. За видеомаршрут может взиматься плата за запрос, секунду или другую единицу, зависящую от модели. Цена из другого шлюза не является надёжной основой для вашего бюджета.
Выполните короткую предварительную проверку:
Убедитесь, что модель доступна для вашего API-ключа OdiRouter.
Проверьте, что среди её входных и выходных модальностей есть видео.
Ознакомьтесь с её текущей схемой запроса и ограничениями.
Проверьте конечную точку ценообразования и единицу тарификации.
Запустите небольшой тест с медиаданными, которые вам разрешено обрабатывать.
Корректно обрабатывайте асинхронную задачу
OdiRouter использует асинхронные задачи для поддерживаемых моделей изображений, аудио, видео и 3D. Обычный процесс состоит в отправке задания, опросе его статуса и получении результата.
Отправьте тело запроса, специфичное для модели, на:
POST https://api.odirouter.ai/model/v1/queue/{endpoint}Сохраните возвращённые request_id, status_url и response_url. Сегмент конечной точки должен быть точной конечной точкой модели OdiRouter, которую вы уже проверили. Команда оболочки имеет следующую общую форму:
curl -X POST "https://api.odirouter.ai/model/v1/queue/${MODEL_ENDPOINT}" \
-H "Authorization: Bearer ${ODIROUTER_API_KEY}" \
-H "Content-Type: application/json" \
--data @request.jsonСодержимое request.json зависит от модели. Следуйте документации OdiRouter для этой модели, а не используйте тело запроса, скопированное из Runway или другого шлюза.
Опрашивайте URL статуса с разумным интервалом. OdiRouter документирует IN_QUEUE, IN_PROGRESS и COMPLETED. Последнее значение означает лишь то, что задача достигла конечного состояния. Проверьте error и error_type, прежде чем считать это успехом.
Для успешно выполненной задачи запросите URL ответа и проверьте output[].content. Результат в виде видео обычно содержит элемент контента, тип которого — video, а его URL указывает на результат. Если вам нужно более длительное хранение, переместите файл в контролируемое вами хранилище, а не предполагайте, что возвращённый URL останется доступным.
Протестируйте детали, влияющие на эксплуатацию в production
В текущей документации модели должны быть определены допустимые форматы мультимедиа, размер входных данных, продолжительность, соотношение сторон, разрешение выходных данных и ограничения политики. Запишите эти значения вместе с идентификатором модели, поскольку они могут различаться в зависимости от маршрута видео и могут изменяться.
Установите для своего работника тайм-аут и замкнутый цикл опроса. Обрабатывайте REQUEST_INVALID, INFERENCE_FAILURE, INFERENCE_TIMEOUT, CONTENT_BLOCKED и отмену отдельно. Сохраните номер request_id в журналах операций, но не указывайте в них ключи API и закрытые URL-адреса медиафайлов.
Основывайте контроль затрат на фактической единице тарификации. Для маршрута с тарификацией по секундам необходимы ограничения длительности. Для маршрута с тарификацией за запрос необходимы меры контроля повторных попыток и дублирующих отправок. В вашем приложении также должна быть стратегия идемпотентности для сложного случая, когда сеть отказывает после отправки, но до получения ответа.
Используйте небольшой набор для оценки, который вам разрешено обрабатывать. Оцените сохранение движения, соответствие промпту, временную согласованность, неожиданные изменения сцены и пригодность результата для продукта. Название модели не может ответить на эти вопросы за вас.
Выберите интеграцию, соответствующую требованиям
OdiRouter подходит, если его текущий каталог содержит маршрут для видео с входными данными, результатом, качеством, задержкой, политикой и ценой, необходимыми вашему продукту. Для поддерживаемых маршрутов OdiRouter предоставляет поиск моделей, просмотр цен, управление API-ключами и общий асинхронный шаблон задач.
Если требуется конкретная модель Runway, а OdiRouter её не содержит, воспользуйтесь актуальной документацией провайдера Runway или пересмотрите требование. Другую видеомодель, возможно, стоит протестировать, но без подтверждающих данных её не следует описывать как полноценную замену.
Откройте OdiRouter model catalog, выберите проверенный маршрут с видео на входе и ознакомьтесь с Model API overview вместе с pricing reference. После подтверждения идентификатора и единицы тарификации создайте аккаунт OdiRouter и выполните небольшой интеграционный тест.