Процесс подачи заявки
Чтобы использовать API генерации видео Kling, сначала перейдите в консоль Ace Data Cloud, чтобы получить ваш API Token и сохранить его для дальнейшего использования.
Если вы еще не вошли в систему или не зарегистрированы, вы будете автоматически перенаправлены на страницу входа, где вас пригласят зарегистрироваться и войти. После завершения вы будете автоматически возвращены на текущую страницу.
Один API Token позволяет вызывать все сервисы платформы, не нужно отдельно запрашивать для каждого сервиса. При первой подаче заявки предоставляется бесплатный лимит, чтобы вы могли попробовать; если лимит исчерпан, вы можете пополнить общий баланс в консоли.
📘 Полная документация: Kling Videos Generation API →
Основное использование
Сначала ознакомьтесь с основным способом использования, который включает ввод подсказкиprompt, действия action, URL-адреса начального изображения start_image_url и модели model, чтобы получить обработанный результат. Сначала необходимо просто передать поле action, значение которого равно text2video, которое включает три основных действия: создание видео из текста (text2video), создание видео из изображения (image2video), расширение видео (extend). Затем нам также нужно ввести модель model, в настоящее время доступны следующие модели: kling-v1, kling-v1-6, kling-v2-master, kling-v2-1-master, kling-v2-5-turbo, kling-v2-6, kling-v3, kling-v3-omni, kling-o1, подробности приведены ниже:

accept: формат ответа, который вы хотите получить, здесь указаноapplication/json, то есть формат JSON.authorization: ключ для вызова API, который можно выбрать из выпадающего списка после запроса.
model: модель для генерации видео, в основномkling-v1,kling-v1-6,kling-v2-master,kling-v2-1-master,kling-v2-5-turbo,kling-v2-6,kling-v3,kling-v3-omni,kling-o1.mode: режим генерации видео, возможные значения: стандартный режимstd, режим высокой скоростиproи родной 4K режим4k. Режим4kподдерживается толькоkling-v3иkling-v3-omni, и несовместим сcamera_control(управление камерой).action: действие для этой задачи генерации видео, в основном включает три действия: создание видео из текста (text2video), создание видео из изображения (image2video), расширение видео (extend).start_image_url: при выборе действия создания видео из изображенияimage2videoнеобходимо загрузить ссылку на начальное изображение.end_image_url: опционально при создании видео из изображения, указывает конечный кадр.duration: продолжительность видео в секундах.kling-v3иkling-v3-omniподдерживают целую продолжительность от 3 до 15 секунд;kling-o1поддерживает только 5 секунд; другие модели поддерживают 5 или 10 секунд.generate_audio: нужно ли синхронно генерировать аудио, опционально, булевое значение. Поддерживаетсяkling-v3,kling-v3-omniиkling-v2-6(только в режиме pro). По умолчаниюfalse.aspect_ratio: соотношение сторон видео, опционально, поддерживает16:9,9:16,1:1, по умолчанию16:9.cfg_scale: сила корреляции, диапазон [0,1], чем больше, тем ближе к подсказке.camera_control: опционально, параметры для управления движением камеры, поддерживает предустановки type/simple и конфигурации horizontal, vertical, pan, tilt, roll, zoom и т.д.negative_prompt: опционально, обратные подсказки, которые не должны появляться, максимум 200 символов.image_list: список ссылок на изображения Omni, применимо к моделямkling-o1иkling-v3-omni, использование см. ниже в разделе «Omni универсальные ссылки».video_list: список ссылок на видео Omni (поддерживает редактирование видео), применимо к моделямkling-o1иkling-v3-omni, использование см. ниже в разделе «Omni универсальные ссылки».prompt: подсказка.callback_url: URL для обратного вызова результата.async: опционально, если установить вtrue, интерфейс немедленно вернетtask_id, не нужно предоставлятьcallback_url, затем через соответствующий интерфейс запроса задач можно опрашивать для получения результата.

