Инструменты для написания кода на основе ИИ находят файлы, но не те строки
Бенчмарк SWE-Explore показывает, что ИИ-агенты для кода верно определяют файлы для изменения, но находят лишь 14–19% релевантных мест в коде.
ИИ-агенты для кода способны верно определить файлы, которые нужно изменить, но находят лишь 14–19% релевантных мест в коде — таковы данные нового бенчмарка SWE-Explore, созданного международной группой исследователей под руководством Шанхайского университета Цзяотун. Это первая попытка оценить поиск кода отдельно от корректности патча на 848 задачах в 203 проектах с открытым исходным кодом на 10 языках программирования.
Любопытно, что хотя ИИ-агенты стабильно ставят нужный файл на первое место, найти нужные строки кода им не удаётся. Поиск по ключевым словам справляется с этой задачей «чуть лучше, чем случайный выбор», и более мощная модель тут, похоже, не помогает. Проблема не в интеллекте, а в исследовании кода.
Почему пропущенные строки ломают починку
Исследователи обнаружили, что агент успешно исправляет баг только тогда, когда у него есть доступ как минимум к 50–75% релевантных участков кода. Если это не так, даже хорошая модель выдаст очень уверенный (но неверный) патч, потому что у неё просто нет всей информации, нужной для решения задачи. Также выяснилось, что нехватка релевантной информации хуже, чем избыток нерелевантной, — вопреки интуитивному желанию сокращать объём информации, которую мы даём агентам. Чтобы установить эталон, исследователи использовали проверенные патчи, сгенерированные GPT-5.4, Gemini 3 Pro, Claude Sonnet 4.6 и Kimi K2.6.
Вот почему вас раздражает работа с ИИ-агентами при исправлении багов: они говорят уверенно, редактируют правильный файл, но баг никуда не девается. Дело не в лени — у них просто не было доступа к нужным строкам кода. Так что если вы пользуетесь ИИ-агентами для кода, это значит, что теперь, когда модели становятся умнее, оптимизировать нужно уже другое узкое место: важно дать агенту достаточно информации до того, как он начнёт писать код, чтобы он мог определить нужный контекст.
По моему опыту, именно это и происходит, когда ИИ-агенты для кода терпят неудачу: они пытаются решить задачу, имея лишь ограниченное понимание кодовой базы. Но это хорошая новость, потому что тут есть что предпринять: дать агенту ту информацию, к которой у него обычно нет доступа.
Когда правка от ИИ не заходит, перестань повторять тот же запрос — вместо этого дай агенту недостающий контекст: вставь связанные файлы, упавший тест и функцию, которая вызывает сломанную. Попроси сначала объяснить, где живёт баг, прежде чем писать патч: если объяснение размытое — значит, нужные строки он ещё не нашёл, и любая правка будет догадкой. Относись к агенту как к быстрому джуну, который блестящ, когда смотрит в нужное место, и слеп, пока не туда.
Источник: the-decoder.com
Бесплатный курс
Хватит читать про ИИ — начни строить с ним
Бесплатный курс Claude Code: свой первый сайт, инструмент или игра — без программирования. Без апсейлов и кросс-сейлов — здесь нечего купить.
Начать →▌ Гайды по теме

Автор
Евгений Арсентьев
PhD · CEO, digital health
Статьи · Свежие статьи