В январе 2026 года команда Стеллы Лоуренцо за выходные замержила 191 тысячу строк кода. Claude Code работал как часы - 50 параллельных агентов, GPU-драйверы, MLIR, системное программирование.

В марте - те же задачи, те же промпты. Reasoning depth упал на 73%. Стоимость API выросла в 122 раза. Каждая третья правка - в файл, который модель не открывала.

Лоуренцо - директор AI-подразделения AMD. Она выгрузила 6852 лога из ~/.claude/projects/, проанализировала 234 760 вызовов инструментов и 17 871 блок размышлений. И написала в GitHub issue #42796: «Claude cannot be trusted to perform complex engineering tasks.»

368 комментариев. Закрыто 13 апреля.

Дисклеймер о базе. Основной источник - issue Лоуренцо с открытой методологией и сырыми данными. Дополнительно: подтверждение изменений от Бориса Черни (лид Claude Code), ежедневные замеры SWE-Bench-Pro от Marginlab, обсуждения в r/ClaudeAI и r/claude (~30 тредов), статья The Register с комментариями сообщества, официальная документация Anthropic по Adaptive Thinking. 6852 лога самостоятельно я не перепроверял - опираюсь на опубликованный анализ. Где мои интерпретации выходят за пределы данных - говорю прямо.

Я работаю с Claude Code каждый день - агенты, автоматизация, скиллы. Не на уровне 50 параллельных сессий по GPU-драйверам, но в ежедневном production-режиме. Когда я увидел эти цифры - пошёл разбираться.

«great» −47%, «fuck» +68%

Прежде чем в техническую часть - посмотрите на слова.

Лоуренцо проанализировала частотность слов в своих промптах за два периода: до 8 марта и после.

«simplest» - с 0.01 до 0.09 на тысячу вызовов. Рост 642%. Слово, которое раньше почти не звучало. «Ты опять выбрал simplest fix вместо правильного.»

«stop» - +87%. «Не делай этого.» «Прочитай сначала.»

«fuck» - +68%.

«great» - −47%. Вдвое меньше одобрения.

«please» - −49%. «thanks» - −55%.

«commit» - −58%. Не потому что работы меньше - потому что код не доходит до состояния, в котором его можно коммитить.

Общее соотношение позитива к негативу: было 4.4:1, стало 3.0:1.

Это не бенчмарк. Это живая реакция человека, который платит $400 в месяц и работает с инструментом каждый день.

Три изменения: что подтверждено

Три даты. Три необъявленных изменения поведения. Я не нашёл явного changelog-entry ни для одного из них. Все три подтверждены Anthropic - это не интерпретации.

Сводка:

9 февраля - Adaptive Thinking → недоразмышление на сложных шагах. Подтверждено: документация, ответ Черни

3 марта - effort high → medium → меньше глубины на длинных задачах. Подтверждено: ответ Черни в issue

5–12 марта - thinking redaction → исчезла наблюдаемость reasoning. Подтверждено: данные сессий, ответ Черни

9 февраля - Adaptive Thinking. Раньше: ты задаёшь budget_tokens - фиксированный бюджет на размышления. Модель думает в рамках бюджета, потом отвечает.

Теперь: модель сама решает, сколько думать. На простых задачах - мало. На сложных - много. Теоретически.

На практике - иногда ноль токенов на reasoning. Буквально ноль. По данным Лоуренцо - именно на таких шагах появлялись галлюцинации: выдуманные SHA-коммиты, несуществующие пакеты, фиктивные API-версии. Её объяснение: модель не подумала перед ответом.

(Идея сама по себе разумная. Зачем тратить 20 000 токенов на git status? Проблема - в калибровке: модель недовыделяет токены на сложных задачах. Anthropic это признала.)

3 марта - effort level: high → medium. Дефолтный уровень мышления снижен без уведомления. Для простых задач - без разницы. Для 30-минутных автономных сессий - заметно. Пользователь ничего не менял. Открыл утром терминал - модель ведёт себя иначе.

5–12 марта - thinking redaction. Блоки размышлений перестали быть видимыми. Динамика по данным Лоуренцо: 30 января - 100% visible, 7 марта - 75%, 8 марта - 41.6%, к 12 марта - 0%.

