У студентов ИТ-направлений дипломная работа состоит из двух частей: программный код и объемный теоретический текст, поясняющий его работу. Но из-за ошибок, спешки или смены архитектуры проекта описание функциональности иногда перестает соответствовать реализации. На защите преподаватели работают с «сырым» дипломом, а студент рискует получить не те вопросы, к которым готовился.

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

Команда университета адаптировала под задачи студентов свою предыдущую разработку — инструмент OSA (Open Source Advisor). Он проверял соответствие научных статей и приложенных к ним репозиториев (репозитории — это хранилище исходного кода проекта, рабочая составляющая, которую можно запустить и проверить). Исследователи увидели, что научные работы по своей сути похожи на дипломные работы. Так появилась версия инструмента для образования — OSA.Edu.

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

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

Во-вторых, оценивает соответствие текста и реализации в процентном соотношении. OSA.Edu извлекает из текста конкретные утверждения (например, «система реализует такой-то алгоритм») и ищет его физическое воплощение в коде. Процент соответствия показывает, сколько из заявленных в работе функций действительно работают. По словам команды, результат выше 70% можно считать очень хорошим, учитывая возможные ошибки модели. 

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

Какие задачи сможет решить инструмент

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

Для преподавателя большое расхождение между кодом и описанием — объективный «звоночек». На защите комиссии физически невозможно за 15 минут прочитать диплом и проверить код каждого студента. OSA.Edu позволяет преподавателю увидеть, есть ли серьезные внутренние противоречия, и задать уточняющие вопросы именно по слабым местам. При этом финальное решение остается за человеком — ИИ лишь подсказывает, куда посмотреть внимательнее.

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

В пилотном режиме команда разработчиков проверила с помощью OSA.Edu около 80 выпускных работ магистрантов факультета технологий искусственного интеллекта (ФТИИ) ИТМО. Итоги оказались показательны: от 0 до 10% соответствия у «сырых» проектов и до 80–90% соответствия у тех работ, где репозиторий привели в порядок. После анализа студенты получили отчет, составленный OSA.Edu, чтобы дополнить и исправить свои дипломы. 

«Конечно, можно использовать OSA.Edu как "злого надзирателя". Но мы за другой подход. Может быть, студент думал о старой архитектуре или просто забыл что-то обновить в тексте. Наша задача — автоматически выявить такие противоречия, чтобы он мог их поправить. Это инструмент-помощник, а не судья», ― говорит Андрей Гетманов, руководитель проекта, аспирант и младший научный сотрудник Института искусственного интеллекта Университета ИТМО.

Андрей Гетманов. Фото: Мила Маньшина

Андрей Гетманов. Фото: Мила Маньшина

Инструмент оказался полезен не только пользователям, но и самой команде. OSA.Edu создана на базе учебно-научной лаборатории Факультета технологий искусственного интеллекта AIST (Artificial Intelligence Science & Technology). В разработке участвовали не только опытные сотрудники, но и студенты, включая первокурсников. Для одних учащихся OSA.Edu стал частью исследовательской деятельности. Для других — полноценной работой с зарплатой и опытом разработки коммерчески потенциального продукта. 

Что дальше

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

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