Труды КНЦ (Технические науки вып. 3/2024(15))

Труды Кольского научного центра РАН. Серия: Технические науки. 2024. Т. 15, № 3. С. 5-26. Transactions of the Kola Science Centre of RA s . Series: Engineering Sciences. 2024. Vol. 15, No. 3. P. 5-26. в системе используется один докер-компонент, который построен на основе последней версии образа контейнера “langchain/langchain” из репозитория dockerhub. Докеризация позволяет эффективно управлять ресурсами в процессе разработки, гибко разворачивать компоненты проекта в различные рабочие конфигурации, а также масштабировать и планировать дальнейшее развитие полученного решения. Рис. 2. Архитектура разработанной системы (UML-диаграмма развертывания) Логически система разделена на два компонента. Реализующий бизнес-логику компонент (серверная часть, бэкенд) выполнен в виде библиотеки на языке Python 3. С помощью функций этой библиотеки производятся подготовка всех необходимых структур данных и обращения к языковой модели YandexGPT. Для обеспечения более универсального обращения к выбранной языковой модели и к ее аналогам используется библиотека LangChain, все необходимые компоненты которой предустановлены в используемом образе контейнера. Технология RAG реализуется через использование локальной векторной базы данных FAISS, компоненты которой размещаются в файловой системе докера. Вторая составляющая системы — это пользовательский веб-интерфейс (фронтенд), также выполненный на языке Python 3 на основе фреймворка Streamlit [26]. Использование языка Python и для бизнес-логики, и для веб-интерфейса позволило естественным образом соединить два этих компонента. Библиотека для работы с языковой моделью импортирована в основной программный модуль, в котором в виде веб-интерфейсов реализована общая логика работы системы. Дополнительно в разделе «Разработка пользовательского интерфейса» дано описание альтернативной версии интерфейса, разработанной для специального режима запуска системы в формате настольного приложения. Принципы реализации основных функциональных элементов системы К основным функциям серверной части системы относятся: 1) загрузка документов в базу данных и 2) обращение к языковой модели для получения ответа на вопрос. © Олейник А. Г., Федоров А. М., Датьев И. О., Зуенко А. А., Шестаков А. А., Вишняков И. Г., 2024 11

RkJQdWJsaXNoZXIy MTUzNzYz