CodeClash: Benchmarking Goal-Oriented Software Engineering (сайт проекта)
Новый бенчмарк от Ofir Press и команды SWE-bench. Авторы замечают, что текущие бенчмарки для оценки навыков программирования завязаны на конкретных, четко сформулированных задачах, таких как исправление определенных ошибок или написание точечных тестов.
Однако реальные программисты не занимаются весь день решением изолированных задач. На практике разработка связана с достижением высокоуровневых целей, таких как повышение удержания пользователей или снижение расходов.
Так и появился CodeClash — бенчмарк, в котором LLM соревнуются в многораундовых турнирах за создание лучшей кодовой базы для достижения некоторой цели (в данном случае на примере 6 игр, но в целом это может быть хоть что, где можно делать симуляции и замерять качество). То есть играет не сама модель, а код, который она пишет и улучшает.
Каждый раунд проходит в две фазы: агенты редактируют свой код, затем их кодовые базы соревнуются друг с другом, где победители определяются на основе критериев конкретной игры. Каждый раунд проводят по 1000 игр.
Редактирование между раундами ограничено $1 на API (так что Opus 4.1 грустит в сторонке) и 30 шагами. Авторы пишут, что в долларовое ограничение модели почти не упираются, а вот по шагам — вполне.
Разрыв с человеческим уровнем значителен. Авторы взяли топ-решение для одной из игр (под названием «gigachad» 😂), модель Claude Sonnet 4.5 не выиграла ни одного из 150 раундов против него, что соответствует нулю из 37 500 симуляций (10 турниров × 15 раундов × 250 симуляций). При этом человеческий бот оставался неизменным на протяжении всех раундов, его никак не адаптировали.
CodeClash выявляет существенные различия в подходах моделей к редактированию кода. Например, модели o3 и Gemini 2.5 Pro обычно редактируют в среднем всего 2 файла за раунд, в то время как GPT-5 изменяет от 5 до 6 файлов (при этом её качество в среднем лишь совсем чуть-чуть лучше o3).
Размер правок также сильно отличается: o3 в среднем добавляет или удаляет 51 строку за раунд, что в 8 раз меньше, чем у Qwen3 Coder или моделей семейства Claude Sonnet, которые обычно изменяют более 400 строк.
Claude Sonnet 4.5 обычно использует 23 из предоставленных 30 шагов редактирования, тогда как GPT-5 и o3 завершают раунд всего за 15 шагов.
Ключевых инсайта к деградации качества у моделей два:
I. Даже сильные модели испытывают трудности с восстановлением после проигранных раундов. В реальной разработке ранние решения часто принимаются в условиях неопределённости: оптимальный подход может выявиться только после тестирования, реального использования и наблюдения за конкурентами. Поэтому способность интерпретировать шумные сигналы и пересматривать внутренние гипотезы и ключевые архитектурные решения крайне важна для успеха на практике.
Раундовая структура CodeClash показывает, насколько плохо языковые модели адаптируются после провала их начальной стратегии. Например, для Claude Sonnet 4.5 после проигрыша одного раунда вероятность победы в следующем составляет менее трети, что вдвое ниже её общей вероятности выигрыша раунда (71%).
II. Большинство моделей испытывают затруднения при анализе логов и не могут извлечь значимых инсайтов о своём поведении. Агенты имеют доступ к подробным записям всех предыдущих раундов, включая сотни и даже тысячи симуляций против оппонентов. Эти логи могут показать не только улучшила ли изменения прошлого раунда процент побед, но и точное поведение, приведшее к выигрышу или проигрышу. Однако, несмотря на явные подсказки в промпте написать инструменты анализа, большинство моделей не способны извлечь из логов полезную информацию и зачастую ограничиваются чтением первых строк или простым подсчётом процента побед за последний раунд.
При этом всём модели часто галлюцинируют в процессе анализа своих ошибок и неверно интерпретируют логи и результаты анализа. Наиболее характерный пример — агенты делают выводы о причинах поражения на арене, прочитав лишь первые строки одного лога, хотя эти строки даже не содержат описания конца игры!