success: статус задачи генерации видео.task_id: ID задачи генерации видео.video_id: ID видео для задачи генерации видео.video_url: ссылка на видео для задачи генерации видео.duration: продолжительность видео для задачи генерации видео.state: статус задачи генерации видео.
data.
Кроме того, если вы хотите сгенерировать соответствующий код интеграции, вы можете просто скопировать его, например, код CURL будет следующим:
Матрица возможностей моделей
Разные модели имеют значительные различия в поддержке параметров. Следующая матрица составлена на основе документации моделей видео Kling, перед вызовом проверьте, поддерживает ли текущая комбинацияmodel / mode / duration необходимые вам функции, иначе может возникнуть ошибка, например, model/mode/duration(...) is not supported with image_tail.
Примечания:
mode=4kподдерживается толькоkling-v3иkling-v3-omni; и несовместим сcamera_control(управление камерой).end_image_urlможет использоваться только сaction=image2videoв сочетании сstart_image_url. Передача толькоend_image_url(безstart_image_url) будет отклонена.kling-v3/kling-v3-omniпринимают любое целое значениеdurationот 3 до 15 секунд;kling-o1принимает только 5; остальные модели принимают только 5 или 10.generate_audioпо умолчаниюfalse. Толькоkling-v3,kling-v3-omniиkling-v2-6(pro режим) поддерживают.
Расширенные функции видео
Если вы хотите продолжить генерацию уже созданного видео Kling, вы можете установить параметрaction в extend и ввести ID видео, для продолжения генерации. ID видео можно получить на основе базового использования, как показано на рисунке ниже:

Обратите внимание, что здесь video_id видео — это ID сгенерированного видео. Если вы не знаете, как сгенерировать видео, вы можете обратиться к основному использованию, описанному выше.
Далее необходимо заполнить следующие шаги с подсказками для настройки генерации видео, указав следующие параметры:
model: модель для генерации видео, в основномkling-v1,kling-v1-5иkling-v1-6.mode: режим генерации видео, возможные значения: стандартный режимstd, режим высокой скоростиproи родной 4K режим4k(поддерживается толькоkling-v3иkling-v3-omni, несовместим с управлением камерой).duration: длительность видео для этой задачи генерации, в основном 5s и 10s.start_image_url: при выборе действия по созданию видеоimage2videoнеобходимо загрузить ссылку на изображение первого кадра.prompt: подсказка.


