Используйте API RunComfy для запуска kling/kling-video-o1/image-to-video/reference. Допустимые входы и выходы см. в схеме.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/kling/kling-video-o1/image-to-video/reference \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": "Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1",
"elements": [
{
"frontal_image_url": "https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-2.png",
"reference_image_urls": [
"https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-3.jpeg"
]
}
],
"image_urls": [
"https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-4.png"
]
}'Задайте для переменной окружения YOUR_API_TOKEN ваш API-ключ (управление в Профиль) и передавайте в каждом запросе Bearer-токен в заголовке Authorization : Authorization: Bearer $YOUR_API_TOKEN.
Отправьте асинхронную задачу генерации и сразу получите request_id и URL для статуса, результатов и отмены.
curl --request POST \
--url https://model-api.runcomfy.net/v1/models/kling/kling-video-o1/image-to-video/reference \
--header "Content-Type: application/json" \
--header "Authorization: Bearer <token>" \
--data '{
"prompt": "Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1",
"elements": [
{
"frontal_image_url": "https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-2.png",
"reference_image_urls": [
"https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-3.jpeg"
]
}
],
"image_urls": [
"https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-4.png"
]
}'Текущее состояние по request_id: «in_queue», «in_progress», «completed» или «cancelled».
curl --request GET \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/status \
--header "Authorization: Bearer <token>"Финальные выходные данные и метаданные для request_id; если задача не завершена, в ответе — текущее состояние для дальнейшего опроса.
curl --request GET \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/result \
--header "Authorization: Bearer <token>"Отмена задачи в очереди по request_id; выполняющиеся задачи отменить нельзя.
curl --request POST \
--url https://model-api.runcomfy.net/v1/requests/{request_id}/cancel \
--header "Authorization: Bearer <token>"Укажите публично доступный HTTPS URL. Хост должен разрешать серверные запросы (без входа и cookie), без жёсткого лимита и блокировки ботов. Рекомендуется: изображения ≤ 50 МБ (~4K), видео ≤ 100 МБ (~2–5 мин при 720p). Для приватных ресурсов — стабильные или подписанные URL.
{
"type": "object",
"title": "Схема входа",
"required": [
"prompt",
"elements",
"image_urls"
],
"properties": {
"prompt": {
"title": "Промпт",
"description": "Необходимая инструкция. Обращайтесь к изображениям как `@Image1`, `@Image2`, а к элементам как `@Element1`, `@Element2` в порядке массива и точно записывайте каждый токен.",
"type": "string",
"default": "Replace the character in the video with @Element1, maintaining the same movements and camera angles. Transform the landscape into @Image1"
},
"image_urls": {
"title": "Референсные изображения",
"description": "Обязательный массив дополнительных URL-адресов эталонных изображений. Массив может быть пустым и принимает не более 7 элементов.",
"type": "array",
"items": {
"type": "string",
"format": "image_uri"
},
"default": [
"https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-4.png"
],
"maxItems": 7,
"minItems": 0
},
"elements": {
"title": "Элементы",
"description": "Обязательный массив определений символов или объектов. Массив может быть пустым и принимает не более 7 элементов.",
"type": "array",
"default": [
{
"frontal_image_url": "https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-2.png",
"reference_image_urls": [
"https://playgrounds-storage-public.runcomfy.net/tools/7244/media-files/input-1-3.jpeg"
]
}
],
"items": {
"frontal_image_url": {
"title": "URL-адрес фронтального изображения",
"description": "Фронтальное изображение элемента (основной вид).Максимальный размер файла: 10,0 МБ, минимальная ширина: 300 пикселей, минимальная высота: 300 пикселей, минимальное соотношение сторон: 0,40, максимальное соотношение сторон: 2,50, время ожидания: 20,0 с.",
"type": "string",
"format": "image_uri",
"default": ""
},
"reference_image_urls": {
"title": "URL-адреса эталонных изображений",
"description": "Дополнительные эталонные изображения с разных ракурсов. Поддерживаются 1-4 изображения. Требуется хотя бы одно изображение.",
"type": "array",
"format": "image_uris",
"items": {
"type": "string",
"format": "image_uri"
},
"default": [],
"maxItems": 4,
"minItems": 1
}
},
"maxItems": 7,
"minItems": 0
},
"duration": {
"title": "Длительность (секунды)",
"description": "Продолжительность видео в секундах. Точные строковые значения: `5` и `10`.",
"type": "String",
"enum": [
"5",
"10"
],
"default": "5"
},
"aspect_ratio": {
"title": "Соотношение сторон (Ш:В)",
"description": "Соотношение сторон видео. Точные значения: `16:9`, `9:16` и `1:1`.",
"type": "string",
"enum": [
"16:9",
"9:16",
"1:1"
],
"default": "16:9"
}
}
}{
"output": {
"type": "object",
"properties": {
"image": {
"type": "string",
"format": "uri",
"description": "URL одного изображения"
},
"video": {
"type": "string",
"format": "uri",
"description": "URL одного видео"
},
"images": {
"type": "array",
"description": "несколько URL изображений",
"items": {
"type": "string",
"format": "uri"
}
},
"videos": {
"type": "array",
"description": "несколько URL видео",
"items": {
"type": "string",
"format": "uri"
}
}
}
}
}RunComfy - ведущая ComfyUI платформа, предлагающая ComfyUI онлайн среду и услуги, а также рабочие процессы ComfyUI с потрясающей визуализацией. RunComfy также предоставляет AI Models, позволяя художникам использовать новейшие инструменты AI для создания невероятного искусства.