Клиент — интернет-магазин электроники (B2C, ~15 000 заказов в месяц). Поддержка из шести операторов не справлялась в пиковые часы: очередь в онлайн-чате до 40 минут, одни и те же вопросы про статус заказа, возврат и гарантию. NPS падал из‑за долгого ожидания первого ответа. Задача: AI-агент первой линии на сайте — отвечает по базе знаний и данным заказа, при сложном кейсе передаёт оператору с полным контекстом. Без обещаний компенсаций, без доступа к платёжным данным и без «выдуманных» статусов. Реализация: • виджет чата (JS): WebSocket, история сессии, кнопка «Оператор», мобильная вёрстка; • оркестратор агента: классификация намерения → RAG по FAQ → запрос статуса в OMS API → ответ или эскалация; • guardrails: стоп-темы (юридические претензии, chargeback), лимит сообщений, проверка тона; • RAG: инструкции, политика возврата, FAQ; цитаты источника в карточке для оператора; • эскалация: тикет в helpdesk с транскриптом, тегами и черновиком ответа; • админка: правка промптов, просмотр диалогов, метрики deflection rate и CSAT; • A/B-тест: агент vs только оператор на 10% трафика до полного rollout. Стек: Python 3.11, FastAPI, LangChain, PostgreSQL, Redis, OpenAI API, WebSocket, Docker, VPS. Документация для саппорта: когда эскалировать вручную. Приёмка: 30 сценариев из чек-листа QA. Итог: ~55% обращений закрывается без оператора; среднее время первого ответа — секунды вместо 15–40 минут ожидания. NDA: магазин не публикуется.