SWE-Together: как мерить кодинг-агентов диалогово, а не в один ход (Рубрика AI4SDLC)
Прочитал свежую статью "SWE-Together: Evaluating Coding Agents in Interactive User Sessions" от команды запрещенной в России компании "Meta" (arXiv, 29 июня 2026). Авторы бьют в слабое место почти всех бенчмарков кодинг-агентов: они статичные. Агент получает полную постановку задачи сразу и оценивается по финальному коду. А реальная работа с агентом устроена иначе - это диалог, где пользователь раскрывает намерение постепенно, уточняет требования и поправляет ошибки по ходу. В общем и целом, авторы хотели проверить гипотезу того, что сильной модели нужно меньше вмешательств пользователя во время работы (||и это реально подтвердилось||)
Вообще, проблемы с бенчами классические: один насыщаются и перестают различать топовые модели (можно глянуть мой разбор выступления про SWE-rebench). Также бенчи не всегда измеряют именно то, как с ними взаимодействуют инженеры. Собственно, SWE-Together (лидерборд, github) как раз и пробует уйти от одноходовой постановки (single-turn) к диалогу (multi-turn), режиму который более похож на реальную работу с агентами.
Интересна процедура сбора датасета
- На входе было 11,260 реальных сессий пользователей с кодинг-агентами (четыре открытых датасета с Hugging Face: DataClaw, Pi-staging, Hyperswitch, SWE-chat)
- На выходе получили 109 воспроизводимых задач уровня репозитория, что дает конверсию в 0.97%
- Посередине были жесткие фильтры: нужно восстановимое состояние репозитория, ясная цель, проверяемый исход, а финальное изменение должно быть в основном написано агентом, а не человеком
- Каждая задача на выходе - это песочница с зафиксированным коммитом, окружением и верификаторами.
Самая интересная инженерная часть в этом бенче - это симулятор пользователя. Он нужен так как исходную сессию нельзя проиграть дословно: новый агент пойдет другим путем, и реплики исходного пользователя потеряют смысл. Поэтому LLM-симулятор заякорен на намерения из исходной сессии, но реагирует на живую траекторию оцениваемого агента: после каждого хода он принимает одно решение - промолчать, задать вопрос, перенаправить агента, добавить требование или попросить проверить внешний артефакт. В слепом тесте аннотаторы не смогли отличить симулятор от живых пользователей: 46% "принятия за человека" при случайном уровне 50%, разница статистически незначима (аля пройден модифицированный тест Тьюринга).
Оценка тоже сделана с оглядкой на известную болезнь: фиксированные тесты искажают оценку в обе стороны - узкие цепляются за случайные детали реализации, широкие требуют поведения, которого никто не просил. Здесь финальное состояние репозитория оценивает агентный судья по зафиксированному заранее набору критериев (frozen rubric): взвешенные поведенческие цели формируются один раз, офлайн, до и независимо от любых кандидатов, а потом одинаково применяются ко всем моделям. Оценивается поведенческая полнота, а не похожесть на исходный патч.
На выходе у нас есть еще метрика User Correction, которая показывает сколько раз пользователю пришлось явно поправить агента (плюс мягкие подталкивания с весом 0.2) по дороге к результату. Два агента с одинаковым финальным баллом могут стоить пользователю очень разных усилий.
Результаты по семи моделям в общей обвязке (harness) opencode.
- Claude Opus 4.8 лидирует: pass@1 63%, средний балл судьи 0.801 и минимум корректировок - 1.38 за сессию, но и самый большой расход output+reasoning токенов (74k на задачу)
- GPT-5.5 второй по среднему баллу судьи (0.763) и самый экономный: 29.9k токенов и 10.7 минут на задачу
- Способность и число корректировок связаны почти линейно: корреляция Пирсона "−0.92". В итоге, гипотеза о том, что сильной модели нужно меньше вмешательств пользователя получила количественное подтверждение - в рамках этого бенчмарка. Забавная деталь: моделей самой Meta в таблице нет.
В общем, авторы бенча смогли померить налог на верификацию результатов работы агента (через метрику User Correction). AI удешевил производство кода, но не доверие к изменениям, и "сколько раз человеку пришлось направлять агента" - неплохая оценка этого доверия. Практически это означает две вещи 1️⃣ Оценивать агентов стоит парой метрик - успех плюс стоимость руления, а не одним pass@1 2️⃣ Ваши собственные сессии с агентами - готовое сырье для таких проверок качества (evals): пайплайн «сессия → задача» в статье описан подробно, код открыт.
P.S. Смежный whitepaper "SWE-Interact" от Scale AI, вышедший в тот же день, что SWE-Together, рассмотрен в следующем посте.
#AI #AI4SDLC #Engineering #Agents #Evals #Research