Scientific journal
Scientific Review. Technical science
ISSN 2500-0799
ПИ №ФС77-57440

DEVELOPMENT OF AN AI ASSISTANT FOR PREPARATION FOR THE UNIFIED NATIONAL TESTING

Bashlykov R.V. 1 Makabaev M.K. 1 Klyueva E.G. 1 Kokkoz М.М. 1
1 Abylkas Saginov Karaganda Technical University
1316 KB
The purpose of the work: to develop an assistant based on artificial intelligence to support the preparation of students for the Unified National Testing of the Republic of Kazakhstan using the subject «Informatics» as an example. The study examined existing technologies for developing intelligent bots in order to identify their potential in personalizing the educational process. The article describes the choice of chatbot architecture, including a server part in Java using the Spring Boot and Hibernate frameworks, a PostgreSQL database, integration with the Assistants Application Programming Interface from OpenAI and implementation of the client part via Telegram. The features of the test in «Informatics» were determined, the structure of the question database was developed, and mechanisms for semantic analysis and query classification were implemented. During the development, the following results were obtained: a chatbot was created that provides testing with automatic assessment and explanation of errors, answers to questions within the educational area, and the provision of brief theoretical information. The effectiveness of using a generative model to support learning and monitor student progress is substantiated. The presented solution demonstrates the potential of artificial intelligence in improving the quality and individualization of applicants’ preparation for exams. The work can be expanded by replenishing the task database, improving analysis algorithms and adding new functions.
artificial intelligence
unified national testing
chatbot
assistant
personalized learning

Введение

Развитие цифровых технологий активно трансформирует образовательную сферу. Онлайн-обучение, интерактивные платформы и мультимедийные ресурсы делают процесс получения знаний более доступным и персонализированным. Искусственный интеллект (ИИ) занимает ключевую роль в этой трансформации, способствуя адаптивному обучению и автоматизации образовательных процессов. Примерами успешного применения ИИ в образовании являются такие продукты, как BlackBoard [1], Duolingo [2] и др.

В Казахстане вопросы цифровизации и внедрения ИИ активно обсуждаются на государственном уровне. Президент Касым-Жомарт Токаев в своем Послании народу Казахстана «Экономический курс Справедливого Казахстана» [3] уделил повышенное внимание вопросам цифровизации и внедрению инноваций, в том числе необходимости полноценного использования искусственного интеллекта для качественно нового рывка к экономике знаний.

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

Единое национальное тестирование – важнейший элемент образовательной системы Казахстана. Оно определяет доступ выпускников к высшему образованию. Совершенствование оценки знаний по профильным дисциплинам в рамках ЕНТ, включая применение технологий искусственного интеллекта (GPT-моделей), способствует повышению объективности анализа результатов пробных тестов и прогнозированию академических успехов абитуриентов в вузах.

Согласно статистике ЕНТ за 2024 г. [4], в нем приняли участие 181 тыс. абитуриентов со средним баллом 68. Для подготовки к экзамену Национальный центр тестирования публикует на своем сайте учебные материалы, типовые задания, списки литературы, терминологию и структуру теста. Однако использование современных технологий и, в частности, искусственного интеллекта позволит этому процессу стать более эффективным и удобным.

Третье место по количеству сдававших имеет комбинация предметов по выбору «Математика – Информатика» – почти 20 тыс. абитуриентов. Несмотря на то, что предмет «Информатика» был добавлен в ЕНТ только в 2022 г., он стал одним из самых популярных направлений для сдачи и дальнейшего поступления в вузы Республики Казахстан.

Содержание теста ЕНТ по информатике представлено на сайте Национального центра тестирования Республики Казахстан [5] и включает 6 разделов, охватывающих школьную программу по данному предмету: «Компьютерные системы», «Информационные процессы», «Компьютерное мышление», «Аппаратное и программное обеспечение», «Информационные процессы и системы», «Создание и преобразование информационных объектов».

