ИИ-агенты находят нужный файл, но промахиваются мимо нужных строк

Слепое пятно, о котором никто не говорил
Представьте: вы наняли детектива, который умеет найти нужный дом в огромном городе, но войдя внутрь, смотрит не туда. Примерно так работают современные ИИ-агенты для программирования - и до недавнего времени это никто толком не измерял.
Международная команда исследователей с участием Шанхайского университета Цзяо Тун создала бенчмарк SWE-Explore - первый инструмент, который оценивает не конечный результат починки бага, а именно фазу поиска: насколько точно агент определяет, какой код вообще нужно читать, прежде чем что-то исправлять.
Результат оказался неожиданно честным и немного неудобным для всей индустрии.
Что именно измеряет SWE-Explore
Классические бенчмарки вроде SWE-bench смотрят на один-единственный показатель: исправил агент баг или нет. Это как оценивать хирурга только по тому, выжил ли пациент, не интересуясь, правильно ли был поставлен диагноз и верный ли орган оперировали.
SWE-Explore разбивает процесс на части. Агент получает описание бага и репозиторий, а на выходе должен вернуть ранжированный список фрагментов кода, которые считает релевантными. Никакого исправления - только поиск.
Самое интересное - как формируется "эталон". Исследователи не разметили его вручную (это было бы невозможно для 848 задач из 203 open-source проектов на 10 языках программирования). Вместо этого они запустили успешные решения от мощных моделей - GPT-5.4, Gemini 3 Pro, Claude Sonnet 4.6, Kimi K2.6 - и зафиксировали, какие именно файлы и строки те читали перед тем, как написать правильный патч. Участки, к которым независимо обращались несколько разных успешных решений, считаются "сигнальными" - не строго обязательными, но очень важными.
Цифры, которые не врут
На уровне файлов агенты справляются прилично. Нужный файл находится, попадает в топ выдачи, лишнего немного. Но стоит опуститься на уровень конкретных строк - картина рушится.
Общецелевые агенты - Claude Code, Codex, OpenHands - охватывают лишь 14-19% строк, которые действительно имеют значение. Специализированные системы, заточенные под поиск кода, показывают результат лучше, но все равно далеко от идеала.
И вот что важно: исследование показало прямую корреляцию между качеством поиска и успехом починки. Фиксы стабильно получаются только тогда, когда агент идентифицировал не менее половины нужных строк. Пропустил контекст - патч будет либо неверным, либо неполным.
При этом асимметрия между "мало" и "много" контекста оказалась нетривиальной: лишний нерелевантный код в контексте вредит меньше, чем пропущенные важные строки. Это переворачивает привычную логику "фильтруй агрессивнее" - на самом деле агентам нужно читать шире, а не точнее.
Ключевое слово поиска, кстати, почти бесполезно. Кейс из исследования: описание бага "RuntimeWarning on Overflow" - слова из него встречаются куда чаще в документации и шаблонах проекта, чем в реальном исходном коде. Классический keyword search едва обходит случайный выбор.
Почему это важно прямо сейчас
Мы живем в момент, когда компании активно внедряют ИИ-агентов в production-пайплайны. GitHub Copilot Workspace, Cursor, Devin, Claude Code - все они позиционируются как инструменты, способные самостоятельно закрывать тикеты. Но если агент системно промахивается мимо 80% критичного кода - это не просто неэффективность, это потенциальный источник тонких багов, которые пройдут код-ревью и осядут в продакшене.
Параллельно исследователи из ETH Zurich изучали смежную проблему: как контекстные файлы типа AGENTS.md или CLAUDE.md влияют на качество работы агентов. Их вывод неожиданно перекликается с SWE-Explore: автоматически сгенерированные контекстные файлы снижают успешность на ~3% и увеличивают стоимость инференса на 20%+, потому что агенты слишком буквально следуют инструкциям, даже когда те избыточны или вредны.
Вместе эти два исследования рисуют единую картину: проблема современных кодинг-агентов - не в умении писать код, а в умении правильно читать его. Навигация по кодовой базе остается ахиллесовой пятой.
Что это меняет для разработчиков и бизнеса
Для разработчиков, которые используют ИИ-агентов: не доверяйте автоматическому поиску контекста при работе с большими репозиториями. Явно указывайте агенту, какие файлы и функции релевантны задаче - это не костыль, это текущая необходимость.
Для команд, внедряющих агентов в CI/CD: SWE-Explore дает аргумент в пользу разделения фаз. Вместо монолитного "агент-делает-все" имеет смысл выделить отдельный шаг верификации контекста перед тем, как агент начнет писать патч.
Для провайдеров моделей - это прямое руководство к действию. Бенчмарк публично показывает, что именно ломается и где. Следующий раунд улучшений Claude Code или Codex, скорее всего, будет направлен именно на phase-level accuracy поиска, а не только на качество генерации патчей.
Что касается российских пользователей: Claude Code и Codex формально недоступны напрямую без VPN и иностранной карты - ситуация не изменилась по состоянию на середину 2026 года. OpenHands как open-source альтернатива разворачивается локально и доступен без ограничений.
Бенчмарки меняют рынок
История ИИ показывает: что не измеряется - не улучшается. SWE-bench в свое время заставил всю индустрию сфокусироваться на реальных задачах из GitHub. SWE-Explore потенциально сделает то же самое с фазой поиска - сейчас это слепое пятно, завтра это станет обязательной метрикой в каждом пресс-релизе про кодинг-агентов.
Информация, изложенная в этом материале, подтверждена несколькими независимыми публикациями и исследованиями.
Источники
Похожие новости
Nvidia SoL-Pi режет расходы на токены кодящих агентов почти вдвое
Исследователи Nvidia научили систему SoL-Pi автоматически оптимизировать управляющий слой агентов - и получили минус 49% токенов без потери качества.
Microsoft Copilot получил агента Autopilot и оплату по факту использования
Microsoft разделила Copilot на три раздела и запустила автономного агента Autopilot на базе OpenClaw - теперь он работает в облаке без участия пользователя.
Ollama 0.40: модели на Apple Silicon теперь запускаются через MLX по умолчанию
Ollama выпустила версию 0.40.0 с главным изменением: модели на Mac с чипами Apple Silicon теперь автоматически используют движок MLX, который быстрее и экономит память.