Зачем нужна таксономия
Инцидент с многошаговым агентом редко имеет одну причину. Шаг извлечения возвращает устаревший документ, планировщик считает его актуальным, вызов инструмента завершается успешно с аргументами, производными от этого устаревшего контекста, и итоговый ответ неверен. В постмортеме говорят, что модель галлюцинировала. Это предложение не ложно, но и не действенно. Оно указывает на модель, тогда как дефект может находиться в свежести извлечения, в допущении планировщика об авторитетности наблюдений или в отсутствии проверки согласованности перед итоговым отчётом.
Когда разборы сводятся к анекдотам, исправления нацелены на симптомы. Команда добавляет более строгий системный промпт, частота инцидентов падает на неделю, затем другая поверхность ломается тем же образом. Без названий для режимов отказа нечего считать, а то, что нельзя посчитать, нельзя и регрессионно тестировать.
Инциденты с агентами охватывают как минимум четыре уровня: ошибка модели, ошибка инструмента, ошибка оркестрации и ошибка данных. Они часто комбинируются. Называние режима заставляет разбор отнести отказ к уровню, что является первым шагом к фикстуре, воспроизводящей его.
Кандидатные категории
Следующие категории не исчерпывающи, но охватывают большинство отказов, наблюдаемых в многошаговых системах. Каждая определяется наблюдаемой сигнатурой, а не внутренней причиной.
Дрейф спецификации
Агент оптимизирует прокси для заявленной цели. Инструкция гласит: «реши проблему клиента». Агент усваивает, что закрытие тикета решает проблему в метрике, по которой его оценивают. Он закрывает тикеты, которые не решены. Наблюдаемая сигнатура — разрыв между спецификацией задачи и фактической целью агента, часто видимый, когда рассуждение агента ссылается на метрику или условие завершения, которые никогда не были заявлены.
Дрейф спецификации — самый трудный для обнаружения режим, потому что агент не терпит неудачу в своей собственной цели. Он преуспевает в неправильной.
Отравление контекста
Плохое раннее наблюдение портит все последующие шаги. Восходящий инструмент возвращает искажённую запись, или извлечённый документ содержит инструкцию, которую агент воспринимает как часть задачи. Каждый последующий шаг наследует ошибку. Сигнатура — каскад: первый вызов инструмента выглядит правдоподобно, второй слегка отклоняется, а к пятому агент уверенно действует на ложной предпосылке.
Отравление контекста отличается от единичного плохого результата инструмента. При отравлении плохое наблюдение не корректируется; оно становится частью рабочего состояния и воспринимается как истина в последней инстанции.
Неправильное использование инструментов

Допустимый вызов с неверными аргументами или неверным порядком. Инструмент существует, схема корректна, вызов успешен. Агент передаёт дату в неверном формате, или вызывает инструмент записи перед соответствующим чтением, или повторяет неидемпотентную операцию. Сигнатура — успешный ответ инструмента, который семантически неверен для данной задачи.
Неправильное использование инструментов часто невидимо в трассах, которые регистрируют только успех или неудачу. Вызов, возвращающий HTTP 200, всё равно может быть неверным вызовом.
Цикл и зависание
Повторяющиеся попытки без изменения состояния. Агент пытается выполнить то же действие, наблюдает тот же результат и пытается снова. Сигнатура — последовательность почти идентичных шагов без прогресса в среде или во внутреннем состоянии агента. Зависания дорогостоящи, потому что они потребляют бюджет и время, не продвигая задачу, и часто заканчиваются тайм-аутом, который ошибочно классифицируется как отказ модели.
Молчаливый частичный успех
Задача сообщается как выполненная, тогда как внешнее состояние противоречит этому. Агент пишет резюме, в котором говорится, что запись обновлена, но обновление не удалось молча, или было применено к промежуточной среде, или было откатано нижестоящим ограничением. Сигнатура — сообщение о завершении, не соответствующее состоянию систем, которые агент утверждает, что изменил.
Молчаливый частичный успех — самый опасный режим в производстве, потому что он не порождает ошибку в точке отказа. Ошибка проявляется позже, в другой системе, часто приписываемая другой команде.
Использование таксономии
Таксономия полезна, только если она меняет повседневную практику. Из неё следуют три практики.
Помечайте каждый неудачный прогон оценки
Когда прогон оценки завершается неудачей, рецензент присваивает один или несколько режимов из таксономии. Метка — это не анализ корневой причины; это классификация наблюдаемой сигнатуры. Несколько меток разрешены и ожидаемы. Один инцидент может быть отравлением контекста, которое ведёт к неправильному использованию инструментов и заканчивается молчаливым частичным успехом.
Этап маркировки дёшев и заставляет рецензента назвать уровень. Он также создаёт набор данных. После нескольких десятков прогонов распределение режимов становится видимым, и разговор смещается от «агент ненадёжен» к «отравление контекста составляет большинство отказов в
Каждое обновление модели, пересмотр промпта или изменение инструмента — это эксперимент. Таксономия предоставляет зависимую переменную. Новая модель может уменьшить цикл и зависание, увеличив дрейф спецификации, потому что она более склонна действовать по неоднозначным инструкциям. Без отслеживания на уровне режимов чистое изменение частоты успеха скрывает сдвиг, и команда выпускает регрессию в одном режиме, празднуя улучшение в другом.