Чат-бот – это программное обеспечение, которое взаимодействует с пользователями по определенной теме или в определенной области в естественной, разговорной манере, используя текст и/или голос и обеспечивая мгновенный ответ пользователю [6, 7]. Чат-боты могут мгновенно предоставлять обучающимся различного рода сведения: содержание учебной программы, задания и даты их выполнения, критерии оценки работ, учебные материалы, новости и информацию о мероприятиях. Эти системы могут не только повысить вовлеченность и поддержку обучающихся, но и существенно снизить количество административной и рутинной работы преподавателей, позволив им сосредоточиться на разработке учебных программ и подготовке к занятиям.

ИИ-ассистент – это программа с одной или несколькими нейросетями, предназначенная для решения конкретной задачи. Чаще всего такой ассистент выглядит как обычный чат-бот с текстовым или голосовым вводом. Примером ИИ-ассистента может служить инструментарий Assistants API от OpenAI и созданные с его помощью ассистенты.

Assistants позволяют создавать настраиваемые чат-боты с использованием контекста ChatGPT. Однако, в отличие от обычного GPTs, Assistants предназначены для разработчиков и не имеют пользовательского интерфейса, кроме площадки от OpenAI под названием Playground. OpenAI упростила процесс создания таких чат-ботов, позволяя разработчикам сосредоточиться на создании необходимого бота, а не на рутинной части работы.

missing image file

Рис. 1. Пример процесса работы ИИ-ассистента Источник: составлено авторами

API Assistants позволяет разработчикам создавать ассистентов, новые ветки и прикреплять сообщения к этим веткам. Файлы, загруженные в ассистента, помогают ему понимать, как реагировать на сообщения пользователей. Assistants также могут использовать различные инструменты и функции, такие как интерпретатор кода, который позволяет AI писать и выполнять код. Общий процесс работы подобного ассистента представлен на рис. 1.

Цель исследования – разработка ИИ-ассистента для подготовки к ЕНТ по предмету «Информатика», ориентированного на персонализированный подход и эффективное обучение.

Материалы и методы исследования

В рамках данной работы для разработки ассистента по подготовке к ЕНТ был выбран Assistants API. Для реализации серверной части приложения в виде RESTful API были выбраны язык программирования Java, фреймворк Spring Boot, СУБД PostgreSQL и фреймворк Hibernate для взаимодействия с базой данных. Для упрощения взаимодействия в API Assistants была выбрана библиотека от Microsoft – Azure OpenAI. Это облачная платформа, которая позволяет разработчикам и ученым в области данных быстро и легко строить и развертывать модели искусственного интеллекта.

В качестве клиентской части приложения, с которой будет взаимодействовать пользователь, используется Telegram-бот, разработанный с помощью Telegram Bot API.

Для систем с взаимодействием вида «вопрос – ответ», представителем которых является разрабатываемый чат-бот, классификация вопросов играет важную роль. Чтобы правильно ответить на вопрос, система ответа на него должна понимать тип информации, которую запрашивает пользователь, и различать, к какому типу она относится. Это помогает находить или создавать конкретные ответы, что повышает качество работы системы.

Такое взаимодействие используется в одной из функций чат-бота – ответы на вопросы или сообщения пользователя. Так как бот предназначен для подготовки к ЕНТ по информатике, он будет отвечать только на вопросы, связанные с данной областью.

Результаты исследования и их обсуждение

Обобщенный алгоритм работы чат-бота включает в себя следующее:

− на вход ассистенту приходит текст от пользователя;

− производится предварительная обработка текста: преобразование в нижний регистр, удаление лишних знаков препинания и токенизация текста;

− производится семантический анализ текста, в процессе которого происходит поиск ключевых терминов данной области знаний (в данном случае информатики). Нахождение слов и словосочетаний, подобных «Python», «класс», «VPN», «оперативная память», повышает вероятность отношения пользовательского запроса к области знаний. Если после этого не удалось однозначно определить тематику вопроса, производится анализ контекста сообщения с помощью, встроенной в ассистента LLM;

− далее происходит принятие решения и либо генерация ответа на пользовательский вопрос, либо отказ в ответе из-за его несоответствия области знаний ассистента.

