Перейти к содержимому
КейсСеть студий красоты, Санкт-Петербург

AI-агент для автоматизации консультаций и записи в сети студий красоты NailLounge

AI-ассистент в Telegram закрывает 70–80% типовых обращений клиентов мгновенно: отвечает на вопросы по услугам и ценам, бронирует визиты в YClients, шлёт напоминания и эскалирует сложные случаи живому администратору.

Multi-LLM роутинг (GPT-4o / Claude / Gemini / локальная Mistral) с cost-aware маршрутизацией — снижение costs ~10×
RAG над знаниями салона на pgvector + BGE-M3 — модель отвечает только из проверенной базы, не выдумывает цены
Безопасный tool-слой: write-операции в YClients только после двухступенчатого подтверждения от пользователя

Итог: Администраторы освободились от 6–8 часов рутинной переписки в день; время ответа клиенту в пиковые часы упало с 15–40 минут до <3 секунд; запись через AI занимает 60–90 секунд против 5 минут диалога с человеком.

70–80%

обращений закрывает AI без эскалации

<3 сек

время первого ответа клиенту

~10×

снижение LLM-costs за счёт роутинга

100%

покрытие напоминаниями за 24 и 2 часа

01 / Brief

С чем пришёл клиент

Нужно было собрать сайт сети студий как продукт: с единым бренд-ощущением, быстрым выбором услуги и записью без внешнего визуального разрыва.
01

Администраторы NailLounge тратили 60–70% рабочего времени на переписку с клиентами: одни и те же вопросы про цены, расписание мастеров, переносы записей. На реальную работу с клиентом в зале времени не оставалось.

02

В пиковые часы клиент ждал ответа 15–40 минут — часть отваливалась и уходила к конкурентам, у которых есть онлайн-запись или живой чат с быстрым ответом.

03

Нужен был AI, который снимает рутину без потери качества: говорит точными ценами и расписанием из YClients, не выдумывает, эскалирует сложные случаи живому администратору, и стоимость работы должна разумно масштабироваться с нагрузкой.

02 / Execution

Как мы это решали

Решения разложены как цепочка продуктовых слоёв: от входа в запись до аналитики, кэша и SEO-структуры. Каждый слой поддерживает основной сценарий, а не существует ради отдельной технологии.

1

AI-ассистент в нескольких точках входа Telegram

Единый агент доступен в личном чате бота @NailLoungeBot, в бизнес-чатах салонов и в Telegram Mini App. Унифицированный адаптер каналов передаёт сообщения в общий формат — оркестратор не различает источник, клиент получает одинаковый опыт независимо от точки входа.

2

Оркестратор с state-machine диалога

Сердце агента: хранит контекст (idle → consultation → booking → confirmation → done), маршрутизирует каждое сообщение по сложности, отслеживает confidence-уровень ответа и решает — отвечать самому, вызвать инструмент или эскалировать живому оператору.

3

Multi-LLM роутинг с cost optimization

Простые FAQ идут в GPT-4o-mini или Claude Haiku (~$0.001 за диалог), booking-сценарии с tools — в GPT-4o или Claude Sonnet (~$0.02), классификация интента — в локальную Mistral 7B на собственном GPU. Снижение costs ~10× против варианта «всё в Sonnet», без падения качества пользовательского опыта.

4

RAG над знаниями салона

Векторный индекс на pgvector с BGE-M3 эмбеддингами поверх услуг, цен, описаний, политики отмены, профилей мастеров. Salon-aware фильтрация — клиент студии на Маяковской никогда не получит цены студии на Комендантском. Модель отвечает строго из подтверждённой базы и физически не может выдумать цену.

5

Безопасный tool-слой к YClients

Функции find_services, find_masters, find_slots, create_booking, cancel_booking, notify_admin — каждая обёрнута zod-валидацией входов и стандартизированным envelope { ok, data, audit } для полной прослеживаемости. Write-операции (бронь, отмена) требуют двухступенчатого подтверждения от пользователя — модель не создаёт запись без явного «да».

6

Эскалация в человека с готовым summary

При confidence <0.7 или явной просьбе клиента агент молча передаёт диалог администратору с готовым саммари: тема, тон, история сообщений, причина эскалации. Админ открывает чат уже в курсе — без потери контекста и без необходимости переспрашивать.

7

Reminders за 24 ч и 2 ч до визита

Отдельный воркер на cron берёт из YClients предстоящие визиты и шлёт personalized-напоминания тоном бренда. Если клиент отвечает «не приду» — агент автоматически отменяет запись в YClients и предлагает другую дату. 100% покрытие напоминаниями вместо ручного обзвона с пропусками.

8

Self-learning через few-shot evolution

Удачные диалоги (закончились бронированием с положительной оценкой) автоматически попадают в датасет примеров для системного промпта. Неудачные — в issue tracker с причиной. Раз в 2 недели обновляются эмбеддинги RAG. Качество растёт без классического fine-tune — стоимость прогона остаётся стоимостью одного промпта.

04 / Stack

На чём собрано

Технический стек показан как производственная схема: интерфейс, интеграции и инфраструктура поддерживают одну цепочку записи.

Runtime и архитектура

  • Node.js 22 + TypeScript strict
  • Микросервисная архитектура: 5 сервисов (channels, orchestrator, RAG, tools, reminders)
  • Docker + docker-compose для dev, Coolify для прод

LLM-стек

  • OpenAI SDK (GPT-4o, GPT-4o-mini)
  • Anthropic SDK (Claude Sonnet 4.5, Claude Haiku 4.5)
  • Google Gemini API
  • Локальная Mistral 7B через llama.cpp на собственном GPU
  • Кастомный router-слой с failover и cost-aware маршрутизацией

RAG и поиск

  • pgvector (Postgres extension) для векторного индекса
  • BGE-M3 для мультиязычных эмбеддингов
  • Кастомный chunking с учётом структуры документов салона
  • Re-ranking через cross-encoder для top-K результатов

Каналы

  • grammY (Telegram Bot API, long polling)
  • Telegram Mini App для in-app сценариев
  • HTTPS webhook на Express для прочих интеграций

Интеграции

  • YClients API — read + write (услуги, мастера, слоты, бронь, отмена)
  • Yandex.Метрика для event tracking диалогов и конверсий
  • Twilio как SMS-fallback при недоступности Telegram

Observability и безопасность

  • OpenTelemetry для distributed tracing
  • Prometheus + Grafana для метрик и дашбордов
  • Sentry для ошибок и алертов
  • PII-стиральная машина: телефоны/имена/email маскируются перед отправкой в LLM
  • Tool-allowlist + confirmation gates на write-операции
  • Rate limiting per user и per salon

Вопросы, которые чаще всего задают по проекту

Коротко по техническим и продуктовым решениям NailLounge.