Читайте в Телеграме, как писать и заказывать контент
Продолжая пользоваться сайтом, вы соглашаетесь на использование cookie
Хорошо

Создали телеграм-бота с ИИ, который генерирует темы для статей и экономит нам 32 рабочих часа

Подключили ChatGPT к боту, сделали основной и продвинутый тариф и настроили автоматический прием платежей через Т-Банк. Всё сделали силами команды Рыбы
боты
разработка
Каждый день авторам и редакторам Рыбы надо придумывать темы для статей: для клиентских контент-планов, коммерческих предложений, внутреннего блога. Это довольно трудная и рутинная задача, особенно когда кажется, что все возможные темы уже охватили. Для создания хотя бы 20 тем уходит около часа: на брейншторм, изучение конкурентов, создание черновых заголовков статей.

Нагрузка всегда отличается, но в среднем за месяц можно посчитать так:

  • 500+ тем для статей разных форматов: лонгриды, посты в соцсетях, статьи в ПромоСтраницы и другие. Предположим, что это примерно 24 часа работы.
  • Закладываем еще 8 часов на правки от клиентов. Какие-то темы просят заменить, что-то поправить, добавить.

В итоге, чтобы придумать темы статей — только придумать, а не написать сам контент, — в месяц уходит не менее 32 часов. Это расчеты для 4 юнитов в Рыбе — 20 редакторов.
Задача
Разработать телеграм-бота и внедрить в него ChatGPT, чтобы темы для статей придумывал искусственный интеллект. Для большего разнообразия заголовков всё должно было работать на основе контент-матрицы. Если вкратце, это таблица, в которую вписывают основную информацию о компании: целевую аудиторию, боли аудитории, продукты, плюсы продуктов. И на пересечении этих данных генерируют темы.
Благодаря боту мы бы облегчили задачу команде Рыбы и сэкономили 32 часа рабочего времени. А еще разработка наверняка пригодилась бы другим компаниям — можно было бы продавать им доступ.
Что мы сделали
Написали код для обращения к ChatGPT
Разработали логику скрипта и придумали промпт. Для работы с API Open AI предлагает собственные библиотеки на самых популярных языках программирования. По сути, это готовые шаблоны кода, в которые нужно только вставить токен и добавить промпт.

С кодом справились быстро, а с промптом помучились. По задумке должно было работать так:

1. Редактор указывает данные для контент-матрицы.

2. Эти данные вставляются в готовый промпт и отправляются ChatGPT.

3. ИИ выдает 50 готовых тем.

Мы перепробовали несколько десятков вариантов промпта, прежде чем добились приемлемого результата. Бывало, ChatGPT ударялся в слишком сильный креатив или, наоборот, выдавал чересчур пресные темы.
Иногда ИИ генерировал забавные заголовки. Например: «Как глубинный насос для дачи спас нас от крика черных ворон».
Разработали телеграм-бота
Мы написали бота и внедрили в него код для обращения к ChatGPT. Теперь это работает так:

1. Сначала надо создать контент-матрицу. Для этого пользователь выбирает из готовых шаблонов данные, которые он желает в ней видеть. Например, продукты, целевая аудитория, рубрики. Однако, если они не устраивают, можно игнорировать их и добавить собственные данные. Нужно просто нажать на кнопку «Добавить пункт (ы)».
Выбранные пункты отмечаются зеленой галочкой, а ненужные остаются с красной галочкой
2. После выбора главных пунктов контент-матрицы надо заполнить их данными. Например, если выбран пункт «Целевая аудитория», то нужно подробнее описать ее. В духе «мужчины 40 лет, владеют авто».
Здесь пользователь должен подробно указать данные
3. После указания всех данных внутри бота будет готова контент-матрица. На их пересечении можно генерировать темы. Пользователь и тут может сам решить, какие пересечения ему выбрать. Например, только продукты и целевая аудитория.
Для удобства здесь тоже все пункты отмечаются зеленой галочкой
4. Пользователь нажимает «Вперед», и в ChatGPT отправляется промпт с введенными данными. Остается только дождаться результата.
Показываем часть тем, которые присылает ChatGPT. Они даны списком в удобном формате без лишних элементов
Для разработки мы использовали бесплатную библиотеку aiogram-dialog. Это мощный инструмент, с помощью которого можно создавать крутые интерфейсы для телеграм-ботов. А еще он значительно ускоряет написание кода, так как всё сводится к заполнению готовых шаблонов.
Внедрили платную подписку на бота
Мы решили открыть доступ всем желающим, а не только команде Рыбы. Для этого запланировали условно бесплатный и премиум-вариант подписки. В условно бесплатной части человек может указать только продукты и целевую аудиторию, а бот ему выдаст 50 тем для статей.

