Телеграм-бот с базой знаний по вашим данным: как устроен
Телеграм-бот с базой знаний отвечает не общими фразами, а по вашим материалам: прайсу, регламентам, остаткам, истории заказов. Ниже разбираем, из чего он состоит, откуда брать данные и почему главная работа здесь — держать данные свежими, а сам бот вторичен.
Чем такой бот отличается от бота с кнопками
Обычный бот работает по дереву меню: человек нажимает «Цены», получает заранее написанный текст. Если вопрос не попадает ни в одну кнопку, бот бесполезен. Бот с базой знаний принимает вопрос свободным текстом, находит в ваших материалах подходящие фрагменты и собирает ответ из них.
Внутри это три части:
- база — ваши документы и таблицы, разбитые на фрагменты и подготовленные для поиска;
- поиск — по вопросу выбирает фрагменты, которые относятся к делу;
- языковая модель — формулирует ответ по найденному, а не по своей памяти.
Качество ответа почти целиком зависит от первой части. Если в базе старый прайс, бот уверенно назовёт старую цену, и никакая модель это не исправит.
Откуда бот берёт знания
Документов в Word и PDF хватает для справочных вопросов: условия доставки, гарантия, порядок возврата, внутренние регламенты. Но самые частые вопросы клиентов и сотрудников касаются того, что постоянно меняется: цены, наличие, статус заказа, сроки. Эти данные лежат в рабочих системах, и оттуда их нужно регулярно забирать.
- 1С и складские программы — остатки, цены, номенклатура. Обычно данные выгружаются в таблицу или базу по расписанию, и бот читает уже её.
- CRM — статусы сделок и заказов, история общения с клиентом. Для внутреннего бота это позволяет ответить менеджеру «что с заказом такого-то» без захода в интерфейс.
- Ваш сайт — каталог и описания, если основной источник правды у вас именно там.
- Внешние сайты — цены конкурентов, карточки на маркетплейсах, отзывы на картах. Их нужно собирать отдельно, и тут есть технические сложности.
С внешними источниками всё упирается в защиту от ботов. Маркетплейсы и крупные площадки блокируют простые запросы с серверных адресов. Мы собираем такие данные настоящим браузером с российского адреса: площадка видит обычного посетителя, и данные приходят целиком, в том же виде, в каком их видит покупатель.
Главная работа — держать базу свежей
Бот, который один раз загрузили документами и оставили, через месяц начинает врать: цены сменились, позиции кончились, регламент переписали. Поэтому важнее, чем выбор модели, вопрос: кто и как обновляет данные.
Рабочая схема выглядит так:
- выгрузки из 1С, CRM и с сайтов запускаются по расписанию на сервере, без участия человека;
- каждая выгрузка проверяется: если источник вернул пустоту или вдвое меньше строк, чем вчера, база не перезаписывается, а приходит уведомление о сбое;
- история изменений сохраняется, а не затирается, и тогда бот может ответить не только «сколько стоит сейчас», но и «как менялась цена».
Последний пункт мы проверили на своём хозяйстве: у нас собрана собственная база истории цен объёмом около 3,8 ГБ, она пополняется автоматически. На таких данных телеграм-монитор может сам написать, что конкурент снизил цену или товар пропал из наличия, а не ждать, пока об этом спросят.
Отсюда полезное различие: бот отвечает, когда его спрашивают, а монитор сам пишет, когда что-то изменилось. Часто бизнесу нужен как раз монитор, а бот с вопросами-ответами работает поверх той же базы как дополнение.
Где такие боты ошибаются и как это ограничить
Языковая модель умеет правдоподобно достраивать ответ, даже если в базе ничего подходящего нет. С этим справляются не настройкой «будь точнее», а жёсткими правилами:
- отвечать только по найденному. Если в базе нет фрагмента по вопросу, бот так и говорит и не сочиняет;
- цифры брать из таблицы, а не из текста модели. Цену, остаток и срок бот подставляет прямо из выгрузки, модель только оформляет ответ;
- передавать человеку. Жалобы, нестандартные случаи и всё, что касается денег клиента, уходят сотруднику с уже собранным контекстом диалога;
- показывать дату данных. Строка «цены на 9:00 сегодня» снимает половину претензий.
Отдельно про размещение. Если база содержит персональные данные клиентов (имена, телефоны, историю заказов), по 152-ФЗ они должны храниться на сервере в России. Бот, собранный на зарубежном конструкторе, этому требованию часто не соответствует. Персональные данные лучше держать на своём российском сервере, а во внешние сервисы передавать только обезличенные фрагменты.
Реалистичные ожидания: такой бот хорошо снимает повторяющиеся справочные вопросы и быстро выдаёт данные из систем. Сотрудника, который ведёт переговоры или разбирает конфликт, он не заменит, и обещать этого не стоит.
Соберём под ваш случай и покажем на ваших данных.
Бот и автоматизация →