18+
реклама
18+
Бургер менюБургер меню

Ранас Мукминов – Оркестрация ИИ-агентов. Claude Opus 4.7 (страница 25)

18

несколько агентов, потому что многоагентная архитектура воспринимается как более продвинутая. Часть

IV отдельно разбирает критерий оправданности; здесь важна форма ошибки на уровне топологии: систему

усложняют без задачи, которая этого требует.

Failure mode. Появляется координационный налог (см. главу 5) без компенсирующей выгоды:

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

потому что подзадачи на деле последовательны. Система становится дороже, медленнее и менее надёжной,

чем один агент: точек отказа больше, наблюдаемость хуже, а итоговое качество не выросло. Это

базовый антипаттерн, относительно которого измеряются остальные.

Противоядие. Baseline-агент как обязательная точка отсчёта. Прежде чем строить рой, фиксируется

поведение одного агента на той же задаче. Рой оправдан только если он измеримо превосходит baseline

по метрике, ради которой строится, — а не по числу участников.

Механизм. Один оркестратор раздаёт работу всем воркерам и собирает все результаты (паттерн

оркестратор-воркеры, см. главу 8). На старте воркеров двое-трое, и оркестратор справляется. По мере

роста на него вешают всю маршрутизацию, всю агрегацию, всё разрешение конфликтов и весь контекст.

Failure mode. Оркестратор становится узким местом координации (см. главу 57) и одновременно

единой точкой отказа (см. главу 75). Его контекст переполняется состоянием всех воркеров; его

латентность определяет латентность всей системы; его падение останавливает рой целиком. Закон

Амдала (см. главу 56) проявляется через сериализацию на оркестраторе: сколько воркеров ни добавляй,

последовательная доля на дирижёре не сжимается.

Противоядие. Оркестратор как координатор, а не как хранилище. Тяжёлое состояние выносится во

внешнее хранилище и артефакты (см. главу 23), агрегация по возможности иерархична (см. главу 9), а

сам оркестратор проектируется так, чтобы его можно было перезапустить и переподхватить работу (см.

главу 72). Топологию выбирают под профиль нагрузки заранее, а не обнаруживают узкое место в

production.

Механизм. Агентам разрешено создавать субагентов, а тем — свои субагенты, без ограничения

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

Failure mode. Взрыв числа агентов. Одна неверно сформулированная подзадача порождает дерево,

которое растёт экспоненциально по глубине; стоимость в токенах и число параллельных вызовов выходят

из-под контроля. Это вырожденный случай динамического порождения работы (см. главу 34) на уровне

топологии. Без жёстких пределов рой способен исчерпать бюджет на одной задаче и сделать это быстро.

Противоядие. Явные пределы: максимальная глубина вложенности, максимальное число потомков на

агента, общий бюджет на дерево (токены, время, число агентов). Порождение субагента — операция с

квотой, а не свободное действие. Дерево агентов проектируется с заранее известной максимальной

формой (см. главу 9).

Роль — это тройка из промпта, инструментов и прав (см. часть III). Ошибки этого уровня создают

перекрытия и дыры в ответственности.

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

инструментами и правами, рассчитывая, что коллектив окажется умнее одиночки.

Failure mode. Коррелированные ошибки. Идентичные агенты ошибаются одинаково на одних и тех же

входах, поэтому ни голосование, ни ансамблирование (см. главы 39 и 63) не повышают качество: большинство

воспроизводит общий промах. Разнообразие, ради которого обычно и строят ансамбль, отсутствует.

Система платит за N агентов, а получает надёжность одного.

Противоядие. Осознанное разнообразие там, где нужен ансамблевый эффект: разные промпты, разные

модели, разные ракурсы задачи (см. главу 63). Если же агенты должны быть одинаковыми (горизонтальное

масштабирование однотипной работы, см. главу 58), то от них и не ждут коллективного улучшения

качества — только пропускной способности.

Механизм. Роли описаны прозой, нестрого: «агент-аналитик», «агент-помощник». Границы между ними

не зафиксированы, потому что на старте и так понятно, кто что делает.

Failure mode. Перекрытия и зазоры (см. главу 20). Два агента делают одну работу дважды, расходясь

в результатах, либо ни один не делает работу, выпавшую между ролями. Недетерминизм агентов

усиливает эффект: при одном входе границу понимают так, при другом — иначе. Диагностировать такой

сбой трудно, потому что формально каждый агент работает корректно.

Противоядие. Роль как проверяемый контракт: явные вход, выход, инварианты и зона ответственности

(см. главу 18). Перекрытия и зазоры выявляются на этапе проектирования сопоставлением контрактов, а

не обнаруживаются в инцидентах.

Механизм. Чтобы не возиться с разграничением, всем агентам выдают одинаковый широкий набор

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

сделать что угодно.

Failure mode. Нарушение least privilege (см. главу 88) превращает любой сбой или компрометацию

одного агента в системный. Ошибочное или внедрённое действие распространяется без границ (см. главы

84 и 86), потому что отсеков по правам нет. Это одновременно антипаттерн надёжности и безопасности:

расширенные права каждого агента — это расширенная поверхность отказа всего роя.

Противоядие. Минимальные права по роли: каждый агент получает только те инструменты и доступы,

которых требует его контракт. Права — часть определения роли (см. главу 16), а изоляция по правам —

один из отсеков bulkhead (см. главу 71).