Международная группа исследователей с участием Shanghai Jiao Tong University представила SWE-Explore — новый бенчмарк для оценки ИИ-агентов для программирования. Он проверяет не итоговое исправление бага, а первый этап работы: поиск фрагментов кода, которые действительно важны для решения.
Авторы отмечают, что обычная метрика «исправил баг или нет» скрывает причину ошибки. Агент мог не найти нужный код или открыть правильный файл, но предложить неверный патч. В обоих случаях итог выглядит одинаково.
В SWE-Explore агент получает описание бага и проект, после чего должен вернуть ранжированный список участков кода, которые считает релевантными.
Чтобы определить, какие фрагменты действительно важны, исследователи использовали другой подход. Для каждой из 848 задач в наборе есть как минимум две успешные попытки решения от сильных моделей, включая GPT-5.4, Gemini 3 Pro, Claude Sonnet 4.6 и Kimi K2.6.
На основе этих запусков команда выделила файлы и строки, которые ИИ просматривал перед исправлением бага. Если несколько независимых траекторий решения сходились на одних и тех же местах, это считалось сильным сигналом полезного контекста. Затем исследователи провели отдельную проверку ключевых фрагментов и повторно просмотрели каждую найденную зону вручную.
Датасет собран на базе 203 open-source проектов и охватывает десять языков программирования. Больше всего задач связано с Python — 547 из 848, далее идут Go, JavaScript и Rust.
В сравнении участвовали традиционные методы поиска, пять универсальных агентов для программирования, включая Claude Code, Codex и OpenHands, а также четыре исследовательские системы, созданные специально для поиска по коду.
Обычный поиск по ключевым словам показал результат лишь немного выше случайного. В одном из примеров авторы показали, что описание бага вроде «RuntimeWarning on Overflow» чаще совпадает с шаблонами и документацией проекта, чем с реальным исходным кодом. ИИ-агенты оказались заметно лучше, потому что ищут по проекту поэтапно, а не просто сортируют все совпадения сразу.
На уровне файлов агенты показали хорошие результаты. Они обычно находят нужный исходный файл, ставят его высоко в выдаче и не расширяют выборку слишком сильно. Но при переходе к строкам кода картина резко ухудшается.
Универсальные агенты для программирования покрывают лишь 14–19% строк, которые действительно важны для исправления бага.
Замена модели на более сильную почти не меняет картину. Команда протестировала одного и того же агента с шестью моделями от OpenAI, Anthropic, Google, Moonshot и Zhipu. Лидируют модели семейства GPT, однако разрыв между попаданием в нужный файл и покрытием нужных строк сохраняется во всех случаях.
Архитектуры разных агентов тоже оказались очень близки по результатам. Claude Code, Codex, OpenHands, Mini-SWE-Agent и AweAgent показали почти одинаковые оценки по всем основным метрикам.
Исключением стала исследовательская система CoSIL. Она рассматривает код как сеть связанных блоков и показала заметно более высокое покрытие по строкам. Среди специализированных систем AutoCodeRover работал точно, но осторожно, а OrcaLoca давала мало лишнего шума, однако пропускала много полезных участков.
В отдельном эксперименте исследователи искусственно меняли объём доступного контекста. Модель для исправления видела 0, 25, 50, 75 или 100% ключевых зон, иногда с добавлением нерелевантного кода. Для более простых задач проявился явный пороговый эффект.
Если модели доступно меньше половины нужных ключевых участков, исправления в основном не удаются. Рост успешности появляется лишь в диапазоне от 50% до 75% покрытия. Авторы подчёркивают, что качество не растёт плавно: модели нужен минимальный объём подсказок, после которого решение начинает складываться.
Для более трудных задач этот эффект заметно слабее. Если сама задача уже превышает возможности модели, даже лучший контекст почти не помогает.
После того как критически важные фрагменты становятся доступны, лишний нерелевантный код почти не мешает. По выводу авторов, агент, который читает слишком мало, работает хуже, чем агент, который читает слишком много. Главный практический вывод сформулирован просто: меньше фильтровать, больше читать.
Код и данные проекта опубликованы на GitHub и Hugging Face.
В материале также приводится более широкий контекст. Около двух лет назад исследователи представили SWE-bench — бенчмарк, который проверяет ИИ-агентов для программирования на реальных отчётах GitHub Issues. После этого появилось несколько вариантов с поддержкой большего числа языков, более чистыми данными и более трудными профессиональными задачами.
При этом сама метрика успешного исправления в последнее время вызывает всё больше вопросов. В частности, исследование организации METR показало, что менеджеры проектов отклонили бы около половины решений, которые автоматический проверяющий механизм посчитал корректными, во многих случаях из-за базовых функциональных ошибок.
Источник: The Decoder.






















