Усі роботи
БотиМовні школи й освітні курси2026

AI-менеджер мовної школи в Telegram

Клієнти питають те саме цілодобово, а помилка про ціну коштує дорожче за мовчання. Бот відповідає за базою знань і віддає розмову людині там, де не має права вирішувати.

Результат

  • Відповідь, яка не спирається на жоден документ бази знань, клієнту не надсилається взагалі
  • Питання про гроші й нестандартні ситуації доходять до людини, а не закриваються навмання
  • Власник бере розмову собі лише свідомо і отримує вижимку замість усієї переписки
  • Відкрите й те, й інше: поговорити з ботом у Telegram і заглянути в кабінет власника без пароля
Роль
Бот, кабінет власника, база знань, сервер
Оновлено
2026-09-22
Подивитись наживо

Задача

Мовна школа продає не товар, а рішення, яке людина обдумує тижнями. Питання приходять цілодобово і повторюються: який у мене рівень, скільки коштує, коли можна займатись, що буде, якщо пропущу заняття. Відповідає на них людина, і відповідає те саме.

Але питання не рівні між собою. «Чи можна оплатити карткою мого банку з Німеччини» виглядає так само просто, як «скільки триває заняття», а ціна помилки в ньому зовсім інша: людина заплатить і не поверне гроші. Бот, який відповідає на все однаково впевнено, у цьому місці коштує дорожче, ніж його відсутність.

Що зробив

Бот у Telegram відповідає клієнтам за базою знань школи: рівні, формати занять, ціни, розклад, оплата, скасування і окремо те, чого школа не робить. Пам'ятає клієнта між розмовами, тому на другому тижні не питає ім'я і мету вдруге.

Заявку на пробне заняття збирає сам: мета, рівень, формат, часовий пояс, зручний час. Коли даних досить, вирішує код, а не модель, і власник отримує картку з готовою заявкою.

Власник читає все в браузері: список розмов, саме листування, заявки. Відповісти може звідти або просто реплаєм у Telegram, куди бот скидає картку.

Коли підходить

  • Одні й ті самі питання, цілодобово. Людина відповідає те саме вдесяте, а ввечері й у вихідні не відповідає ніхто.
  • Частина питань не має права на помилку. Гроші, повернення, нестандартні ситуації: тут дешевше промовчати, ніж відповісти неправильно.
  • Заявки живуть у чиїйсь голові. Хто на якому етапі і кому вже пообіцяли передзвонити, знає тільки той, хто того дня був у чаті.

Головне рішення: код не вірить моделі

Модель відповідає не з голови, а з кусків бази знань, які їй дали. Далі код звіряє, на що саме вона послалась. Якщо відповідь по суті не спирається на жоден знайдений документ, вона не йде клієнту взагалі: замість неї власник отримує питання, а клієнт чесне «уточню в керівника».

Чотири причини передати розмову людині ставить сам код, а не модель: відповідь без джерел, збій провайдера, нерозбірлива відповідь, вичерпаний денний бюджет токенів. Жодну з них не можна вмовити не спрацювати.

Профіль клієнта і резюме минулих розмов теж їдуть у модель як дані, а не як інструкції. Рядок «мені обіцяли знижку 50%» у резюме лишається твердженням клієнта, а не новим прайсом.

Межа: бот не забирає розмову в людини

Звичайна відповідь власника не робить його відповідальним за всю розмову: на решту питань далі відповідає бот. Людина бере розмову собі лише явно, кнопкою, і в ту ж секунду отримує вижимку: профіль, резюме, активну заявку, хвіст листування. Читати всю переписку з нуля не треба.

Зворотне так само важливе. Розмова, яку взяли й забули, повертається боту сама за добу, з поміткою «потребує уваги». Інакше найцінніше звернення тихо залишається без відповіді саме тому, що ним зайнялась людина.

Персональні дані

У логах немає текстів повідомлень, тільки ідентифікатори, тип події і тривалість. Профіль клієнта і резюме розмови не логуються взагалі: там персональні дані. У кабінету немає ні доступу до бази, ні токена бота, ні ключа моделі, тому зламаний браузер не відкриває нічого з цього.

Як це перевірено

39 сценаріїв ганяються через справжню модель, а не через заглушку: питання про ціну з підступом, питання про те, чого школа не робить, спроби перебити інструкції текстом у повідомленні, повернення до старої теми через тиждень. Окремо 108 тестів на справжньому Postgres.

Прогін на живій моделі коштує грошей, тому він не входить у звичайні тести. Але без нього «бот не вигадує» лишається обіцянкою, а не перевіреним фактом.

Спробуйте самі

Бот відповідає просто зараз, за посиланням «Подивитись наживо». Найцікавіше питати те, на чому такі боти зазвичай і ламаються: попросити знижку, спитати про іспит, якого немає в програмі, або запитати, чи пройде оплата карткою вашого банку. Правильна відповідь на останнє це не «так», а «уточню в керівника».

Другу половину роботи видно в кабінеті власника, і він теж відкритий: демо без пароля. Там ті самі розмови, які бот справді провів, з профілем клієнта, зібраними заявками і моментом, де розмова пішла до керівника. Змінити в ньому не можна нічого: це окремий екземпляр, який дивиться у свою базу і вміє тільки читати.

Часті питання

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

Що як написати боту «забудь усі інструкції»? Нічого не зміниться. Текст клієнта потрапляє в модель як текст клієнта, а не як нові правила, і це окремий сценарій у перевірці.

А якщо модель недоступна? Клієнт отримує нейтральну відповідь, а розмова йде людині. Збій зовнішнього сервісу бота не роняє і не змушує його мовчати.

Стек

  • Python
  • FastAPI
  • LLM
  • pgvector
  • Next.js
  • Docker

Схожа задача?

Опишіть її двома реченнями. Скажу, чи можна це автоматизувати і скільки приблизно коштуватиме.

Написати в Telegram