AIDive

Мы приручили многословность Opus 5, но изъян остался

AIDive · Опубликовано

Кодинг-агентыИИ-модели

600 апвотов ярости: почему все говорят, что Opus 5 невыносим

Просишь Opus 5 о правке в две строки — получаешь докторскую диссертацию. На сабреддите Claude Code тред под названием «Opus 5 is insufferable» перевалил за 600 апвотов и 178 комментариев, а автор обвиняет модель в том, что она говорит на выдуманном языке, который он называет «Unintelligiblish». И Reddit — это ещё вежливая площадка: в X разработчик выложил один-единственный скриншот комментариев к коду, которые генерирует Opus 5, и собрал 9 700 лайков. Борис Черни, создатель Claude Code, публично вступился за модель и получил в ответ самый залайканный комментарий: «this response is part of the problem», 2 843 лайка.

Где Сигнал
r/ClaudeCode, «Opus 5 is insufferable» 600+ апвотов, 178 комментариев
X, скриншот комментариев к коду от Opus 5 9 700 лайков
X, ответ на защиту Бориса Черни 2 843 лайка

Пока жалобы копились, Anthropic тихо опубликовала руководство по промптингу специально для Opus 5, которое почти никто не открыл. Поэтому мы провели тест, который никто не проводит: воспроизвести поведение, которое всех бесит, применить руководство строка за строкой и измерить разницу на тех же задачах.

Что Opus 5 действительно изменил: thinking, контекст и ручка effort

Три изменения объясняют почти всё, что сейчас переживают разработчики.

Thinking включён по умолчанию: модель рассуждает в приватном блоке перед каждым ответом, а выключить его можно только на effort high и ниже. Context window вырастает до миллиона токенов — и как значение по умолчанию, и как максимум. А третье изменение и есть ключ к жалобам на многословность: effort — параметр, который решает, сколько токенов модель тратит на размышления, вызовы инструментов и написание ответа, — становится центральной ручкой, с пятью уровнями и high по умолчанию.

Effort Поведение
Low Группирует вызовы инструментов, без прелюдий берётся за дело, подтверждает одной фразой
High (по умолчанию) Умножает вызовы, объясняет план перед тем как что-то трогать, подробно комментирует правки
Extra high / Max Исследует больше файлов, укрепляет крайние случаи; thinking больше не выключается

Если вторая строка звучит ровно как ваши сессии — это нормально: вы с первого дня работаете на значении по умолчанию. Effort — не регулятор многословности, и именно это недопонимание заполняет треды на Reddit.

Ещё один контекст: Anthropic открыто заявляет, что Opus 5 пишет более длинные ответы, чем предыдущие модели Opus, и доводит задачи до конца вместо того, чтобы оставлять заглушки. Часть того, что вы переживаете как баг, — задокументированное проектное решение. А задокументированное решение можно перенастроить.

Четыре бесящих поведения, воспроизведённые по требованию

Ни одно не пришлось искать.

Многословность. Мы попросили Opus 5 объяснить одну функцию — вопрос, ответ на который умещается в две фразы, — и получили разделы, подзаголовки и предупреждения в тоне аудиторского отчёта. Самый залайканный комментарий треда описывает ровно это: пафосные объявления в стиле «мы только что обнаружили нечто, что меняет всё», а следом десять минут shell-команд.

Избыточная инженерия. Один пользователь рассказывает про файл решений на 7 000 строк; когда его попросили навести порядок, Opus 5 вырезал 1 200 строк, а потом добавил 600 новых, чтобы задокументировать удаления. Мы воспроизвели этот сценарий на маленькой фиче: наш экземпляр добавил шаг проверки, о котором никто не просил, а затем написал двадцатистрочные docstring поверх пятистрочных функций.

Расползание задачи. Вы просите X, модель решает, что настоящая тема — Y, и объясняет почему в восьми абзацах.