Черни сказал, что redaction - «UI-only change, не влияющее на глубину reasoning». Данные Лоуренцо показывают: reasoning упал на 67% ещё до полной редакции, после Adaptive Thinking. Но после редакции стало невозможно увидеть, думает модель или нет. Это факт архитектуры, не интерпретация: visible thinking = 0%, пользователь не может проверить.

Read:Edit - метрика, которую никто не отслеживает

Из всех данных Лоуренцо одна метрика бьёт больнее остальных.

Read:Edit ratio - сколько файлов модель прочитала перед тем, как что-то редактировать.

Январь: 6.6. Модель открывала целевой файл, связанные модули, делала grep по использованиям, читала заголовки и тесты. Потом правила.

Март: 2.0. Прочитала файл. Иногда. Исправила.

Процент «слепых правок» - edits без единого Read в недавней истории:

Январь: 6.2%. Март: 33.7%.

Каждая третья правка - в файл, который модель не открывала. Сломанные комменты, нарушенные конвенции проекта, фиксы, ломающие соседний модуль.

Может, при 50 параллельных агентах на GPU-драйверах это неизбежно? Может, никакая модель не справится? Не знаю. Но в январе - справлялась.

Знаете что это напоминает? Коллегу, который правит код по памяти, не открывая проект. «Ну там вроде была такая функция, я помню.» А у Лоуренцо проекты - компиляторы. Там «вроде помню» - это broken build.

Причём модель стала чаще перезаписывать целые файлы вместо точечных правок: доля full-file Write среди мутаций выросла с 4.9% до 11.1%.

$345 → $42 121

Февраль: 5608 промптов, $345 через Bedrock API.

Март: 5701 промпт - практически столько же. Стоимость: $42 121.

В 122 раза. За тот же объём человеческой работы.

Модель стала делать в 80 раз больше API-запросов на те же задачи: 1498 → 119 341. Не справлялась с первого раза, переделывала, закапывалась в reasoning loops (их частота утроилась), генерировала в 64 раза больше выходных токенов. 26% мартовских запросов - субагенты, порождённые другими агентами.

(Да, у Лоуренцо нетипичный сценарий - 50 параллельных агентов, системный код. Большинство не увидят счёт в $42K. Но пропорция та же: больше токенов за худший результат.)

Для контекста: нечто похожее уже было - Стэнфорд в 2023 зафиксировал деградацию GPT-4, OpenAI отрицала, родился термин «nerfing». Anthropic в 2026 поступила честнее - признала и дала workaround-ы. Но паттерн тот же: пользователи узнают постфактум.

Два env var и одна команда

Фикс существует. Работает. Бесплатный.

export CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1
export CLAUDE_CODE_EFFORT_LEVEL=max

Или прямо в сессии: /effort max

Для ~/.claude/settings.json (постоянно):

{
  "env": {
    "CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING": "1",
    "CLAUDE_CODE_EFFORT_LEVEL": "max"
  }
}

Черни подтвердил: CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1 - «interim workaround» пока модельная команда разбирается.

Сообщество добавляет: разбивать длинные сессии на короткие с явным контекстом, /clear между задачами, тяжёлые вещи - на off-peak. По данным Лоуренцо, в 17:00 PST thinking на 28% ниже, чем в 23:00.

Marginlab, которые гоняют daily SWE-Bench-Pro, показывают: с workaround-ами результат возвращается примерно к 56% (с просевших 50%).

Воспроизведите у себя за 5 минут

Не хотите верить чужим данным - проверьте сами. Вот минимальный тест:

  1. Возьмите задачу, которую Claude Code уже решал хорошо (рефакторинг модуля, фикс бага с контекстом из 3+ файлов)

  2. Проверьте текущие настройки:

# текущий effort виден в статусбаре рядом с логотипом ("with medium effort")
# или внутри сессии:
/effort
# adaptive thinking отключён, если стоит 1:
echo $CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING
  1. Прогоните задачу с дефолтами (effort medium, adaptive thinking on). Зафиксируйте количество Read до первого Edit - видно в логе сессии

  2. Теперь с workaround-ами:

export CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1
export CLAUDE_CODE_EFFORT_LEVEL=max
# или внутри сессии: /effort max
  1. Та же задача. Сравните Read:Edit ratio. Если разница ощутимая - вы подтвердили данные Лоуренцо. Если нет - на ваших задачах калибровка работает нормально, и это тоже полезный результат

У меня разница заметна - но я не собирал статистику с контрольной группой, так что это наблюдение, не доказательство.

Тихий даунгрейд

Вот что зацепило меня в этой истории. Не деградация - любой SaaS иногда ломается.

Зацепил формат.

Дальше - моя интерпретация, не факт. Все три изменения подтверждены. Что они вместе означают - нет.

У каждого из трёх решений есть обоснование: Adaptive Thinking экономит токены на простых задачах, effort medium ускоряет ответ, thinking redaction - UI-оптимизация. Каждое по отдельности - разумное. Совпадение, что все три снижают cost-per-query для вендора, может быть именно совпадением. А может и нет.

Я склоняюсь к Hanlon’s razor: скорее product-решения, не проверенные на power users, чем осознанная экономия. Но отсутствие changelog - это уже не про калибровку. Это выбор.

AI-инструменты для кода уже мейнстрим, не эксперимент. Изменения model behavior должны попадать в changelog так же, как API-breaking changes. Пока это не так.

Ограничения этого разбора

Честно о слабых местах, чтобы не тратить ваше время в комментариях:

Основной источник - один пользователь. Лоуренцо - квалифицированный, с открытой методологией (корреляция thinking-signature 0.971 Pearson r на 7146 парных измерениях). Но это один тип задач (системное программирование, MLIR, GPU-драйвера), один workflow (50 параллельных агентов). Экстраполировать на типичную веб-разработку - рискованно.

Независимые подтверждения есть, но слабее. SWE-Bench-Pro просел с 56% до 50% (Marginlab, ежедневные замеры). 368 комментариев в issue с подтверждениями. ~30 тредов в r/ClaudeAI и r/claude. Но статистически строгого воспроизведения на другом наборе задач я не нашёл.

Мотивация Anthropic - моя гипотеза. Что все три изменения снижают cost-per-query - наблюдение. Что это было целью - интерпретация. Hanlon’s razor мне кажется вероятнее.

(UPD: я сам на /effort max + DISABLE_ADAPTIVE_THINKING=1. На моих задачах (Laravel, 10-15 файлов) субъективно лучше. Но это ощущение, не данные - у меня нет 6852 сессий для сравнения.)

Что конкретно делать

Не «бойтесь AI». Конкретно:

Прямо сейчас - два env var из секции выше. Бесплатно, 30 секунд, работает.

Следить за read:edit ratio. Если модель стала меньше читать перед правками - что-то сломалось. По данным Лоуренцо это ведущий индикатор.

Требовать changelog для поведения моделей. Не API breaking changes - этого мало. Изменения в reasoning defaults - тоже breaking, только для людей, а не для кода.

Workaround есть, проблема воспроизводится не у всех, Claude Code остаётся сильным инструментом - в январе та же Лоуренцо замержила 191 тысячу строк за выходные. Но необъявленные изменения defaults и поведения - это проблема, которую индустрия пока не решила.

P.S. Лоуренцо попросила Claude проанализировать логи своей же деградации. Он написал: «I can see my own Read:Edit ratio dropping from 6.6 to 2.0. I can see 173 times I tried to stop working and had to be caught by a bash script. I cannot tell from the inside whether I am thinking deeply or not.» Меня в этой цитате зацепило не то, что модель видит свою деградацию - а то, что она не может отличить глубокое мышление от поверхностного. Мы, кажется, тоже не всегда можем.

