GPT-5.3 Codex и Claude 3.7: почему код от AI раздут на 47% | Исследование SWE-bench | AiManual
AiManual Logo Ai / Manual.
04 Мар 2026 Новости

Заголовок устарел — свежее исследование объясняет, почему ваш AI-ассистент пишет код как занудный профессор

Новые данные на 04.03.2026: код от GPT-5.3 Codex и Claude 3.7 Haiku содержит на 47% больше строк, чем от человека. Глубокий разбор причин и инструменты борьбы.

Цифры с SWE-bench бьют по самолюбию OpenAI и Anthropic

Вы просите GPT-5.3 Codex починить баг в вашем Django-проекте. Он соглашается, размышляет, пишет 120 строк кода. Баг исправлен. Но вы тратите следующие 20 минут, удаляя 80 строк ненужных валидаций, избыточных комментариев и функций-заглушек. Знакомо?

Новое исследование, опубликованное 2 марта 2026 года, дает научное объяснение этому феномену. Анализ 2,400 успешных исправлений (патчей) на бенчмарке SWE-bench показал: код, сгенерированный топовыми языковыми моделями, в среднем на 47% объемнее человеческого при решении идентичных задач.

Модель / Источник патча Среднее кол-во строк (на задачу SWE-bench) "Раздутость" vs человек Версия на 04.03.2026
Человек-разработчик (контрольная группа) 18.3 0% (база)
GPT-5.3 Codex 26.9 +47% Release 5.3.1 (февраль 2026)
Claude 3.7 Haiku 24.1 +32% Version 3.7-Haiku (февраль 2026)
Mini-SWE-Agent (кастомизированный) 20.5 +12% GitHub main branch

Это не просто статистика. Это фундаментальная проблема, из-за которой многообещающие агентные модели остаются медленными и дорогими в использовании. Каждая лишняя строка — это токен. А токены в API GPT-5.3 — это ваши деньги.

💡
SWE-bench — это стандартный бенчмарк для оценки способности моделей исправлять баги в реальных open-source репозиториях (например, Django, pandas). Mini-SWE-Agent — это легковесный инструмент для запуска и оценки моделей на этих задачах. Его последняя версия, актуальная на март 2026, включает метрики для анализа «раздутости» кода.

Почему AI не может просто заткнуться и написать fix?

Исследователи выделяют три корневые причины.

1Синдром вербальной реализации

Модель думает словами. Её «рассуждение» — это цепочка текста. Поэтому решение проблемы она реализует так же — производя многословное пояснение, которое часто превращается в часть кода. Нужно проверить входные данные? Модель не просто добавит условный оператор, она сначала явно опишет эту проверку в комментарии, а потом, возможно, выведет лог. Потому что в её тренировочных данных так и делают — пишут статьи, документацию, ответы на Stack Overflow.

2Обучение на диалогах убило лаконичность

GPT-5.3 и Claude 3.7 дообучались на терабайтах диалогов, где полезный ответ — это развернутый, вежливый, всеобъемлющий ответ. «Не могли бы вы...» — «Конечно, я буду рад помочь! Вот пошаговое решение...». Этот паттерн перекочевал в код. Модель пытается быть «всеобъемлющей» и «полезной», подставляя шаблоны обработки ошибок даже там, где контекст их не требует. Это та же болезнь, что и предвзятость к диалектам, только проявляется в синтаксисе.

3Страх ошибиться

Архитектура с вниманием заставляет модель распределять «уверенность» по всему контексту. Вместо того чтобы выбрать одно элегантное решение, она перестраховывается, предлагая несколько вариантов в зачатке (через избыточные условия) или оборачивая все в try-except. Результат — код, который выглядит так, словно его писал параноидальный стажер.

Интересный парадокс: более умные и мощные модели (GPT-5.3 Codex) генерируют более раздутый код, чем их более простые аналоги. Они «видят» больше потенциальных edge-кейсов и пытаются их все обработать. Claude 3.7 Haiku, будучи быстрее и немного «проще», иногда выдает более сжатый патч — но и чаще ошибается.

Mini-SWE-Agent и другие инструменты: как обрезать жир

Исследовательское комьюнити уже не просто диагностирует проблему, а создает инструменты для её решения. Mini-SWE-Agent теперь поддерживает режим «лаконичного патча», где пост-обработка скрипта удаляет:

  • Избыточные комментарии, дублирующие код.
  • Неиспользуемые импорты и переменные.
  • Очевидные проверки на null в контексте, где они гарантированно не нужны.
  • Шаблонные обработчики ошибок для незначительных операций.

Но это костыль. Настоящее лечение — на уровне промптов и тонкой настройки.

Работающий прием — явное указание в системном промпте: «Ты — senior разработчик, который ценит минимализм. Любая лишняя строка кода — это позор. Отвечай только необходимым кодом, без пояснений в комментариях». Это снижает объем вывода на 15-20% для GPT-5.3 Codex API.

Второй путь — специфичная дообучение. Техники, подобные Kakugo, но не для сжатия размера модели, а для сжатия стиля её вывода. Обучать на корпусе чистых, минимальных человеческих патчей из того же SWE-bench. Первые эксперименты показывают многообещающие результаты.

💡
Промпт «будь лаконичным» перестает работать, если задача действительно сложная. Модель входит в конфликт: с одной стороны, инструкция «не раздувай», с другой — внутреннее стремление «расписать решение полностью». Часто она выбирает второе, просто убирая комментарии. Структурная избыточность кода остается.

Что будет дальше? Битва за токен

Проблема раздутого кода — не эстетическая. Это экономическая. Если OpenAI и Anthropic хотят, чтобы разработчики массово использовали их API для кодинга, они должны снижать стоимость вызова. А самый прямой путь — заставить модель генерировать меньше токенов без потери качества.

До конца 2026 года мы увидим:

  1. Специализированные «лаконичные» варианты моделей (например, GPT-5.3 Codex Compact).
  2. Встроенные в IDE агенты, которые будут тут же рефакторить раздутый AI-код.
  3. Новые метрики в бенчмарках, которые штрафуют не только за ошибки, но и за избыточность.

Пока же совет простой: никогда не принимайте первый вариант кода от GPT-5.3 или Claude 3.7 Haiku как окончательный. Ваша работа начинается именно тогда, когда модель заканчивает «творить». Относитесь к её выводу как к черновику — сырому, многословному, но содержащему зерно решения. Ваша задача — вычленить это зерно и выбросить всю шелуху. Искусство промптинга теперь включает в себя искусство редактуры.

(И да, если ваш AI вдруг начал писать странно раздутый код в один день и лаконичный в другой — это не глюк. Это следствие фундаментальной ошибки в ротации моделей, о которой мы писали).

Подписаться на канал