Максим
Туториалы

ЧАТ-БОТ ДЛЯ ГЕНЕРАЦИИ ВИДЕО С НЕЙРОСЕТЬЮ KLING: ИНСТРУКЦИЯ

Генерация изображений в чатботах уже никого не удивляет. Но что если ваш бот умеет создавать видео прямо по текстовому запросу пользователя — и отправлять готовый ролик прямо в чат? Именно такой чатбот мы сегодня соберём на платформе watbot.ru с интеграцией нейросети Kling 2.1 — одной из самых популярных моделей для генерации видео высокого качества.
Нейросеть умеет работать в двух режимах: text-to-video (генерация по текстовому промту) и image-to-video (генерация на основе фотографии). В этой статье разберём первый вариант — от знакомства с документацией до финального теста в Telegram.

Знакомство с API: что важно знать до начала сборки

Перед тем как переходить в конструктор, стоит заглянуть в документацию нейросети. Удобство в том, что один API-ключ даёт доступ сразу к нескольким нейросетям, в том числе к Kling.
Kling V2.1 Master Text to Video - docs.kie.ai Kling V2.1 Master Text to Video - docs.kie.ai docs.kie.ai
В разделе Video API доступны разные модели. Мы используем Kling 2.1 в режиме text-to-video. По документации нейросеть принимает следующие параметры: промт, негативный промт, продолжительность видео (5 или 10 секунд) и формат.
Ключевой момент: нейросеть не возвращает видео мгновенно. В ответ на запрос приходит task_id и record_id. Чтобы забрать готовое видео и вывести его в чат, потребуется блок «Входящий Webhook» — он и будет принимать результат генерации.

Структура сценария

Прежде чем заполнять блоки, соберём весь каркас чатбота. В сценарии понадобятся:
  • три блока цепочка сообщений — приветствие с промтом, негативный промт, выбор длительности;
  • HTTP-запрос №1 — отправка запроса в нейросеть;
  • блок цепочка сообщений — сообщение об ожидании;
  • блок задержки;
  • входящий Webhook — получение ссылки на видео;
  • HTTP-запрос №2 — отправка видео в Telegram через Bot API.

Пошаговая инструкция

Шаг 1. Создание чатбота и подключение Telegram

На платформе watbot.ru нажмите «Создать», дайте боту название и подтвердите создание. В открывшемся сценарии подключите мессенджер Telegram: вставьте токен, полученный в BotFather, и сохраните настройки.
В новом сценарии вас встретят три стандартных блока. Лишние связи и блоки можно удалить: наведите курсор на синюю стрелку — она станет красной — и нажмите на крестик. Блок удаляется через меню с тремя точками или через галочку слева с кнопкой «Удалить» в верхнем меню.
Новые блоки добавляются двумя способами: через кнопку «Добавить блок» в правом верхнем углу или напрямую из сетки — зажмите курсор на чёрной точке блока, протяните в пустое место и выберите нужный блок из появившегося меню.

Шаг 2. Блок 1 — Приветствие и сбор промта

В первой цепочке сообщений добавьте текст:
Привет! Я умею генерировать видео. Просто напиши в ответном сообщении промт — и генерация начнётся.
Ответ пользователя сохраните в пользовательскую переменную с именем промт. Кнопки в этом блоке не нужны — пользователь пишет запрос в свободной форме.

Шаг 3. Блок 2 — Негативный промт

От блока «Любая другая фраза» проведите связь к следующей цепочке сообщений с текстом:
Пожалуйста, укажи негативный промт. Если негативный промт не нужен, просто поставь минус.
Ответ сохраните в переменную непромт.
Негативный промт — это указание того, чего не должно быть в видео: размытие, лишние люди, блюр и т.д. Если пользователю это не нужно, достаточно поставить прочерк.

Шаг 4. Блок 3 — Выбор длительности

В третьей цепочке сообщений спросите пользователя, сколько секунд должно длиться видео. Добавьте две кнопки: 5 и 10. Ответ запишите в переменную длительность.
От обеих кнопок — и от «5», и от «10» — проведите связи к одному блоку HTTP-запроса. Таким образом, независимо от выбора пользователя, бот пойдёт дальше по одному и тому же пути.

Шаг 5. HTTP-запрос №1 — Отправка запроса в нейросеть

Это главный блок сценария. Заполняйте его строго по документации.
Метод: POST
URL: скопируйте из документации без кавычек.
Заголовки (два обязательных):
  1. AuthorizationBearer [ваш API-ключ]
  2. Content-Typeapplication/json
Body: переключите на JSON и вставьте массив из документации. Затем подставьте свои значения:
  • model — не меняем, используем Kling 2.1;
  • prompt → {{$промт}} — пользовательская переменная в двойных фигурных скобках со знаком доллара;
  • negative_prompt → {{$непромт}};
  • duration → {{$длительность}};
  • aspect_ratio → 9:16 (вертикальный формат по умолчанию; другие форматы можно изучить в документации);
  • callback_url → ссылка из блока «Входящий Webhook» (см. ниже).
Как получить callback URL: добавьте в сценарий блок «Входящий Webhook» через раздел «Специальные блоки». В нём автоматически появится URL — скопируйте его и вставьте в поле callback_url в HTTP-запросе.
После ссылки добавьте:
?contact_id={{id}}
Тайм-аут: 60 секунд — максимум, нейросети нужно время на обработку.
Сервер запроса: обязательно выберите Европа.
Галочки «Выводить тело ответа в чат» и «Записать код ответа в переменную» — снимите.

