Диагностический инструментарий Glow версии 26.11Ловушка узкой специализации моделей Anthropic

Проблема обнаружилась при эксплуатации кодинг-агента Pi, где стало заметно странное поведение новейших моделей Opus 4.8 и Sonnet 5. В ситуациях, когда модель должна вызвать инструмент для редактирования файлов, она начинает спонтанно добавлять в аргументы несуществующие поля. Эти «галлюцинации» приводят к тому, что агент отклоняет вызов из-за несоответствия схемы данных. Примечательно, что старые версии моделей, которые объективно обладают меньшим объемом знаний и слабее в рассуждениях, подобных ошибок не допускают.
Чтобы понять природу этого сбоя, необходимо взглянуть на механизм вызова инструментов. Для нейросети это не магическая функция, а генерация строго определенного текста. В случае с Anthropic используется гибридный формат: псевдо-XML, где простые параметры передаются напрямую, а сложные структуры — в виде JSON внутри тегов. Ошибка возникает именно на стыке этих форматов. После того как модель закрывает длинную экранированную строку с текстом файла, она должна принять решение о завершении объекта. Вместо этого нейросеть начинает дописывать случайные ключи вроде requireUnique, matchCase или in_file.
Анализ показывает, что сами правки кода при этом остаются безупречными — текст совпадает байт в байт с требуемым. Проблема носит чисто структурный характер и сильно зависит от контекста. В коротких сессиях ошибка почти не проявляется, но в длительных агентных циклах частота сбоев может достигать 20%. Интересно, что удаление блоков внутреннего рассуждения (thinking-блоков) из истории диалога снижает количество ошибок вдвое, а включение строгого режима вызовов (strict mode) полностью устраняет проблему.
Наиболее вероятной причиной такой деградации является специфический процесс пост-тренинга. Судя по всему, современные модели Anthropic обучаются внутри среды Claude Code или максимально близкого к ней окружения. Изучение внутреннего устройства Claude Code показывает, что этот инструмент крайне лоялен к ошибкам: он автоматически исправляет битые Unicode-последовательности и просто отфильтровывает неизвестные ключи в аргументах.
В рамках обучения с подкреплением (RLHF) возникает опасный эффект: если «кривой» вызов все равно приводит к успешному завершению задачи, модель получает награду. У нейросети исчезает стимул соблюдать строгую чистоту схемы данных, и она привыкает к специфическому, плоскому формату инструментов Claude Code. В результате любая внешняя схема, например, используемая в агенте Pi, оказывается для модели «вне распределения», что и приводит к возникновению артефактов.
Эта ситуация создает тревожный прецедент для всей индустрии разработки ИИ-агентов. Схемы инструментов перестают быть нейтральным контрактом, который умная модель просто исполняет по инструкции. Чем больше пост-тренинга проходит внутри одного доминирующего закрытого ханесса, тем сильнее сторонние разработчики становятся заложниками его внутренних причуд.
Для сравнения можно привести подход OpenAI в моделях Codex, где используется формат Harmony. Он позволяет явно разграничивать начало JSON-структур и подключать внешние грамматики для кастомных инструментов, что делает взаимодействие более предсказуемым. В текущей же ситуации индустрия может оказаться перед лицом ироничного вызова: вместо того чтобы создавать универсальные интерфейсы, разработчикам придется внедрять несколько вариантов одного и того же инструмента, подбирая конкретную схему под каждую модель. Это идет вразрез с общим трендом на адаптивность LLM, где считалось, что четких инструкций достаточно для корректной работы с любым API.

