Директор Института информационных технологий и интеллектуальных систем Казанского федерального университета Михаил Абрамский принял участие в Международной ИТ-конференции «Стачка» в Ульяновске, где представил результаты своего эксперимента в докладе «LLM в обучении программированию и разработке: ПО-идентифицированные риски и результаты экспериментов».
Выступление было посвящено результатам исследований и экспериментов по использованию ИИ-ассистентов в разработке ПО, проводившихся сотрудниками и студентами лаборатории Smart Education Lab ИТИС в 2024–2025 гг. Часть доклада касалась экспериментов по оценке влияния использования ИИ-ассистента на эффективность написания кода разработчиком и его качество.
«Если коротко, основной результат более менее предсказуем – те, кто использовал GitHub Copilot, потратили меньше времени на написание решения, а их решение прошло вдвое большее количество тестов. При этом стоит отметить, что не идентифицировано существенного отличия качества кода, сгенерированного ИИ-ассистентом, и кода, написанного опытным разработчиком уровня Junior Plus/Middle Minus», – подытожил Михаил Абрамский.
Другая часть выступления была посвящена более свежим результатам по динамике использования ИИ-ассистентов индустрией разработки ПО. Опрос разработчиков ИТ-компаний показал, что большинство из них стабильно прибегают к помощи ИИ несколько раз в неделю, и иногда это позволяет «выиграть время». Самый популярный класс задач, где активно используются ИИ-ассистенты, – это улучшение существующего функционала. Далее по популярности – создание нового функционала, рефакторинг, генерация документации, тестирование.
Согласно статистике проведенного эксперимента, пока что явное обсуждение политики использования ИИ-ассистентов в решении рабочих задач не является повсеместной практикой. Также пока не наблюдается существенного изменения в практике оценки трудоемкости задачи, хотя в ряде компаний некоторые изменения по этой части были внесены в политику оценки времени выполнения задачи.
«Если усреднить, по результатам опроса представителей индустрии, использование ИИ сокращает время выполнения задач чаще всего на 25 процентов, при этом политики Code Review (проверки кода перед релизом) пока остаются неизменными. Кстати, доверие к коду партнеров по команде из-за использования ИИ-ассистентов снизилось, но незначительно», – рассказал директор ИТИС.
Но если для индустрии разработки использование нейросети может увеличить производительность, то для обучения программированию это может стать большим вызовом, и результаты здесь пока не ясны. В зоне риска «середнячки» – не двоечники, не отличники. В ряде случаев наблюдается практически «зависимость» от нейросетей. Обучающие, начинавшие использовать ИИ еще в школе для поиска информации, объяснения кода, подготовки к ЕГЭ, постепенно начинают активно использовать его для генерации кода, сталкиваясь с большим объемом задач на первом курсе. При этом такие студенты понимают, что их будут проверять, не копируют, а переписывают код, стараясь разобраться в нем, задать уточняющие вопросы нейросети. В таком случае преподавателю достаточно сложно разглядеть, что решение несамостоятельно, – студент осознанно отвечает на вопросы по коду, по структуре программы.
«Для данного типа студентов генерация кода постепенно превращается в практику, что снижает ряд базовых навыков, которые индустрия ждет от приходящих трудоустраиваться разработчиков. Да, коллеги из ИТ-сферы говорят "ну вот просто такие навыки теперь, надо подстраиваться", но на вопрос «готовы ли они принять на работу программистом сотрудника, который при отличных теоретических знаниях базовые алгоритмы может написать только с помощью нейросетей», все же отвечают отрицательно», – объяснил он.
Подобная «зависимость от ChatGPT» действительно уже существует как проблема. Но, по словам директора ИТИС, есть и «лечение». Поможет временный отказ от инструментов генерации кода для обучения базовому программированию, стимулирование у студентов способности к проектированию решения без ИИ, отказ от оценивания домашних работ и, как ни странно, переход к полностью «бумажным» экзаменам. При этом важно найти баланс использования нейросетей, поскольку нужно вовремя переключить студента в режим «а теперь активно используй нейросети, они нужны тебе для работы», чтобы студент не терял конкурентоспособность на рынке.