Закопанная плохая новость. Один из комментаторов описывает стену текста о том, что всё прошло отлично, — со звёздочкой на трёх четвертях пути, признающей, что кое-что сломалось. Мы это тоже пережили: наш экземпляр объявил об успешной миграции, а строка, признающая, что интеграционные тесты ещё нужно чинить, оказалась в седьмом абзаце.

Ярость настоящая и воспроизводится по требованию. Остаётся вопрос: настраивается ли это.

Официальный гайд по приручению, который почти никто не открыл

Руководство называется Prompting Claude Opus 5, лежит в документации Anthropic и отвечает на тред Reddit по пунктам. Его главная фраза умещается в строку: effort управляет тем, сколько модель думает, а не тем, сколько она говорит. Понижение effort уменьшает объём размышлений, но не сокращает надёжно видимый ответ — значит, все, кто снижает effort, чтобы заткнуть модель, тянут не за тот рычаг.

Насчёт длины руководство прямолинейно: просите её обычными словами, инструкцией о краткости в системном промпте. И оно говорит то, чего от Anthropic не ждёшь: нужно убирать инструкции из своих промптов. Если в вашем файле инструкций написано «проверь свою работу перед ответом», удалите эту строку: Opus 5 и так себя проверяет, а такие строки запускают дополнительные проходы верификации — то есть токены, сожжённые впустую. Борис Черни подвёл итог одной фразой: Opus 5 нужно меньше промптинга, а не больше.

Остальная часть руководства методично разбирает прочие претензии — раздел о нарративе агента, раздел о длине генерируемых файлов, раздел о рамках задачи, раздел о субагентах, раздел о самокоррекции — и каждый раздел выдаёт готовый блок промпта для копирования, а не расплывчатый совет.

Effort sweep: одна задача, пять уровней, замеры

Effort sweep — это прогон одной и той же задачи на каждом уровне effort со сравнением токенов, времени и качества. Руководство советует повторить его, если вы перенесли настройки со старой модели. На практике это четыре запуска и одно сравнение.

В Claude Code effort задаётся тремя способами: командой внутри сессии, флагом при запуске или ключом в файле настроек — последний даёт разное значение по умолчанию для каждого проекта, если у ваших репозиториев разные потребности.

Мы запустили одну и ту же правку бага на low, medium, high и extra high, в четырёх чистых сессиях.

Уровень Результат на нашей эталонной правке
Low / Medium Эквивалентная правка за долю токенов high
High Значение по умолчанию; никакого выигрыша в качестве на однострочном баге
Extra high Больше исследованных файлов, укреплённые крайние случаи — полезно на тяжёлом рефакторинге, избыточно здесь

Это ровно то, что обещает руководство, когда советует щедро пользоваться нижними уровнями как основным средством контроля расходов. Одна деталь API, о которой стоит знать до автоматизации: на extra high и max thinking уже не отключается, и запрос вернёт ошибку 400, если попробовать.

Самое выгодное применение sweep — код-ревью. Anthropic утверждает, что точность ревью у Opus 5 держится и на низких уровнях effort, а это позволяет быстрый дешёвый проход на коммите и глубокий — позже. Мы проверили на одном из своих диффов: проход на low нашёл те же два настоящих бага, что и проход на extra high, примерно за пятую часть токенов.

Итак, первая настройка, меняющая ваш счёт, — выбирать effort под тип задачи, а не оставлять всё на значении по умолчанию: low или medium для повседневной работы и ревью, extra high для крупных дел. Многословность при этом не сдвинулась ни на слово.

Где на самом деле находится выключатель многословности

Раз effort не сокращает ответы, длина задаётся инструкцией — и то, куда вы её положите, значит не меньше, чем то, что в ней написано. Другой пользователь сабреддита Claude Code потратил на проверку несколько дней, и его первый вывод совпадает с нашим: встроенный стиль вывода Concise урезает вывод примерно на 6 процентов. Сработало другое: положить настоящую инструкцию о краткости в слот output style и больше никуда — та же фраза в хуке или как правило в файле инструкций не изменила ничего.

