Автоматическое выкладывание постов в Telegram с помощью AI


В данном кейсе рассмотрим, как можно настроить автоматическую выкладку постов в Telegram с помощью MoreKIT и блоков искуственного интеллекта

Задача

  • Настроить процесс, который будет автоматически запускаться по расписанию и выкладывать пост в канал Telegram
  • Генерировать тематическое изображение и текст поста

Подключение Telegram

Первым делом — подключим в MoreKIT бота Telegram

В списке сервисов ищем Telegram

Для подключения telegram нам нужен токен бота

Если у вас уже есть созданный бот — можете использовать его или создать нового бота

Создание бота через @BotFather

Для создания Telegram бота перейдем в @BotFather

BotFather — это единственный бот, который управляет всеми остальными. Используйте его для создания новых аккаунтов ботов и управления существующими

После перехода в BorFather нажимаем Create a New Bot

Откроется окно настроек бота, вы можете задать ему название, описание, установить фотографию

После создания бота — появится окно с его настройками и токен

Скопируйте токен и вставьте его в оке добавления сервиса Telegram в MoreKIT

Возвращаемся к сервису, вставляем токен и даем название сервису внутри MoreKIT

Для того, чтобы бот мог писать в канал — необходимо добавить его Администратором канала

Получение ID чата Telegram

Для отправки сообщения в чат Telegram — необходимо узнать ID чата. Для того, чтобы узнать ID чата, напишите любое сообщение и скопируйте ссылку на него

Вставьте ссылку в любое место

Ссылка на сообщение будет в формате: https://t.me/c/1234567890/42

Если ссылка выглядит как https://t.me/c/1234567890/42, то chat_id для бота — -1001234567890 (подставляем -100 в начале). Последнее число (42) — ID поста.

Telegram описывает формат ссылки t.me/c/<channel>/<id>

4485942418 — это и будет ID чата, но для вставки в блоке будет необходимо добавить -100

Т.е. итоговый ID чата будет: -1004485942418

Пополнение ИИ баланса

Для использования ИИ блоков внутри MoreKIT необходимо пополнить ИИ баланс

Заходим в раздел О проекте —> оплата, пополняем ИИ баланс на любую сумму

Создание процесса с типом «По времени»

Далее — создадим процесс с типом По времени. Данный процесс можно настроить на автоматический запуск

Задаем название и создаем процесс

Настройка процесса

Схема процесса будет выглядеть следующим образом:

Описание блоков схемы

В первом блоке процесса задается период запуска. В данном случае — запуск будет осуществляться каждый день в 12 часов. В данном блоке можно гибко настроить время запуска процесса

#3 Достать из хранилища — данный блок будет хранить в себе текст предыдущего поста, чтобы избежать повторов от ИИ

#1 Запрос на чат-ответ — данный блок отправляет промпт о написании поста в ИИ и текст с предыдущим постом

Напиши один пост для Telegram-канала об IT и искусственном интеллекте на русском языке. Выбирай событие, которое будет интересно разработчикам, интеграторам или специалистам по автоматизации.Выбери реальное известное тебе развитие AI и напиши о нём как о коротком тематическом посте без слов «сегодня», «вчера», «недавно» и утверждений о текущих релизах.Структура: короткий заголовок, что произошло или о чём речь, затем почему это важно на практике. Объём — 600–1000 знаков. Пиши живо и понятно, без кликбейта. Не выдумывай даты, цифры, цитаты и функции продуктов. Верни только готовый пост.

#4 Положить в хранилище — данный блок складывает текст поста в хранилище для передачи его в ИИ, чтобы не было повторений

#5 Генерация изображения — данный блок генерирует тематическое изображение для поста. В ответе блока будет файл с изображением

#6 Отправить изображения — данный блок отправляет изображение и пост в telegram

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

Для тестирования схемы необязательно ждать, когда наступит его время запуска. Скопируйте ссылка из первого блока и перейдите по ней в браузере, тем самым, вы отправите пустой запрос на процесс и он запустится

После перехода по ссылке — смотрите события, должно появиться новое событие

Проверяем Telegram

Как видим — пост с картинкой сгенерирован. Теперь при каждом запуске процесса, согласно вашему расписанию — будет публиковаться пост с картинкой

Советы по улучшению

Инструкции для разработчика

90% Качества текста зависит от промпта, который вы задаете модели, качество написания инструкции напрямую влияет на это

Советуем изучить базовые принципы написания промптов в данной статье

Долгосрочная память

Вы можете накапливать контекстное хранилище с помощью блока Положить в хранилище

У хранилища есть ограничение по размеру, чтобы быстро не упереться в размер хранилища, можно записывать первые N символов поста

Процесс с накапливание хранилища будет выглядеть следующим образом:

Здесь добавятся следующие блоки:

#7 Добавить в список — в данный список записываем первые 100 символов текущего текста ответа и список предыдущих постов, которые были в хранилище ранее. Здесь используются фильтры |join и |slice. Подробнее о фильтрах читайте в статье Поля

#4 Положить в хранилище — собираем все в один список, текущий пост и предыдущие посты

#8 Проверка — проверяем, сколько пространства занято в хранилище. Так как MoreKIT в данных хранилища отдает ответ вида:

{
"занято":"3.24%"
"Previous_posts":"<здесь данные>"
}

Здесь используется фильтр |replace для удаления символа процента

#9 Положить в хранилище — если хранилище будет заполнено больше, чем на 90%, записываем в него только текущий текст

Работа с форматированием

В блоке ИИ можно четко описать, что текст будет использоваться в Telegram и попросить его использовать форматирование

В примере с Telegram есть несколько вариантов форматирования:

Для этого, изменим промпт так, чтобы ИИ понимал, что мы будем использовать посты в Telegram в разметке HTML:

Напиши один пост для Telegram-канала об IT и искусственном интеллекте на русском языке. Выбери реальное известное тебе развитие AI, интересное разработчикам, интеграторам или специалистам по автоматизации.
Структура поста:
1. Короткий заголовок, выделенный тегами ....
2. Пустая строка и 2–3 коротких абзаца: о чём речь и почему это важно на практике.
3. При необходимости — короткий список с маркером «•».
Оформление для Telegram:
- Используй 1–3 уместных эмодзи на весь пост. Эмодзи должны помогать восприятию, а не стоять перед каждым предложением.
- Выделяй жирным только заголовок и, при необходимости, одну ключевую мысль с помощью ....
- Используй настоящие переносы строк между абзацами.
- Не используй Markdown-разметку: **, ## и тройные обратные кавычки.
- Используй только HTML-теги  и . Если в обычном тексте нужны символы & или <, записывай их как & и <.
Объём — 600–1000 знаков с учётом разметки. Пиши живо и понятно, без кликбейта. Не используй слова «сегодня», «вчера», «недавно» и не утверждай, что речь о текущем релизе. Не выдумывай даты, цифры, цитаты и функции продуктов.
Верни только готовый текст поста.

C новым промптом результат форматирования текста будет уже куда лучше

Подведем итоги

В данной статье рассмотрели, как можно настроить автоматическое написание постов на примере мессенджера Telegram с помощью ИИ блоков кита

Настроили автоматический запуск процесса, поработали с памятью ИИ и изучили основы Prompt-engineering