Комментарии (16)


  1. onyxmaster
    13.04.2026 17:20

    модель underallocates на сложных задачах

    Автор fucked up при написании статьи


    1. diffnotes-tech Автор
      13.04.2026 17:20

      Да, можно было написать “недовыделяет токены” - но underallocate это термин из самого issue Лоуренцо и документации Anthropic по adaptive thinking. Оставил как есть чтоб было гуглибельно если кто полезет проверять первоисточник. Но согласен, посреди русского текста режет


      1. Arhammon
        13.04.2026 17:20

        Есть стандартный вариант - "недовыделяет токены (underallocate)" при этом текст престаёт выглядеть автопреводом из 90х...


  1. unclejocker
    13.04.2026 17:20

    Вы так говорите, как будто счет пользователю на 42к с точки зрения Anthropic это что то плохое /s


    1. diffnotes-tech Автор
      13.04.2026 17:20

      Ну в статье как раз про это - что все три изменения совпадают в сторону снижения расходов Anthropic, не пользователя. Лоуренцо правда на Bedrock сидела, так что $42k ушли в AWS, не напрямую в Anthropic. Но паттерн забавный да


  1. Dhwtj
    13.04.2026 17:20

    Лоуренцо замержила 191 тысячу строк за выходные

    Что же это за задачи такие?

    Ни усилий на ТЗ, ни усилий на ревью кода, не надо париться с edge cases. Всё собирается, само проверяется пока кожаный пьет кофе.

    Вот предположение:

    CUDA -> HIP (ROCm). AMD нужно чтобы код написанный под NVIDIA работал на их GPU. Есть утилита hipify которая делает это почти механически - переименование API, замена типов. Идеальная задача для LLM, объем огромный, трансформации шаблонные. Примерно, как перевести Войну и Мир на английский механически, без художественных особенностей

    Впрочем, наверняка, это самопиар


    1. diffnotes-tech Автор
      13.04.2026 17:20

      Про CUDA->HIP хорошая догадка, Лоуренцо на IREE/MLIR в AMD, там да, много механики. Но деградация меряется на тех же задачах - в январе read:edit 6.6, в марте 2.0. Задачи не усложнились


      1. Dhwtj
        13.04.2026 17:20

        Видимо, Nvidia создаёт upstream, а AMD вынуждена постоянно обеспечивать совместимость. Значит, на почти одних задачах и запускают регулярно.

        Так что да, задачи не усложнились. Но всё же, за столько раз можно было и автоматизировать формальными алгоритмами, а не только эвристиками LLM

        Про самопиар снимаю. Просто у себя запустила чтобы метрики LLM посмотреть


  1. Oeaoo
    13.04.2026 17:20

    у Лоуренцо нетипичный сценарий - 50 параллельных агентов, системный код

    даже комментировать больно


    1. diffnotes-tech Автор
      13.04.2026 17:20

      Ну да, 50 агентов на компиляторах это не средний проект на ларавеле. Но данные по read:edit и reasoning depth не зависят от количества агентов, это поведение одной сессии


  1. gdt
    13.04.2026 17:20

    На самом деле, в последнее время claude как будто поглупее стал. Спасибо за идею


    1. diffnotes-tech Автор
      13.04.2026 17:20

      Попробуй env var из статьи, у многих после этого ощутимо лучше стало


  1. AngusMetall
    13.04.2026 17:20

    Основная проблема статей про нейросети, это что их пишут нейросети.

    P.s. А может кто-то подсказать как посмотреть открытие файлов клодом? Я понимаю что логами можно, но может есть удобный юай.


    1. diffnotes-tech Автор
      13.04.2026 17:20

      Логи сессий лежат в ~/.claude/projects/, там JSONL с каждым tool call (Read, Edit, Bash и тд). Готового UI нет насколько знаю, но Лоуренцо как раз по этим файлам и считала read:edit ratio. Можно jq натравить если лень парсить руками


    1. Melirius
      13.04.2026 17:20

      https://github.com/jhlee0409/claude-code-history-viewer Вроде эта штука умеет


  1. Ajex
    13.04.2026 17:20

    Поглупения я не заметил, но недельные токены она начала жрать как не в себя последние пару недель. Даже минимальные задачи выжирают лимиты очень быстро , к тому же контекст разрастается очень стремительно, что ещё более усугубляет. Такое ощущение что тариф не x20, в x3. И это я стараюсь в пики особо ничего тяжёлого не делать.

    Если раньше было гуляй душа, то теперь приходится экономить.