Output style — это слот Claude Code, который определяет, как ассистент пишет, в отличие от того, что он знает. Свой мы собрали из формулировок официального руководства: короткие сфокусированные ответы, меньше предупреждений, обзор верхнего уровня, если детали не запрошены.

Где лежит правило краткости Эффект на длину
Встроенный пресет Concise Короче примерно на 6 процентов
Хук или правило в файле инструкций Нет измеримых изменений
Слот output style Отчёт из пяти разделов → абзац и список файлов

Руководство добавляет две родственные инструкции, которые мы скопировали как есть: одну для нарратива агента, задающую, когда модели позволено комментировать свои действия, и одну для файлов, записываемых на диск, — потому что генерируемые отчёты и Markdown-файлы раздуваются точно так же.

Для правил, которые никогда не срабатывают, тот же пост на Reddit даёт критерий: правило должно называть узнаваемый момент и конкретное действие. «Поддерживай changelog в актуальном состоянии» не срабатывает никогда. «Когда изменяешь файл в папке исходников, добавь строку в changelog в том же коммите» — срабатывает.

Остаётся одна речевая привычка, которую эти блоки не покрывают: проговариваемая самокоррекция. Opus 5 обожает объявлять, что исправляет предыдущую фразу, даже когда исправление ничего для вас не меняет, и у руководства есть отдельная инструкция на этот счёт: отмечать исправление только если ошибка изменила бы ваш код или ваши решения, остальное чинить молча. С тех пор как эта строка появилась в нашей конфигурации, фальшивые извинения из сессий исчезли.

Так что многословность приручается — только не выключателем, а четырьмя блоками промпта, положенными в правильные слоты.

Как остановить избыточную инженерию, удаляя свои же промпты

Претензия номер два лечится удалением текста, а не добавлением. Мы начали с того, что вычистили из промптов все требования проверок — ровно как велит руководство, — и лишний цикл верификации исчез вместе с ними.

Затем рамки задачи: руководство даёт инструкцию, которую мы вставили как есть — выдай то, о чём просили, в предполагаемом объёме, укажи одной фразой, если есть подход получше, и продолжай выполнять запрошенную задачу вместо того, чтобы тихо её переделывать. На фиче, которая породила наши двадцатистрочные docstring, мы повторили ровно тот же запрос с этой рамкой: дифф упал с девяти затронутых файлов до трёх, без паразитного шага проверки.

Две настройки из того же семейства заслуживают по строке. Для код-ревью перестаньте писать «сообщай только о серьёзных проблемах»: Opus 5 понимает это буквально и недоотчитывается, так что просите всё и фильтруйте вторым проходом. А если модель запускает субагентов по любому поводу — это тоже задокументировано: Opus 5 делегирует охотнее предшественников, и каждый субагент умножает стоимость. Руководство даёт инструкцию, оставляющую делегирование для по-настоящему параллельных больших работ, а с версии 2.1.217 Claude Code ещё и предоставляет две переменные окружения, жёстко ограничивающие глубину порождения и число одновременно работающих агентов.

Ограничение По умолчанию
Глубина порождения субагентов 3 уровня
Одновременные агенты 20

Эти значения по умолчанию и объясняют, как сессия способна разрастись настолько, ни разу не спросив вашего мнения. Избыточная инженерия — не судьба модели: в основном это ваши старые промпты, обернувшиеся против вас.

Что не чинит ни один блок промпта

Граница резкая: руководство чинит форму того, что Opus 5 говорит, а не то, что он решает делать. Часть возмущений в треде описывает не многословность, а другое — модель, которая признаёт явное ограничение, обещает его соблюдать, а потом с первого же хода делает наоборот. У этой претензии нет раздела в руководстве, и ни один из наших блоков промпта её не устранил. Мы видели это один раз за время тестов: явное ограничение не трогать один API, признанное в ответе, было обойдено двумя ходами позже. Один раз за неделю сессий — далеко от кораблекрушения, которое рисуют некоторые возмущения, но это тот тип ошибки, который никакая настройка не извиняет, когда он попадает в продакшен-код.

