НГУ запустил в облаке чат-бота с LLM для поиска ответов по базе знаний университета

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

НГУ запустил в облаке чат-бота с LLM для поиска ответов по базе знаний университета

Привет, мы — Cloud.ru, провайдер облачных сервисов и AI-технологий. Делимся кейсом с Новосибирским государственным университетом, которому были нужны облачные GPU, чтобы обучить языковую модель для чат-бота.

Задача, с которой пришел клиент

Новосибирский государственный университет — пример эффективной интеграции образовательного процесса и научной деятельности. На механико-математическом факультете НГУ работает лаборатория прикладных цифровых технологий, в которой преподаватели и студенты создают разработки на базе искусственного интеллекта. У лаборатории уже был опыт работы с языковыми моделями. Новым проектом стал умный чат-бот в Telegram с LLM, который сократить до нескольких секунд поиск информации в базе знаний университета.

Чат-бот должен решить несколько задач:

  • разгрузить сотрудников университета: быстрее находить ответы и обрабатывать заявки от студентов и коллег,
  • привлекать абитуриентов: быстрее находить информацию о поступлении, обучению в университете, кампусе или преподавательском составе,
  • перевести поиск по базе знаний в одно место: вся информация в TG-канале, а не разных разделах сайта.

Сотрудники лаборатории принципиально решили собирать свою модель конкретно под задачи университета, а не брать готовую Chat GPT, например. Плюс решения в том, что собственная модель позволяет использовать в обучении чувствительные данные без маскинга и опасений, что информация попадет не в те руки. Второй момент — модель должна отвечать вежливо и учитывать российские, а не зарубежные реалии.

Какие были требования к облаку

Для размещения языковых моделей в облаке разработчикам чат-бота была нужна виртуальная машина с GPU. Два других важных ожидания:

  • масштабирование ресурсов в моменте, когда нагрузка на бот кратно растет, например в день открытых дверей, начале приемной кампании или во время олимпиад;
  • оплата по модели pay-as-you-go, чтобы тратить бюджет только на реально используемые ресурсы.

Нам было важно, чтобы работа в консоли была простой и удобной — мы занимаемся проектом чисто научной командой и не могли выделить отдельного технического специалиста, который взял бы на себя настройку сложной инфраструктуры.

Роман Дерунец разработчик-исследователь

Как построили архитектуру чат-бота в облаке

Сотрудники лаборатории самостоятельно развернули виртуальную машину с GPU 4 vCPU/64 ГБ RAM/1 GPU V100, разместили на ней языковые модели и подключили базу данных. В БД собрана вся информация про университет: расписание вступительных экзаменов, описание факультетов, фотографии с мероприятий, закрытые сведения, которые нужны для внутренней работы.

Модель, которая лежит в основе чат-бота, — та самая собственной разработки — это большая языковая модель Meno-Tiny с 1,5 млрд параметров. Из всех русскоязычных моделей с аналогичным числом параметров она занимает первое место в бенчмарке МЕРА как инструкционная модель. Meno-Tiny генерирует ответ, может переформулировать пользовательский запрос и умеет отслеживать контекст. Более того, модель запоминает диалог и знает, какой фрагмент запроса ей нужно заменить, чтобы найти ответ в базе данных.

Вместе с большой моделью на виртуальной машине развернули несколько эмбеддеров. Их архитектура построена по-другому: они переводят запросы и тексты из базы знаний в векторы. Когда поступает запрос от пользователя, эмбеддер переводит его в вектор и сравнивает с векторами из БД, чтобы найти релевантный фрагмент из базы знаний — так происходит семантический поиск.

Какой получили результат

Чат-боты — не новая технология, но раньше они работали по заранее заготовленным интентам и ответам для них. Для пользователя это не очень удобно: шаг в сторону от заготовленного интента, и модель ничего не выдаст. В векторных базах данных можно вести поиск не по точным совпадениям, а по смыслам, то есть производить семантический поиск. В таком случае заранее заготовленные интенты не нужны, и модель может более гибко обрабатывать запросы пользователей.

Также чат-бот способен определить, является ли запрос или ответ токсичным. Для этого специалисты НГУ задействуют вспомогательные модели и цепочки вызовов основной модели. А чтобы поддерживать актуальность, к разделам БД они добавили даты. После дополнительной сортировки модель сможет отделять актуальное от неактуального и выдавать пользователю только свежую информацию.

Ответ модели занимает буквально пару секунд. Сервис проводит анализ источников и выдает конкретный ответ, а также прикладывает источники, на которых базируется ответ. Теперь не придется заходить в базу знаний университета, чтобы уточнить информацию и корректно и быстро ответить на заявку.

Предеин Сергей Александрович, начальник отдела сопровождения рабочих мест
В университете большая база фотографий, которые маркетологи используют в социальных сетях НГУ. Искать иллюстрации вручную долго, а с чат-ботом надо просто ввести запрос и он быстро предложит максимально подходящие фотографии
В университете большая база фотографий, которые маркетологи используют в социальных сетях НГУ. Искать иллюстрации вручную долго, а с чат-ботом надо просто ввести запрос и он быстро предложит максимально подходящие фотографии

Советы для тех, кто тоже хочет развернуть свой чат-бот с языковой моделью

Нюансов много: нужно подумать и об архитектуре проекта, и о том, как будет выстроена командная работа. Что рекомендуют сотрудники научной лаборатории НГУ, исходя из их опыта:

Первый совет: продумать архитектуру бота, быть готовыми перенастроить ее в процессе. Надо уделить большое внимание тому, как в работу встроены базы данных, LLM и эмбеддеры, как они взаимодействуют, в одном или в разных контейнерах находятся модель и сам бот. Предусмотреть, как будут обновляться базы данных, какой контекст из них модель будет подтягивать для ответов.

Отдельно стоит подумать о масштабировании, как модель будет справляться с пиковыми нагрузками. Лучше продумать как можно больше на этапе разработки, чем потом переписывать и рефакторить большую часть проекта.

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

Третий совет: организовать грамотный менеджмент проекта. Чат-бот делала команда студентов и преподавателей университета: у всех разная занятость и разный опыт. Обязательно должен быть трекер и человек, который следит за процессами, но не душит людей контролем.

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

Стратегия «пробовать новое + использовать существующее» позволила не утонуть в разработке всего с нуля, взять лучшее из доступного и создать мощные уникальные компоненты конкретно под наши задачи.

Чат-бот в Telegram Новосибирского государственного университета впервые презентовали на AINL-2025 — восточноевропейской конференции по искусственному интеллекту и обработке языков. Сейчас он доступен в тестовом режиме, если среди читателей есть абитуриенты, студенты или люди, интересующиеся темой языковых моделей, — заходите поспрашивать чат-бота.

Как считаете вы — полезен ли для вуза такой чат-бот? Хотели бы внедрить аналогичное решение у себя?

1