Банки.ру с помощью YandexGPT создали чат-бота для поиска по базе знаний

09.06.2025
Российская финансовая платформа онлайн‑сервисов Банки.ру разработала чат‑бота на базе YandexGPT, чтобы упростить доступ к внутренней базе знаний. Решение оказалось таким эффективным, что компания решила запустить его и для внешних пользователей.

У компании большая база знаний — 135 ГБ данных, которая пополняется на 1,5 ГБ в неделю. В ней более 630 тыс. страниц текста. Поиск по базе работал по точному совпадению слов и плохо справлялся с синонимами. Чтобы упростить доступ к корпоративным знаниям, в компании решили создать чат-бота с искусственным интеллектом. Банки.ру давно использует облачную инфраструктуру, поэтому новый проект тоже решили развернуть там.

Банки.ру сотрудничает с Yandex Cloud, например, часть данных хранится в Yandex Managed Service for Greenplum. Поэтому разместить чат-бота на той же платформе было логичным шагом. Команда разработки учитывала, что в облаке легко развернуть решение, масштабировать проект и управлять расходами. Кроме того, важным критерием была скорость ответа сервиса. У YandexGPT время ответа составило 1,3 секунды, что соответствовало требованиям компании.

Изначально чат бот Банки.ру создавался как пет проект для коллег и воспринимался как эксперимент. Его протестировали около 300 сотрудников, после чего команда решила доработать решение и открыть доступ внешним пользователям.

Всю разработку чат бота команда Банки.ру провела самостоятельно за 37 дней при консультационной поддержке Yandex Cloud. Причем приблизительно 60% времени заняла очистка материалов Вики. Чат бот спроектирован как отдельное решение и интегрирован с корпоративным мессенджером Slack и Вики Банки.ру, которую разместили во внешнем ЦОД. Бот написан на PHP, а модуль вопросов и ответов Q&A service — на Python.

Команда развернула кластер Yandex Managed Service for Kubernetes для Docker контейнеров с сервисами и их оркестрации. Для извлечения и обработки данных из Вики и их сохранения в векторном виде в Yandex Managed Service for PostgreSQL команда использовала Apache Airflow. Там же настроили DAG (направленный ациклический граф), работающий по расписанию и обновляющий данные в базе.

Пользователь формулирует запрос, который по REST API отправляется в модуль Q&A service. Этот сервис обращается к базе данных Redis, где хранится кратковременная история предыдущего общения с клиентом, и одновременно — к YandexGPT, чтобы определить тему запроса и преобразовать его в эмбеддинг. Затем Q&A service обращается к Yandex Managed Service for OpenSearch, который находит релевантные документы в Managed Service for PostgreSQL с векторными данными из Вики.

Затем формируется промт: он включает вопрос пользователя, найденные фрагменты из базы знаний (в виде текста) и, при необходимости, контекст из Redis. Этот промт отправляется в YandexGPT, который генерирует финальный человекочитаемый ответ.

Команда существенно упростила и ускорила поиск информации в корпоративной базе знаний. Раньше сотрудники тратили на это от получаса до часа, а иногда приходилось обращаться к владельцу информации за помощью. Сейчас ответ на запрос приходит меньше чем за 1,3 секунды.

Чат бот Банки.ру запущен в тестовую эксплуатацию, команда планирует запустить его для внешних пользователей в приложении Банки.ру — под названием «Финансовый ассистент».

Компания планирует ввести классификатор тем, чтобы повысить точность ответов. Это стало актуально из за частых совпадений формулировок вопросов, относящихся к разным темам. Кроме того, сейчас команда начала разработку сервиса, который будет находить сгенерированные с помощью ИИ отзывы или некорректную информацию. В этом решении также планируют использовать YandexGPT.

Похожие статьи