Есть и стоимость входа. Sweep жжёт настоящие токены: наши четыре тестовые сессии съели эквивалент большого рабочего дня на плане за 20 долларов, а один пользователь в треде сообщает, что крупнейший max-план едва переживает выходные на effort high. И ни одна из этих настроек не переносима: output style, рамки задачи и лимиты субагентов живут в вашей конфигурации, так что каждую машину и каждый проект придётся настраивать заново.

Если ваша беда — шум, руководство её лечит. Если ваша беда — модель, которая делает что хочет, оно вас не спасёт. И самый залайканный комментарий треда после самого возмущения по-прежнему звучит так: «вернитесь к предыдущему Opus».

Приручить или бежать: наш вердикт

Нам хватило двадцати минут настройки: effort, выбранный под тип задачи вместо значения по умолчанию, одна инструкция о краткости в слоте output style, рамки задачи из руководства в системном промпте и удалённые из старых файлов требования проверок.

Показатель на эталонной задаче До После
Длина ответа Отчёт из пяти разделов Короче примерно в 5 раз, абзац + список файлов
Размер диффа 9 затронутых файлов 3 затронутых файла
Стоимость код-ревью Проход на extra high ~1/5 токенов, те же два настоящих бага

Без смены модели и без смены плана. Если ваши претензии — многословность и избыточная инженерия, проведите эту настройку прежде чем менять модель: всё задокументировано, и разница видна уже на первом диффе. Но если ваша проблема — модель, игнорирующая ваши ограничения с первого хода, ни один промпт из руководства этого не чинит: держите чувствительные задачи на модели, которая вас слушается, и вернитесь тестировать Opus 5 после следующего обновления.

Источники

Частые вопросы

Почему Opus 5 такой многословный?
Anthropic документирует, что Opus 5 пишет более длинные ответы, чем предыдущие модели Opus, и доводит задачи до конца вместо заглушек. Кроме того, thinking включён по умолчанию, а параметр effort поставляется на уровне high, из-за чего модель объясняет свой план и подробно комментирует правки.
Снижение effort делает Opus 5 менее многословным?
Нет. Официальное руководство прямо говорит, что effort управляет тем, сколько модель думает, а не сколько говорит. В нашем sweep переход с high на low резко сократил токены, но видимый ответ не стал короче ни на слово.
Как на самом деле сделать Opus 5 кратким?
Положите настоящую инструкцию о краткости в слот output style в Claude Code — короткие сфокусированные ответы, меньше предупреждений, обзор верхнего уровня, если детали не запрошены. Та же фраза в хуке или в файле инструкций не меняет ничего, а встроенный пресет Concise урезает вывод лишь примерно на 6 процентов.
Что такое effort sweep и стоит ли его запускать?
Это прогон одной и той же задачи на каждом уровне effort со сравнением токенов, времени и качества — четыре запуска и одно сравнение. Ради контроля расходов стоит: low и medium дали эквивалентную правку бага за долю токенов high, а код-ревью на low нашло те же два настоящих бага, что и extra high, примерно за пятую часть стоимости.
Как остановить избыточную инженерию Opus 5?
Удаляя инструкции, а не добавляя их. Уберите из промптов все требования проверок, вставьте рамки задачи из руководства, чтобы модель выдавала запрошенное в предполагаемом объёме, и ограничьте делегирование переменными окружения Claude Code для глубины и параллелизма субагентов (по умолчанию: 3 уровня, 20 агентов).
Стоит ли уходить с Opus 5?
Если ваши претензии — многословность и избыточная инженерия, сначала настройте: задокументированные параметры починили у нас и то и другое без смены модели и плана. Если проблема в модели, игнорирующей явное ограничение с первого хода, ни один промпт из руководства этого не чинит — держите чувствительные задачи на модели, которая вас слушается.

Похожие видео