В 2023-м я сидел в Телеграме по три часа в день и отвечал «сколько стоит», «какие сроки» и «а скидку». 50-100 одинаковых сообщений в сутки, и каждое — руками. В какой-то момент я поймал себя на мысли, что не пишу код, а работаю оператором колл-центра. И это при том, что я сам себе работодатель.
Задача была простая до неприличия
Мне не нужен был «умный ассистент с памятью и векторной базой». Нужно было снять с себя однотипные вопросы, а сложные — вернуть живым человеком мне. Всё. Никаких агентов и цепочек рассуждений.
Собрал на PHP 8.2, потому что он уже стоял на сервере под ISPmanager. Вешаю вебхук на Telegram Bot API: скрипт получает входящий текст, чистит его от лишних смайлов и мусора, отправляет в OpenAI API и возвращает ответ пользователю. Никакой ORM — PDO и пара таблиц для логов, чтобы понимать, где бот наврал.
Как отделить типовой вопрос от сложного
Ключевой момент, без которого вся затея разваливается. Если бот отвечает на всё подряд — он рано или поздно ляпнет чушь по нетиповому запросу и потеряет клиента.
Я сделал так: в промт кладу список услуг, цен и короткую инструкцию — «отвечай кратко, по делу, не выдумывай». Если модель в ответе вернула маркер неуверенности (я просто прошу её в этом случае написать определённое слово), скрипт не отправляет это клиенту, а пишет «Сейчас соединю с менеджером» и перекидывает диалог на меня. Простая эвристика, но работает лучше, чем кажется.
Сколько это стоит по деньгам? Диалог средней длины на GPT-4 — около 0.03$. За месяц при моём потоке набегает 20-30 баксов. Это дешевле часа моего времени, не говоря уже про оператора.
Грабли, на которые я наступил
Первое — «бесплатный ChatGPT тупит». Точнее, старые дешёвые модели путались в ценах и придумывали услуги, которых у меня нет. Пришлось зашить актуальный прайс прямо в промт и явно запретить фантазировать.
Второе — задержка. Ответ приходит за 2-3 секунды, и это нормально, но если вебхук не отвечает Telegram быстро, тот начинает слать повторы. Решилось тем, что я сразу возвращаю 200 и обрабатываю сообщение асинхронно.
Третье, самое неприятное — клиенты не заметили, что говорят с ботом. Конверсия в продажу не упала. Это одновременно и хорошо, и немного тревожно.
Что получилось в итоге
По моим логам, бот закрывает около 70% всех вопросов. Экономия — примерно 40 часов в месяц. Эти часы я потратил на новые проекты, а не на переписку. Уровень стресса упал заметно, и это, пожалуй, главный результат.
Знакомый арбитражник как-то сказал: «Трафик — это кровь бизнеса, но без автоматизации ты просто истекаешь кровью впустую». Фраза не моя, но запомнил я её крепко.
Ты готов потратить один вечер на настройку бота, чтобы освободить себе недели в году? Или продолжаешь отбивать сообщения руками и называть это «живым общением с клиентом»?
Если похожая задача — пиши в Telegram, скину пример кода на PHP.
Комментарии 3