Труды КНЦ (Технические науки вып. 3/2024(15))
от указанных выше и, по сути, признанных в веб-разработке стандартом де-факто, построен на языке Python и имеет открытый исходный код. Streamlit позволяет создавать быстрые прототипы динамических приложений, в том числе для работы с большими данными. На текущем этапе разработки применение данного фреймворка более чем оправдано, т. к. он широко используется исследователями, специалистами по обработке данных и инженерами в области искусственного интеллекта и машинного обучения. Это связано с тем, что самым популярным инструментом решения подобных задач является язык Python. Однако дальнейшее развитие данного проекта предусматривает плановый переход от прототипной реализации фронтенда к более профессиональному варианту на основе фреймворка V uejs, успешный опыт применения которого был представлен авторами в работе [23]. Другим направлением является использование данной системы в качестве экспериментального стенда для проведения разнопланового тестирования и изучения эффективности применения больших языковых моделей на практике. Для удобства работы в этом режиме в системе дополнительно реализован альтернативный пользовательский интерфейс. Этот вариант интерфейса предоставляет пользователю возможность работать с системой как настольным приложением. Пользовательский интерфейс настольного приложения реализован на основе кроссплатформенной библиотеки Tkinter. Этот вид интерфейса, по сравнению с веб-вариантом, использует менее выразительные средства (см. рисунки в разделе «Эксперименты»: рис. 13-15). Однако его преимуществом является возможность оперативного и непосредственного взаимодействия пользователя-оператора с программным кодом компонентов системы. Такой подход дает возможность максимально задействовать потенциал хорошо зарекомендовавшего себя в научных исследованиях языка программирования Python, находить новые варианты использования системы, оперативно тестировать экспериментальные решения. Полученные здесь результаты в дальнейшем используются для оптимизации, улучшения и расширения возможностей веб-версии системы. Эксперименты Для подготовки вариантов проблемно-ориентированного контекста, с которым должна работать система, реализован многоступенчатый процесс, состоящий из следующих этапов. Загрузка и считывание документа. Для загрузки содержимого файла используется модуль UnstructuredWordDocumentLoader [29] из библиотеки langchaincommunity.documentloaders. Данный модуль имеет несколько режимов настройки загрузки документов. Разбиение документа. Метод langchain load and split разделяет документ на части. Метод применяется для упрощения обработки, разбивая его на более управляемые блоки. В данном случае используется разделитель RecursiveCharacterTextSplitter [30] для разбиения документов. Разбиение документа дает возможность более простого анализа больших документов и особенно полезен для выделения содержимого таблиц и других структурированных данных. Создание векторного представления. На этом этапе происходит работа методов класса YandexGPTEmbeddings, который отвечает за эмбеддинг, т. е.преобразование текста в векторные представления. Создание векторного хранилища. При использовании библиотеки FAISS происходит создание векторного хранилища. На этом этапе обрабатываются фрагментированные документы и их эмбеддингов, а также создается индекс для облегчения дальнейшего поиска по тексту. Варьирование загружаемого контекста позволяет исследовать особенности генерации системой ответов в зависимости как от структуры контекста, так и формулировки запросов. Анализ качества генерации ответов на пользовательские запросы Для исследования работы чат-бота на основе модели YandexGPT 3 Lite был проведен эксперимент, в ходе которого пользователи производили запросы и ставили оценки «отлично», «средне», «плохо» полученным ответам. В качестве контекста было использовано руководство пользователя многофункциональной программной системы инженерного моделирования. Труды Кольского научного центра РАН. Серия: Технические науки. 2024. Т. 15, № 3. С. 5-26. Transactions of the Kola Science Centre of RAS. Series: Engineering Sciences. 2024. Vol. 15, No. 3. P. 5-26. 18 © Олейник А. Г., Федоров А. М., Датьев И. О., Зуенко А. А., Шестаков А. А., Вишняков И. Г., 2024
Made with FlippingBook
RkJQdWJsaXNoZXIy MTUzNzYz