Запрос и использование
Чтобы использовать Luma Videos Generation API, сначала перейдите в консоль Ace Data Cloud и получите ваш API Token для резервного копирования.
Если вы еще не вошли в систему или не зарегистрированы, вас автоматически перенаправят на страницу входа, чтобы пригласить вас зарегистрироваться и войти. После завершения вы автоматически вернетесь на текущую страницу.
Один API Token позволяет вызывать все услуги платформы, не нужно запрашивать отдельно для каждой услуги. При первом запросе предоставляется бесплатный лимит для тестирования; при недостатке лимита можно пополнить общий баланс в консоли.
📘 Полная документация: Luma Videos Generation API →
Основное использование
Чтобы сгенерировать видео, вы можете ввести любой текст, например, если я хочу создать видео о том, как астронавты перемещаются между космосом и вулканом, я могу ввестиAstronauts shuttle from space to volcano, как показано на изображении:


prompt: подсказка для генерации видео.aspect_ratio: соотношение сторон видео, по умолчанию 16:9.end_image_url: необязательный, указывает конечный кадр.enhancement: необязательный, переключатель улучшения четкости.loop: нужно ли генерировать циклическое видео, по умолчанию false.timeout: необязательный, количество секунд до таймаута.callback_url: адрес асинхронного обратного вызова.async: необязательный, если установлен вtrue, интерфейс сразу возвращаетtask_id, не нужно предоставлятьcallback_url, затем через соответствующий интерфейс запроса задач можно опрашивать для получения результата.
- success: успешность генерации, если успешно, то
true, иначеfalse - task_id: уникальный ID задачи генерации видео
- video_id: уникальный ID видео, созданного в результате задачи генерации
- prompt: ключевые слова задачи генерации видео
- video_url: ссылка на результат видео задачи генерации
- video_height: высота изображения обложки сгенерированного видео
- video_width: ширина изображения обложки сгенерированного видео
- state: статус задачи генерации видео, если задача завершена, то
completed. - thumbnail_url: ссылка на изображение обложки сгенерированного видео
- thumbnail_width: ширина изображения обложки сгенерированного видео
- thumbnail_height: высота изображения обложки сгенерированного видео
Генерация пользовательских начальных и конечных кадров
Если вы хотите создать видео с помощью пользовательских начальных и конечных кадров, вы можете ввести ссылки на изображения начальных и конечных кадров: В этом случае полеstart_image_url может принимать следующее изображение в качестве начального кадра видео:
Далее мы должны настроить генерацию видео на основе начального и конечного кадров, указав следующие параметры:
- action: действие задачи генерации видео, обычно это обычная генерация
generateи расширенная генерацияextend, по умолчаниюgenerate. - start_image_url: указывает начальный кадр для генерации видео.
- end_image_url: указывает конечный кадр для генерации видео.
- prompt: ключевые слова для генерации видео.


Пример заполнения:

Функция расширения видео
Если вы хотите продолжить генерацию сгенерированного видео, вы можете установить параметрaction в значение extend и ввести ID видео или ссылку на видео, которые можно получить на основе базового использования, как показано на следующем изображении:

Обратите внимание, что здесьЧтобы продолжить генерацию видео, необходимо загрузить ссылку на видео или ID видео. Ниже показано, как использовать ID видео для расширения, затем мы должны заполнить ключевые слова для настройки генерации видео, чтобы указать следующее содержимое:video_idиvideo_urlявляются ID и ссылкой на сгенерированное видео. Если вы не знаете, как сгенерировать видео, вы можете обратиться к базовому использованию, описанному выше.
- action: в это время действие расширения видео, здесь должно быть
extend. - prompt: ключевые слова для расширения видео.
- video_url: ссылка на видео, которое нужно расширить.
- video_id: уникальный ID видео, которое нужно расширить.
- end_image_url: ссылка на изображение для указания последнего кадра видео, необязательный параметр.



Теперь на основе вышеуказанного добавим информацию о последнем кадре, конкретно это выглядит следующим образом:

Асинхронный обратный вызов
Поскольку время генерации видео Luma относительно долгое, примерно 1-2 минуты, если API долго не отвечает, HTTP-запрос будет поддерживать соединение, что приведет к дополнительному потреблению системных ресурсов, поэтому этот API также предоставляет поддержку асинхронного обратного вызова. 整体流程是:客户端发起请求的时候,额外指定一个callback_url 字段,客户端发起 API 请求之后,API 会立马返回一个结果,包含一个 task_id 的字段信息,代表当前的任务 ID。当任务完成之后,生成音乐的结果会通过 POST JSON 的形式发送到客户端指定的 callback_url,其中也包括了 task_id 字段,这样任务结果就可以通过 ID 关联起来了。
下面我们通过示例来了解下具体怎样操作。
首先,Webhook 回调是一个可以接收 HTTP 请求的服务,开发者应该替换为自己搭建的 HTTP 服务器的 URL。此处为了方便演示,使用一个公开的 Webhook 样例网站 https://webhook.site/,打开该网站即可得到一个 Webhook URL,如图所示:

callback_url 为上述 Webhook URL,同时填入 prompt,如图所示:

内容如下:
task_id 字段,其他的字段都和上文类似,通过该字段即可实现任务的关联。
