Представьте: пользователь заходит на сайт банка. Ему нужно уточнить условия займа или проконсультироваться по пакету услуг. Он открывает чат и начинает диалог с ботом: нейросеть отвечает мгновенно, подсказывает нужные разделы, помогает сориентироваться. Но если вопрос выходит за рамки сценария, то тут же подключается живой оператор. Без зависаний, без перезагрузок – разговор продолжается с того же места, с учётом всей истории.
Мы в NooSoft собрали такого онлайн-помощника с AI и администратором, построенный на Django Channels и WebSocket. Сейчас расскажем подробнее про него.
В NooSoft обратился один из ведущих банков с запросом на разработку быстрого и современного чата. Требование – мгновенный обмен сообщениями и высокая доступность. В качестве первого собеседника планировалось использовать нейросеть с возможностью оперативного подключения администратора, если бот не справляется с вопросом пользователя.
Решение реализовывалось как пилотный pet-проект отдельно от цифровой инфраструктуры банка. Это позволило команде экспериментировать с архитектурой, стеком и логикой взаимодействия. На первом этапе основной задачей было протестировать, как будет работать связка ИИ и живого оператор в “боевых” условиях.
Чтобы создать виртуального ассистента с мгновенным откликом и поддержкой переключения между ботом и оператором, мы выбрали стек, ориентированный на исполнение операций в режиме реального времени.
В качестве основы взяли Django Channels, которые расширяют стандартный функционал Django и дают доступ к нативной работе с WebSocket. Это ключевой момент, поскольку альтернативы вроде Short или Long polling были недостаточно быстрыми и не обеспечивали стабильную двустороннюю связь.
Отдельный WebSocket route отвечает за подключение оператора, если нейросеть не могла ответить на вопрос. При этом один и тот же чат мог в нужный момент переключаться с AI на человека и обратно без перерыва в общении и с сохранением контекста.
В качестве AI-модели использовали GigaChat – отечественную нейросеть, способную поддерживать деловую переписку, анализировать формулировки и выдавать осмысленные ответы на банковские темы. Для интеграции с моделью мы реализовали свой микросервис, обрабатывающий запросы и возвращающий результат в рамках единой логики.
Несмотря на то, что проект кажется достаточно простым, он скрывал подводные камни. Впрочем как и любой другой кейс. Но мы за честность без прикрас, поэтому приоткроем ширму и расскажем о трудностях, про которые принято молчать.
«Ошибки чаще всего возникали на стыке AI и оператора – в момент, когда оба пытались ответить. Эти нюансы и сделали проект особенно интересным», – делится программист.
Логика бота строится на простом, но гибком алгоритме: сначала нейросеть, затем человек (если требуется).
Пользователь начинает диалог, и первым отвечает GigaChat – интеграция с этой моделью позволяет быстро обрабатывать стандартные запросы. Но если бот не справляется, предусмотрен плавный переход на оператора через отдельный WebSocket-маршрут.
Администратор получает уведомление и может «захватить» сеанс общения. При этом чат автоматически пропадает у других работников, чтобы избежать конфликтов.
Если текущий человек перегружен, то поток переназначается другому – это специально предусмотрено в функционале.
Хотя бот не обучается в процессе общения, всё сохраняется, формируя полную историю взаимодействий, что в дальнейшем станет основой для аналитики или адаптации под конкретные бизнес-процессы.
Дополнительно реализованы уведомления в формате toast-сообщений, чтобы операторы не пропустили новые обращения или смену их статуса.
Чтобы понять, как устроен чат, достаточно пройти путь пользователя. Он максимально простой и бесшовный:
Пользователь не ощущает переключения между ботом и человеком, всё происходит в том же потоковом канале. Нет потери времени: WebSocket обеспечивает мгновенную передачу сообщений. Можно перевести чат другому оператору, если текущий перегружен.
Проект задумывался как тестовый MVP, поэтому до полноценного внедрения в инфраструктуру банка дело не дошло. Однако внутренние тесты показали, что связка “WebSocket + GigaChat + живая поддержка” работает стабильно и гибко.
С базовым функционалом мы добились главного:
Объёма MVP достаточно, чтобы оперативно адаптировать решение под конкретные бизнес-процессы: финтех, поддержку клиентов, автоиндустрию, госуслуги и т.д.
Разработка проводилась как отдельный pet-проект, но при масштабировании и использовании репликаций, Redis pub/sub и распределённой обработки, система может показать отличную производительность в продакшене.
Коммуникация с клиентом – один из самых уязвимых и дорогих процессов. Без задержек ответить, понять суть запроса, не потерять лояльность – задача, неподвластная шаблонным ботам. Именно поэтому мы заложили в проект двухуровневую логику: сначала ИИ, потом человек.
Что даёт бизнесу такое решение:
Такой инструмент общения – это управляемый канал связи, в котором каждая секунда, каждый ответ и каждая реакция работают на лояльность клиента.
Гибкий чат с нейросетью и возможностью подключить оператора – универсальный инструмент для бизнеса, где важны скорость, качество и контроль коммуникации.
Особенно полезен там, где:
Решение подходит тем, кто хочет совместить автоматизацию и человеческое общение с клиентом, но при этом не зависеть от сторонних платформ.
Где можно применять:
Текущий MVP уже закрывает ключевые задачи, но у него есть большой потенциал для масштабирования в полноценную систему.
Команде NooSoft проект запомнился множеством нестандартных решений, спонтанных «затыков» и, конечно, моментами, когда очередная попытка улучшить алгоритм и усовершенствовать работу бота наконец даёт свои плоды. Возможность динамически передавать чаты между операторами, управление уведомлениями, борьба с конкурентными ответами от AI и человека – всё это делало разработку похожей на архитектурную головоломку.
Мы в NooSoft умеем быстро собирать AI-решения – от идеи до рабочей версии. Если вам нужен кастомный продукт или AI-интеграция – напишите нам. Обсудим за 30 минут.