Шаг 6. Сообщение об ожидании

От кнопки «Продолжить» первого HTTP-запроса добавьте цепочку сообщений с текстом:
Генерирую, пожалуйста, подождите.
Без этого сообщения пользователь выбирает длительность — и дальше просто тишина. Непонятно, работает бот или завис. Небольшое уведомление снимает этот вопрос.

Шаг 7. Блок задержки

От кнопки «Продолжить» добавьте блок задержки и установите его на 4 минуты.
Задержка здесь критически важна. Пока первый HTTP-запрос уходит в нейросеть, пока Webhook принимает ответ, пока видео генерируется — проходит несколько минут. Если сразу поставить блок вывода видео без задержки, ссылки на него просто ещё не будет, и бот выведет пустой ответ.

Шаг 8. Входящий Webhook — получение ссылки на видео

В блоке «Входящий Webhook» URL уже заполнен автоматически — именно его вы скопировали для callback_url на шаге 5.
В поле JavaScript-кода вставьте обработчик ответа. Логика следующая: нейросеть возвращает ссылку на готовое видео внутри поля result_json. Код извлекает эту ссылку и записывает её в переменную видео.
Именно эта переменная позволит вывести в чат не просто ссылку, по которой нужно переходить, а само видео прямо в мессенджере.
Проверить, что Webhook работает корректно, можно через «Лог выполнения»: там должны отображаться contact_id и строка с result_json, внутри которой видна ссылка на файл.

Шаг 9. HTTP-запрос №2 — Отправка видео в Telegram

Второй HTTP-запрос проще первого. Он берёт ссылку из переменной видео и отправляет готовый ролик пользователю через Telegram Bot API.
Метод: POST
URL формируется по шаблону:
https://api.telegram.org/bot[ВАШ_ТОКЕН]/sendVideo?chat_id={{telegram_id}}&video={{$видео}}
Здесь:
  • [ВАШ_ТОКЕН] — токен из BotFather, тот же, что вы использовали при подключении бота к платформе;
  • {{$видео}} — переменная, в которую Webhook записал ссылку на видео.
Если в блоке Webhook вы назвали переменную иначе — подставьте своё название.
Тайм-аут: 60 секунд.
Сервер запроса: Европа.
Галочки «Выводить тело ответа в чат» и «Записать код ответа в переменную» — снимите.

Тестирование

Перезапустите бота командой /start в Telegram и пройдите весь сценарий:
  1. Введите промт — например: «Девушка с рыжими волосами 25 лет сидит в кафе и пьёт кофе. Она радуется».
  2. Укажите негативный промт — что не должно попасть в кадр: «размытие, много людей, блюр».
  3. Выберите длительность — 5 или 10 секунд.
  4. Дождитесь сообщения об ожидании и самого видео — генерация занимает около 3–4 минут.
Убедиться в корректной отправке запроса можно через «Лог выполнения» в блоке HTTP-запроса №1: статус 200 и наличие task_id означают, что запрос ушёл успешно.
Kling 2.1 хорошо справляется с детальными промтами: движения получаются плавными и естественными, качество видео — высоким. Чем точнее промт, тем точнее результат: внешность персонажа, одежда, окружение — всё это можно и нужно описывать подробно.

Дополнительно: запуск в мессенджере Мax

Тот же чатбот можно запустить не только в Telegram, но и в мессенджере Маx. Принцип аналогичный: вставляете токен Маx-бота, а для отправки видео в чат используете метод из документации для разработчиков Маx — там всё подробно расписано с примерами запросов.

Итог

Чатбот с генерацией видео на Watbot строится из девяти последовательных элементов: три блока сбора данных от пользователя, первый HTTP-запрос с callback URL, сообщение об ожидании, задержка, Webhook для получения ссылки и второй HTTP-запрос для отправки готового видео. Результат — бот, который принимает текстовый запрос и через несколько минут возвращает пользователю полноценное видео прямо в мессенджер.

Полезные ссылки:

Видео инструкция для создания чат-бота и получения API токена:
Чат-бот за 10 минут: лёгкая настройка с BotFather 🔥 Подробная инструкция как с помощью бота в Telegram создать своего собственного чат-бота, получить API токен и оформить его, а именно изменить имя бота, его о... www.youtube.com
Документация Kling AI:
Kling V2.1 Master Text to Video - docs.kie.ai Kling V2.1 Master Text to Video - docs.kie.ai docs.kie.ai
Telegram API:
Telegram Bot API The Bot API is an HTTP-based interface created for developers keen on building bots for Telegram. To learn how to create… core.telegram.org
Документация MAX:
MAX для разработчиков dev.max.ru
Видео инструкция СОБИРАЕМ БОТА С НЕЙРОСЕТЬЮ KLING | MAX + TELEGRAM:
СОБИРАЕМ БОТА С НЕЙРОСЕТЬЮ KLING | MAX + TELEGRAM В этом видео покажем пошаговую настройку бота с интеграцией нейросети Kling для генерации видео по текстовому описанию. Вы узнаете, как подключить API, настр... www.youtube.com
СОБИРАЕМ БОТА С НЕЙРОСЕТЬЮ KLING | MAX + TELEGRAM В этом видео покажем пошаговую настройку бота с интеграцией нейросети Kling для генерации видео по текстовому описанию. Вы узнаете, как подключить API, настроить вебхук и автоматически сохранять готовые видео в переменные контакта 🤖 Подробнее смотрите в этом видео 🏃♀️➡️ Таймкод: 00:00 Начало 00:43 О rutube.ru