ВМК МГУ
Опубликовано на ВМК МГУ (https://cs.msu.ru)

Главная > В МГУ предложили способ улучшить структуру тестов, создаваемых ИИ

В МГУ предложили способ улучшить структуру тестов, создаваемых ИИ

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

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

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

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

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

Результаты работы были представлены на научной конференции «Ломоносовские чтения».


Источник:https://cs.msu.ru/news/4469