Цель:
Автоматизировать создание видео-контента с использованием ИИ, чтобы быстро превращать текстовые статьи в динамичные видеоролики с персональным аватаром.
Область применения:
Как это работает?
Для подключения данной автоматизации вам потребуется:
В первую очередь, для удобного тестирования создайте первый блок автоматизации “When clicking Test Workflow”, чтобы автоматизация запускалась при нажатии на кнопку Test Workflow, потом сможете заменить начало на какую-то любую другую ноду тригер.
В поиске нажмите на Add another trigger
И выберите Trigger manually
Далее создайте HTTP ноду в которой будем брать последние новости через сервис Apify
Но с начала перейдите в Apify на инструмент website content crawler
https://console.apify.com/actors/aYG0l9s7dbB7j3gbS/input
Тут в Start URLs вставьте нужный вам новостной сайт, для примера использую: https://www.morningbrew.com/issues/latest
Далее в правом верхнем углу нажмите на API - API endpoints
В открывшемся окне найдите Run Actor synchronously and get dataset items
Данная ссылка содержит ваш уникальный ключ
Скопируйте данную ссылку с вашим ключом и вставьте в N8n в ноду HTTP в раздел URL
Method: POST
Активируйте Send Body
Body content type : JSON
Specify body: Using JSON
в окне JSON ниже вставьте:
{
"crawlerType": "playwright:adaptive",
"startUrls": [
{
"url": "https://www.morningbrew.com/issues/latest",
"method": "GET"
}
],
"pageFunctionTimeoutSecs": 60,
"proxyConfiguration": {
"useApifyProxy": true
},
"saveHtml": false,
"saveMarkdown": false,
"saveScreenshots": false,
"debugLog": false
}
На место url вставьте ссылку на нужный вам сайт
Должно получится вот так:
Дальше создайте ноду AI Agent
И подключите ему OpenAI Chat Model
В самом агенте:
Source for prompt: Define below
Prompt:
Добавьте ему System message через кнопку Add Options
И в system message вставьте промпт:
" Ты — сценарист коротких видеороликов. На вход ты получаешь статью.
Твоя задача — создать короткий, динамичный текст для видео в формате пересказа, без заголовков, без описания задачи.
Используй простой, живой и разговорный стиль.
Длина — 50-100 слов.
Не упоминай источник. Не говори "в статье говорится". Просто пересказывай суть так, будто объясняешь зрителю.
Отдай только текст сценария. Без вступлений, заголовков, форматирования."
После ИИ Агента создайте ноду HTTP request и заполните:
Method: POST
URL: https://api.heygen.com/v2/video/generate
Authentication: Generic Credential Type
Generic Auth Type: Header Auth
В Header Auth создайте новый credentials и назовите их Heygen
В поле Name: x-api-key
В поле Value: ваш апи ключ от Heygen https://app.heygen.com/settings?from=&nav=Subscriptions%20%26%20API
Далее активируйте Send Headers
Specify Header: Using fields below
Name: accept
Value: application/json
Далее активируйте Send Body
Body content type : JSON
Specify body: Using JSON
в окне JSON выберите expression и ниже вставьте:
{
"video_inputs": [
{
"character": {
"type": "avatar",
"avatar_id": "<айди вашего аватара>",
"avatar_style": "normal"
},
"voice": {
"type": "text",
"input_text": "{{ $json.output }}",
"voice_id": "<айди вашего голоса>",
"speed": 1.1
}
}
],
"dimension": {
"width": 1280,
"height": 720
}
}
В Heygen вы можете создать своего аватара клона, загрузив на платформу от 30 секунд до 2 минут видеоматериала с вашим лицом, где вы разговариваете в камеру, для этого в разделе avatars https://app.heygen.com/avatars нажмите на Create New Avatar
и выберите Hyper realistic avatar
Далее следуйте инструкции на сайте.
Для того чтобы найти айди вашего аватара перейдите в Heygen в раздел avatars https://app.heygen.com/avatars , нажмите на вашего аватара , после нажмите на три точки в углу и выберите Copy avatar id
С голосом такая же процедура, перейдите в раздел voices https://app.heygen.com/voices
и в my voices найдите голос вашего аватара или выберите любой другой и скопируйте его айди
Далее создайте ноду Wait для того, чтобы дать видео прогрузиться.
Далее создайте ещё одну HTTP ноду, в которой вы будете проверять и забирать готовое видео.
Структура схожая с прошлыми HTTP нодами
Method: GET
URL: https://api.heygen.com/v1/video_status.get
Подключите ранее настроенные вами credentials
Активируйте Send Query Parameters
Specify Query Parameters: Using Fields Below
Создайте новый параметр
Name: video_id
Value: Из HTTP ноды с генерацией видео через режим schema перетащите динамический параметр с video_id в данное поле
Активируйте Send Headers
Specify Header: Using fields below
Name: accept
Value: application/json
Теперь создайте ноду If для проверки готовности видео
Вставьте динамический параметр status из прошлой ноды через режим schema, чтобы сравнивать его со статусом “completed” по логике, реализованной на картинке ниже, либо просто впишите туда: {{ $json.data.status }}
Если условие False и видео ещё не со статусом complete, то на ветке False должна быть ещё одна нода Wait, которая даст автоматизации время подождать перед повторной проверкой.
Подключите ноды согласно картинке ниже, чтобы сформировался цикл проверок который закончится только когда условие станет True - то есть статус видео станет complete.
Готово.
JSON-файл и инструкцию в видеоформате вы всегда можете получить, вступив в наш уникальный Клуб автоматизаций.