support-bot: первая линия поддержки в Telegram на ИИ
ИИ отвечает по базе знаний продукта, а сложное передаёт человеку вместе с перепиской.
- Статус
- Рабочая версия, подключён один продукт
- Стек
- Python, SQLite, Telegram Bot API, OpenAI-совместимый API, systemd
- Ссылки
- нет открытых ссылок
- Услуги
Задача
Автор или небольшая команда выпускает продукт, а штатной поддержки у него нет. На одни и те же вопросы приходится отвечать вручную, а обращения, которые нужно решать человеку, теряются в переписке.
support-bot берёт типовые вопросы на себя. Всё, что он не может решить по базе знаний, он передаёт человеку без потери контекста. Первым подключён продукт PuLinTo.
Что сделано
-
Ответы только по базе знаний
Модель отвечает по файлу знаний продукта. Инструментов у неё нет: она либо пишет ответ, либо отдаёт диалог человеку.
-
Передача человеку
Тема в форум-группе создаётся только при передаче. Ответ автора из темы копируется клиенту в личные сообщения, а команда /close возвращает клиента ИИ.
-
Язык клиента
Язык определяется на каждом ответе. Фиксированные тексты переводятся один раз и кэшируются, автор пишет по-русски и видит перевод.
-
Цепочка моделей
При сбое или пустом ответе берётся следующая модель из цепочки через OpenAI-совместимый API.
-
Лимиты и напоминания
Лимиты на человека в минуту и в сутки, общий суточный лимит, напоминания и автозакрытие тихих обращений.
-
Новый продукт копией папки
Для нового продукта копируется папка с базой знаний и файлом настроек, дальше отдельная служба systemd на каждого.
Что проверено
Ответы пишут модели через внешний API, поэтому тексты обращений доходят до провайдера модели. Это нужно учитывать при выборе маршрута и модели. Сейчас к боту подключён один продукт: PuLinTo.