Тот, кому нужен более профессиональный инструмент, может оформить премиум-версию. В ней нет ограничений по количеству данных, можно сохранять контент-матрицу в базе данных, улучшать уже готовые темы еще раз с помощью нейросети.

Для разработки логики деления бота на две части мы использовали разные решения.

Использовали базу данных PostgreSQL. Это топовое решение для хранения и обработки информации. В базу данных мы записываем ID пользователя в Телеграме, присваиваем ему статус free (бесплатный) и записываем счетчик запросов со значением 10. Каждый запрос уменьшает счетчик на один, пока он не обнулится. Потом бот будет просить оформить премиум-подписку.

Если пользователь внес оплату за подписку, ему присваивается статус premium и счетчик запросов увеличивается до 50. То есть человек может 50 раз сгенерировать темы для статей.

Такая логика помогает автоматизировать рутину и избавляет от необходимости вручную менять статусы пользователей и следить за актуальностью подписки.

Подключили прием платежей через Т-Банк. Оплату от пользователей нам надо было принимать на расчетный счет ИП. У Т-Банка есть собственный API, через который можно настроить автоматическое формирование платежной ссылки.

Написать код было несложно: есть готовые библиотеки от банка. Труднее пришлось с настройками уведомлений. Дело в том, что Телеграм не может отслеживать, пришел ли платеж на сторонних ресурсах. А нам критически важно это понимать, чтобы выдавать премиум-запросы только в случае получения денег на счет ИП.

Решение нашли в самом Т-Банке. В методах API можно указать ссылку на сайт, на которую банк присылает уведомление о платеже: успешно или нет. Эта технология называется «вебхук», и ее легко интегрировать в телеграм-бота. Для разработки мы зарегистрировали отдельный домен cm-ryba.ru и подключили к нему функцию для обработки запросов. Когда человек оплачивает премиум, функция сама стучится в бота и сообщает ему статус платежа. А пользователю приходит сообщение.
Так пользователь понимает, что ему присвоен статус премиум
Скажем честно: в итоге мы решили не выпускать бота на широкий рынок и не анонсировать его громко. Продукт оказался сложнее, чем мы ожидали, а ИИ пока не выдает с ходу темы высокого качества. Но бота мы оставили для внутреннего пользования команды Рыбы: авторы и редакторы генерируют в нем темы для вдохновения.
Предусмотрели дополнительные фишки в боте
В процессе разработки мы дополняли ТЗ и придумали еще фишки, чтобы сделать работу с ботом еще приятнее и технологичнее.

Возможность сохранять контент-матрицу. Представьте: редактор ведет пять проектов разного направления. Сегодня нужны темы для одного проекта, завтра — для другого, а послезавтра — опять для первого. И получается, каждый раз придется заполнять данные для контент-матрицы заново. Чтобы избежать этого, мы предусмотрели возможность сохранить все введенные данные. Человек вводит их и нажимает «Сохранить контент-матрицу».
Можно сохранить любое количество контент-матриц
Обращения в техподдержку внутри бота. Если человеку нужна помощь, ему не приходится писать на почту, переходить в другого бота или открывать WhatsApp. Пользователь задает команду /support и просто пишет сообщение в интерфейсе бота. Письмо уходит в отдельный канал техподдержки, где его обрабатывают админы.
Это инструкция-подсказка для пользователя перед отправкой письма
Рассылка сообщений. Если пользователям надо сообщить интересное, поделиться новостями или предложить скидку, админ задает команду /admin и нажимает кнопку «Создать рассылку». После этого формирует сообщение и нажимает отправить. Всё — рассылка улетает по всей базе пользователей бота.
Внутри бота стоит защита от разных ошибок. Например, если человек запретил писать сообщения, он будет просто проигнорирован ботом
Результаты
Раньше авторы и редакторы тратили значительные ресурсы для генерации тем. В месяц набегало до 32 часов работы. Теперь бот за один запрос генерирует 50 тем за пару минут и сильно облегчает нам задачу, экономя силы и время. Даже если с первого раза темы получились не очень, можно попросить бота сделать еще, а потом еще раз — и так до тех пор, пока не устроит результат.

ДАВАЙТЕ ПОГОВОРИМ

Хотите, мы тоже сделаем вам телеграм-бота на основе ИИ?

Все услуги редакции