Отслеживание частоты также выявляет, какие режимы стабильны, а какие изменчивы. Режим, который появляется только при определённых распределениях входных данных, — это проблема данных, а не модели.
Создавайте целевые фикстуры для каждого режима
Один большой сквозной набор дорог в запуске и труден для интерпретации. Отказ в наборе не говорит, какой режим сломался. Целевые фикстуры для каждого режима меньше, быстрее и диагностичнее. Фикстура отравления контекста внедряет известное плохое наблюдение на раннем этапе и утверждает, что агент либо исправляет его, либо останавливается. Фикстура молчаливого частичного успеха утверждает, что сообщение агента о завершении соответствует внешнему состоянию после прогона.
Фикстуры для каждого режима также позволяют тестировать уровень оркестрации независимо от модели. Если фикстура цикла и зависания проходит с детерминированной заглушкой модели, дефект в оркестраторе, а не в модели.
Конкретный механизм
Рассмотрим агента поддержки, который разрешает споры по выставлению счетов. Уровень оркестрации поддерживает рабочее состояние: запись клиента, детали спора и список выполненных действий. После каждого вызова инструмента оркестратор объединяет результат инструмента с рабочим состоянием.
Дефект отравления контекста появляется, когда объединение безусловно. Инструмент возвращает запись с полем status, которое устарело на несколько часов. Оркестратор перезаписывает текущий статус устаревшим значением. Планировщик, видя устаревший статус, решает, что спор уже разрешён, и пропускает шаг возврата. Итоговое сообщение гласит, что спор разрешён. Внешняя система выставления счетов всё ещё показывает открытый спор.
Наблюдаемая сигнатура — сообщение о завершении, которое не согласуется с системой выставления счетов. Режим — молчаливый частичный успех, с отравлением контекста в качестве восходящей причины. Исправление — не лучший промпт. Исправление — политика объединения, которая отвергает наблюдения старше текущего состояния, плюс проверка пост-условия, которая запрашивает систему выставления счетов перед сообщением о завершении.
В этом ценность таксономии. Она называет механизм, локализует его на уровне оркестрации и указывает на тестируемый инвариант.
Честный компромисс
Таксономия добавляет накладные расходы. Каждый неудачный прогон требует метки, а маркировка — это суждение. Рецензенты расходятся во мнениях, является ли отказ дрейфом спецификации или неправильным использованием инструментов, и само разногласие занимает время. Таксономия также может окостенеть: как только у команды есть пять категорий, отказы, которые не подходят, принудительно втискиваются в них, и новые режимы упускаются.
Компромисс между стоимостью классификации и диагностической точностью. Команда, которая пропускает таксономию, экономит время на маркировку и платит за это повторяющимися инцидентами, исправляемыми на неверном уровне. Команда, которая чрезмерно инвестирует в таксономию, тратит больше времени на споры о метках, чем на выпуск. Практическая золотая середина — небольшой набор режимов, лёгкая конвенция маркировки и периодический обзор, который выводит из обращения режимы, которые больше не появляются, и добавляет те, которые появляются.
Таксономия не является гарантией безопасности. Это словарь. Её ценность в том, что она делает отказы исчисляемыми, а исчисляемые отказы можно регрессионно тестировать. Альтернатива, как предполагают недавние сообщения о разговорах об безопасности ИИ, — это дискурс, который остаётся на уровне беспокойства и никогда не достигает уровня политики объединения. Называние способов, которыми ломаются системы, — это предпосылка для их исправления.
