03/09/2026

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

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

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

«Мы использовали метод обучения с подкреплением, чтобы научить модель избегать типичных недостатков в дизайне тестов и тем самым повысить качество автоматически создаваемых решений», – сообщил доцент кафедры алгоритмических языков факультета ВМК МГУ Игорь Головин.

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

Источник: msu.ru