Вторая функция чат-бота – прохождение тестирования в виде, приближенном к виду ЕНТ-теста, с оценкой ответов и их объяснением, представленном в виде кратких теоретических материалов.

Процесс работы данной функции выглядит следующим образом:

1. Пользователь с помощью клиента (Telegram-бот), после выбора темы для теста, получает от сервера (RESTful API) тестовые вопросы и начинает на них отвечать.

2. Во время тестирования на клиенте сохраняются ответы пользователя.

3. После окончания тестирования формируется JSON-массив Q с элементами qi, где каждый элемент представляет собой тестовый вопрос и содержит:

− qi.question – текст вопроса;

− qi.options – список возможных ответов;

− qi.correctOption – правильный вариант ответа;

− qi.selectedOption – выбранный пользователем вариант.

Множество Q делится на 2 подмножества. Подмножество QC – подмножество, содержащее вопросы с корректными ответами:

missing image file.

Подмножество QE – подмножество, содержащее вопросы с ошибочными ответами:

missing image file.

missing image file

Рис. 2. Sequence диаграмма работы чат-бота Источник: составлено авторами

Помимо вопросов, в JSON добавляется метаинформация, с помощью которой ИИ-ассистент сможет сразу определить, что ему необходимо делать.

4. Передача пакета с JSON ИИ-ассистенту, работающему с предустановленной промпт-стратегией.

5. ИИ-ассистент дает ответ R, который разбирается на структурированные элементы:

missing image file,

где каждый ri соответствует вопросу missing image file и содержит:

− ri.explanation – разбор ошибки и объяснение правильного ответа;

− ri.theory – краткий теоретический материал, относящийся к теме вопроса.

6. Создается аннотированное множество:

missing image file.

7. Если множество ошибок QE пустое – ИИ-ассистент отправляет сообщение о корректном выполнении теста. В противном случае создается документ Rf, содержащий разделы с разбором каждого вопроса из QE: вопрос, анализ ошибки, теоретическое пояснение.

8. Отчет Rf отправляется пользователю.

Функциональность разработанного приложения включает:

− прохождение тестирования по выбранной теме предмета «Информатика»;

− получение объяснений и теоретических материалов на основе анализа ответов пользователя;

missing image file

Рис. 3. Процесс прохождения тестирования Источник: составлено авторами

missing image file

Рис. 4. Вопрос ИИ-ассистенту и его ответ Источник: составлено авторами

− ответы на вопросы пользователя, связанные с областью предмета «Информатика»;

− просмотр истории попыток тестирований.

Sequence диаграмма, показывающая порядок взаимодействия элементов приложения, представлена на рис. 2.

Пользователь взаимодействует с ботом посредством команд, кнопок и текстовых сообщений. Согласно диаграмме последовательности работы чат-бота (рис. 2), на данный момент у бота имеется 4 команды:

− /start – для начала использования бота и перехода в главное меню при необходимости. С помощью данной команды пользователь регистрируется в чат-боте;

− /test – для начала тестирования. Происходит выбор темы тестирования и какой-то одной подтемы, по желанию пользователя, либо по всем подтемам выбранной темы. Далее происходит само тестирование. На данном этапе пользователь взаимодействует с ботом при помощи кнопок, которые содержат названия тем, подтем и варианты ответов на тестовые вопросы (рис. 3);

− /results – для просмотра истории попыток тестирований;

− /ask – для отправки вопроса ИИ-ассистенту. Здесь взаимодействие происходит в виде обмена сообщениями (рис. 4).

Согласно классификации чат-ботов [8], данный чат-бот является генеративным, так как использует нейронные сети для анализа и выдачи ответов, по внешнему виду совмещает в себе кнопочный и текстовый чат-бот, по функционалу совмещает возможности коммуникационных (позволяет общаться с собой) и функциональных (позволяет проходить тестирование для подготовки к ЕНТ) чат-ботов.

Чат-бот имеет педагогическую направленность [9], так как он содействует обучению, предоставляя возможность получения ответов на вопросы, прохождения тестов и хранения их результатов, что позволяет учащимся отслеживать свой прогресс [6].

Заключение

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

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

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