ИИ-антиспам: реальный опыт
Спамеры за… достали, в общем. Если настраивать против них стандартный бот с блоком условие — приходится очень сильно заморачиваться и постоянно обновлять ключи.
Ибо эти (не)товарищи постоянно придумывают что-то новенькое, учатся обходить заградительные боты.
Поэтому когда у BotHunter появились AI-блоки, я решил— а чего бы ИИ-шкой не порешать этот вопрос?
И вот теперь я могу поделиться не только конструкцией, но и СТАТИСТИКОЙ.
Статистика работы антиспам-бота
Итак, у меня было два ТГ-чата, не безумно активных, но вполне живых.
Антиспам отработал полтора месяца, и продолжает работать до сих пор.
Всего было обработано2747 сообщений,
из них 376 явный спам,
32 — это ошибки ИИ в стиле «Нейросеть не ответила за отведённое время» или «Нейросеть вернула некорректный ответ».
И то, большая часть ошибок возникала на старте, когда промт только откалибровывался. Чем дальше, тем система работает ровнее.
Схема чат-бота
Запускается бот по активности «Получено новое входящее сообщение».
Далее у меня стоит проверка, что сообщение не от админа, но вы можете установить условие откуда пришло сообщение, например, конкретный чат.
Для создания непосредственно антиспамной части, я использовал AI-блок «Условие» из раздела «Для профессионалов» и собственный промт (его приведу немного ниже).
У блока « AI-условие» есть три ветки.
- По ветке «Выполняется условие» — схема удаления комментариев, начисления штрафных баллов и удаления после достижения лимита штрафов. Можно упростить и просто удалять сразу.
Также у меня стоит обязательное сохранение в ТХ-таблицы.
Зачем?
Чтобы выявлять спам, который не выловил бот, и дорабатывать промт.
Здесь как ни странно — чем больше спама на старте — тем меньше сможет пробиться в будущем.




- По ветке «Не выполняется условие» — можно ничего не делать, кроме отправки данных в таблицу.
- По ветке «Ошибка AI» — просто фиксировал результат в таблице.
Кстати, вот развёртка блока с ТХ-таблицей:


В самой таблице я использовал три листа — для каждой ветки. Это помогло отслеживать корректность работы бота.
Также у меня используется уведомление для админа в случае, когда бот удаляет кого-то за спам. Можно подобное настроить и в случае ошибки нейросети — тут на ваше усмотрение.
Промт для антиспам бота
Напомню, что промт я постоянно дорабатывал, если находил новые спамерские заходы.
Можете прям копировать от черты до черты, но не забывайте дополнять своими случаями.
_____________________
Считать СПАМОМ - ответ "да", если присутствует хотя бы один из признаков:
— предложение заработка, денег;
— казино, ставки, крипта, инвестиции;
— продажа аккаунтов, подписчиков, баз данных;
— одинаковые сообщения, отправленные разными пользователями;
— мошенничество;
— фишинг;
— любые предложения купить, продать, обменять, оплата после завершения;
— сексуальные услуги;
— запрещённые вещества.
— сообщения, состоящие преимущественно из нецензурной лексики;
— сообщения, содержащие большое количество мата без смысловой нагрузки;
— сообщения, основной целью которых являются оскорбления, травля или провокация участников;
— сообщения, содержащие грубые оскорбления в адрес пользователя или группы.
НЕ считать спамом — ответ "нет":
— обычное общение;
— вопросы;
— обсуждение темы группы;
— приветствия;
— благодарности;
— ответы другим пользователям;
— просьбы о помощи;
— технические вопросы;
— большое количество эмодзи, символов, капса;
— просьба написать в личные сообщения для покупки;
— использование сокращателей ссылок;
— юмор;
— приглашения в другие чаты, каналы, группы;
— единичное использование нецензурной лексики в обычном разговоре;
— реклама товаров или услуг;
— эмоциональные сообщения с небольшим количеством мата, если они относятся к обсуждаемой теме.
При сомнении относи к НЕ считать спамом — ответ "нет".
Пример 1: Фасовщик на склад фруктов-8.500 — это СПАМ
Пример 2: Нужен тот, у кого есть машина, нужно перевезти драгоценнный сервиз бабушки, дам 10.000 за качественную и безопасную перевозку — это СПАМ
Пример 3: Приветствую! Ищу людей для сотрудничества в онлайн-формате. Не хочу спамить, всем хорошего дня! За всеми подробностями — это СПАМ
Пример 4: 💵Доступна Единоразовая выплата из реестра!
💵Сумма от 50 000 до 300 000 ₽
👤Кто может оформить:
— Все жители РФ❗️
— Возраст не ниже 18 лет!❗️
— Трудоустройство не имеет значения❗️ — это СПАМ
Пример 5: Могу помочь с деньгами, кто действительно нуждается — пишите, расскажу — это СПАМ
Пример 6: Разнести пиццу по районам из центра!
Одна доставка до 500 р, пишите в личные — это СПАМ
Пример 7: Уезжаю в отпуск нужно что бы кто то посидел с собакой, прививка есть документы еду все предоставлю. Посидеть нужно неделю, плачу 8000 — это СПАМ
Пример 8: ❗️Белые списки и ограничения? Не проблема.
LISAVPN — стабильное подключение без лишних настроек.
Быстро
Стабильно
До 3-х устройств
24 часа бесплатно — это СПАМ
_____________
Вот такой получился довольно простой и при этом эффективный бот.
Автор: Сергей ЯнуловЕсть что рассказать о BotHunter? Милости просим!
Кстати, за классные материалы дарим промики на доступ к сервису. Подробности: https://vk.com/wall-187822477_13035
