Проблема оценки ИИ-программистов: почему бенчмарк SWE-Bench Pro признан ненадежным

Исследование показало, что около 30% задач в популярном тесте для ИИ-моделей содержат ошибки. Это ставит под сомнение текущие метрики прогресса в автоматизированном программировании.

Обновлено:
3 мин чтения
Проблема оценки ИИ-программистов: почему бенчмарк SWE-Bench Pro признан ненадежным

Суть

Исследователи провели детальный аудит SWE-Bench Pro — одного из самых популярных наборов данных для оценки способностей искусственного интеллекта к программированию. Результаты оказались неутешительными: около 30% задач в бенчмарке содержат критические ошибки, которые делают невозможной объективную оценку моделей. В связи с этим исследователи отзывают свою прежнюю рекомендацию использовать SWE-Bench Pro в качестве стандарта для индустрии.

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

Контекст

Ранее индустрия опиралась на SWE-bench Verified, но после обнаружения в нем проблем с дизайном и утечкой данных (контаминацией), сообществу было предложено перейти на SWE-Bench Pro. Этот обновленный бенчмарк должен был тестировать модели на более длинных горизонтах планирования и более реалистичных задачах, чтобы лучше отслеживать агентные возможности ИИ.

Introducing GeneBench-Pro > Cover image

Introducing GeneBench-Pro > Cover image

Задачи для этих тестов собираются программным путем из истории изменений в публичных и приватных репозиториях. Модель должна написать код, который проходит новые тесты для добавленной функции, не ломая при этом существующий функционал. На публичной выборке из 731 задачи передовые модели показали впечатляющий скачок: уровень успешного решения вырос с 23,3% до 80,3% всего за восемь месяцев. Однако новый аудит заставляет задуматься, насколько этот прогресс отражает реальность.

Детали

Для проверки качества данных был создан сложный многоступенчатый конвейер (пайплайн). Сначала автоматизированный фильтр проанализировал инструкции, попытки моделей решить задачу и тесты, используемые для оценки. Фильтр пометил 286 задач как потенциально проблемные.

Затем эти задачи прошли двойную проверку. Первая — с использованием ИИ-агентов на базе модели Codex, которые пытались отличить допустимую неоднозначность задачи от реальной нехватки данных. Вторая — масштабная кампания с участием опытных инженеров-программистов. Каждую подозрительную задачу независимо оценивали пять специалистов.

Автоматизированная система выявила 200 сломанных задач (27,4%), а люди-разметчики нашли еще больше — 249 задач (34,1%).

Ошибки разделились на четыре основные категории:

  1. Слишком строгие тесты. Они требуют конкретных деталей реализации, о которых ничего не сказано в задании, из-за чего функционально правильные решения бракуются.
  2. Недостаточно детализированные запросы (промпты). В них отсутствуют требования, которые проверяются скрытыми тестами и которые невозможно логически вывести из контекста.
  3. Тесты с низким покрытием. Они недостаточно тщательно проверяют запрошенную функцию, позволяя неполным решениям получать статус успешных.
  4. Вводящие в заблуждение инструкции. Они направляют модель к неправильному поведению или прямо противоречат тому, что требуют тесты.
A near-autonomous AI chemist improves a challenging reaction

A near-autonomous AI chemist improves a challenging reaction

Анализ

Эти результаты вскрывают фундаментальную проблему текущего подхода к созданию бенчмарков. Задачи (issues) и запросы на слияние (pull requests) из проектов с открытым исходным кодом изначально создавались для совместной работы людей. Они часто подразумевают долгие обсуждения, уточнения контекста и неформальные договоренности между разработчиками.

Попытка превратить этот человеческий процесс в чистые, изолированные задачи для машин работает плохо. Описания проблем, итоговый код и модульные тесты далеко не всегда складываются в идеальный пазл. Тесты в pull requests часто пишутся для проверки конкретного изменения конкретного программиста, а не как универсальный стандарт для решения абстрактной задачи.

Перспектива

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

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

LifeSciBench 1x1

LifeSciBench 1x1

TL;DR

Главное

Около трети задач в популярном бенчмарке SWE-Bench Pro содержат ошибки, что делает его метрики ненадежными для оценки реальных способностей ИИ в программировании.

Ключевые факты

  • /Автоматизированный аудит выявил 27,4% сломанных задач, а люди-инженеры — 34,1%.
  • /Основные проблемы: слишком строгие тесты, неполные инструкции и слабое покрытие кода тестами.
  • /OpenAI официально отзывает рекомендацию использовать SWE-Bench Pro для оценки моделей.

Инсайт

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

Источник:Openai

Читайте также

Гайды по теме