Omni универсальная ссылка (видеомонтаж / видео-ссылка / многоизображен. ссылка)
kling-o1 и kling-v3-omni — это две независимые модели, обе поддерживают возможность «универсальной ссылки». На основе текстового видео (action=text2video) можно дополнительно передать ссылки на изображения или видео для реализации многоизображен. ссылки, видео-ссылки и прямого редактирования существующего видео.
Основное соглашение: Ссылки на материалы должны быть указаны в prompt в формате <<<image_1>>>, <<<video_1>>> (нумерация начинается с 1), чтобы модель могла применить эти ссылки. Если передать только материалы, не указав их в подсказке, они будут проигнорированы.
Примечание по безопасности: текущий API не открываетЗапрос Omni не поддерживаетelement_list. ID библиотеки элементов Kling принадлежат пространству имен учетной записи поставщика, до предоставления API управления элементами с изоляцией арендаторов, клиентам следует использоватьimage_listдля передачи основных ссылок на изображения.
negative_prompt, cfg_scale или camera_control, и не может использовать mode=4k. Если включено видео-ссылка, generate_audio должно быть false.
Список видео и видеомонтаж (video_list)
video_list используется для передачи ссылок на参考视频, это наиболее распространенный сценарий использования данной функции, поля элементов массива следующие:
video_url:Ссылка на参考视频, не может быть пустой. Требования: формат MP4/MOV; разрешение 720px–2160px; длительность 3–10 секунд; частота кадров 24–60fps; размер файла ≤200MB; максимум 1 видео.refer_type:Тип参考, может бытьbase(по умолчанию, базовое видео для редактирования, то есть “прямое редактирование видео”, можно добавлять/удалять/изменять элементы, изменять композицию, стиль, цвет, погоду и т.д.) илиfeature(референс по характеристикам, ссылка на его стиль / операторскую работу / продолжение следующего кадра).keep_original_sound:Сохранять ли оригинальный звук видео, может бытьyes(сохранить) илиno(удалить).
Внимание: если есть参考视频,Пример CURL для редактирования существующего видео (изменение видео на аниме стиль) приведен ниже:generate_audioдолжно бытьfalse. Видео сrefer_type=baseне может иметь указанные начальный/конечный кадры.
Множественные изображения参考 (image_list)
image_list используется для передачи参考изображений (элементы / сцены / стили и т.д.), поля элементов массива следующие:
image_url:Ссылка на参考изображение, не может быть пустой. Требования: формат .jpg/.jpeg/.png; размер файла ≤10MB; минимальная сторона ≥300px; соотношение сторон 1:2.5 ~ 2.5:1.type:Необязательный. Если не передан, используется как чисто参考изображение; передачаfirst_frame/end_frameиспользуется соответственно как начальный / конечный кадр (эквивалентноstart_image_url/end_image_url).
<<<image_1>>>, <<<image_2>>> в prompt. Ограничение по количеству: если нет参考视频, количество参考изображений ≤ 7; если есть参考视频, количество参考изображений ≤ 4. При передаче только начального / конечного кадра также можно использовать start_image_url / end_image_url, но конечный кадр должен использоваться вместе с начальным.
Внимание: если одновременно передаютсяПример CURL для генерации видео с множественными изображениями参考:start_image_url/end_image_urlиimage_list, начальный / конечный кадр будет располагаться передimage_list, что может повлиять на соответствие индексов<<<image_N>>>. Рекомендуется выбрать один из вариантов: если нужны начальный / конечный кадры, указывать их непосредственно вimage_listс помощьюtype, не смешивая сstart_image_url/end_image_url.
Асинхронный обратный вызов
Поскольку время генерации видео с помощью API Kling Videos Generation относительно долгое, примерно 1-2 минуты, если API долго не отвечает, HTTP-запрос будет поддерживать соединение, что приведет к дополнительным затратам системных ресурсов, поэтому этот API также поддерживает асинхронные обратные вызовы. Общий процесс: когда клиент инициирует запрос, дополнительно указывается полеcallback_url, после того как клиент инициирует API-запрос, API немедленно возвращает результат, содержащий информацию о поле task_id, представляющем текущий идентификатор задачи. Когда задача завершена, результат сгенерированного видео будет отправлен на указанный клиентом callback_url в формате POST JSON, который также включает поле task_id, так что результат задачи можно связать по ID.
Давайте рассмотрим, как это работает на примере.
Во-первых, Webhook обратный вызов — это служба, которая может принимать HTTP-запросы, разработчики должны заменить его на URL своего HTTP-сервера. Для удобства демонстрации используется публичный сайт примера Webhook https://webhook.site/, открыв этот сайт, вы получите URL Webhook, как показано на изображении:
Скопируйте этот URL, и вы сможете использовать его в качестве Webhook, пример здесь: https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3.
Далее мы можем установить поле callback_url на указанный выше URL Webhook, одновременно заполнив соответствующие параметры, конкретное содержание показано на изображении:

https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3, как показано на изображении:
Содержимое следующее:
task_id, остальные поля аналогичны вышеупомянутым, с помощью этого поля можно связать задачи.
Обработка ошибок
При вызове API, если возникает ошибка, API вернет соответствующий код ошибки и информацию. Например:400 token_mismatched:Неверный запрос, возможно, из-за отсутствия или недопустимых параметров.400 api_not_implemented:Неверный запрос, возможно, из-за отсутствия или недопустимых параметров.401 invalid_token:Неавторизован, недопустимый или отсутствующий токен авторизации.429 too_many_requests:Слишком много запросов, вы превысили лимит частоты.500 api_error:Внутренняя ошибка сервера, что-то пошло не так на сервере.

