Проектирование многопроцессорных систем на A2A: узлы, память и управление
Архитектура для систем с несколькими агентами, построенная на протоколе A2A, включающая модули агентов, типы памяти, механизмы оркестрации, риски безопасности и чек-лист для проектирования.
Как только у компании появляется более нескольких ИИ-агентов в эксплуатации, сложные проблемы перестают касаться формулировок запросов и начинают связываться с архитектурой: как агенты взаимодействуют друг с другом, где хранится их состояние, кто координирует их действия и как осуществляется аудит их работы. В этой статье представлен ориентировочный план такой системы, в которой в качестве основы коммуникации используется протокол Agent-to-Agent (A2A). К концу вы сможете понимать составляющие отдельного агента, слои памяти и оркестрации, объединяющие множество агентов, механизмы управления, необходимые для сети из множества агентов, а также факторы, которые следует учитывать при планировании масштабирования.
Основное изменение заключается в переходе от генеративных систем к агентным. Генеративный ИИ работает по принципу ввода запросов: человек задаёт вопрос, модель генерирует контент, и взаимодействие завершается. Агентный ИИ ориентирован на достижение целей: система получает общую задачу, разделяет её на более мелкие подзадачи и выполняет их с минимальным участием человека. Практическим следствием для архитекторов является изменение масштаба работы. Генеративные модели автоматизируют отдельные задачи, тогда как агентные системы могут автоматизировать целые рабочие процессы, превращая ИИ из инструмента, реагирующего на вводные данные, в агента, действующего самостоятельно. Именно это позволяет масштабировать операции, которые раньше требовали постоянного наблюдения за каждым шагом. Если вы хотите более подробного рассмотрения этой терминологии, ознакомьтесь с объяснением агентного ИИ от языковых моделей до автономных агентов.
Правдоподобностные двигатели и формальные рассудочные машины
В центре каждого агента находится модель принятия решений — обычно это большая языковая модель или большая модель изображений для визуальных задач. Эти модели являются вероятностными. Они генерируют плавные и убедительные результаты, но могут выдавать ложную информацию, причем плавность не всегда соответствует корректности. Формальные системы, такие как рассуждающие инструменты для онтологий OWL или байесовские сети, ведут себя иначе: их выводы основаны на явных правилах и вероятностях, поэтому они математически надежны в пределах своей области применения. Надежный дизайн предполагает использование каждого инструмента там, где он наиболее эффективен.
Тот же прагматизм применим и к глубине рассуждений. Техники вроде подсказок типа «цепочка мыслей» повышают точность, заставляя модель проходить промежуточные шаги, но каждый дополнительный шаг увеличивает задержку и расходы на обработку. Глубокие рассуждения не бесплатны, и оптимальная глубина зависит от скорости реакции системы. Когда у вас появляется множество таких агентов, каждый из которых имеет собственную модель и стиль рассуждений, необходим способ их взаимодействия. Именно для этого и существует A2A.
A2A как слой взаимодействия
A2A был предложен в 2025 году как открытый протокол для агентов, созданных с использованием различных фреймворков и разными поставщиками, чтобы они могли сотрудничать друг с другом. Его цель — предотвратить фрагментацию многопроцессорных систем на изолированные структуры, связанные с конкретными поставщиками: агенты, разработанные с использованием разных фреймворков или размещаемые у разных поставщиков, могут обмениваться контекстом и координировать свою работу через единый интерфейс. Принятие этого протокола все еще находится в стадии развития, поэтому перед принятием окончательных решений обязательно ознакомьтесь с текущей спецификацией.
Пять принципов проектирования
- Рассматривайте агентов как агентов. Протокол предполагает, что участники способны самостоятельно принимать решения и действовать по собственной инициативе, а не просто отвечать на один запрос. Это открывает путь к сотрудничеству в достижении долгосрочных целей, а не к простым взаимодействиям типа запрос-ответ.
Соблюдение этих принципов помогает избежать двух типичных способов сбоев: сбоя координации, когда агенты не действуют согласованно, и разногласий между агентами, когда децентрализованные участники постепенно отклоняются от общей цели. Эти принципы реализуются внутри каждого агента через модульный цикл восприятия, рассуждений и действий.
Внутри отдельного узла агента
Каждый узел выполняет замкнутый цикл ввода, обработки, действий и обучения. Поскольку этот цикл возвращает результаты во внутреннее состояние агента, узел остается в курсе своей среды и адаптируется, вместо того чтобы механически выполнять фиксированный скрипт.
Четыре подсистемы
- Восприятие. Этот слой принимает сигналы любого типа: запросы на естественном языке, потоки событий API, изображения. Он использует технологию генерации с усилением на основе поиска данных (RAG), чтобы закрепить эти данные в реальных фактах перед их передачей на слой рассуждений.
- Представление знаний и рассуждения (KRR). Здесь намерение интерпретируется с использованием сочетания статистических и символических методов. Модель языка обрабатывает нюансы и неоднозначности, в то время как формальные проверки позволяют убедиться в логической целостности полученного плана.
- Выбор действий и их выполнение. Решения превращаются в конкретные действия с помощью определенного набора вызовов API или отправляемых сообщений. Именно здесь рассуждения агента вступают в контакт с цифровым или физическим миром.
Основным паттерном выполнения является ReAct — сокращение от reasoning plus acting. Агент поочередно размышляет о следующем шаге и наблюдает за результатом действия, что позволяет его рассуждениям основываться на том, что действительно произошло. Недостатком является то, что каждый шаг размышлений требует дополнительного вызова модели, поэтому такие циклы увеличивают нагрузку на обработку и время ответа, что необходимо учитывать при планировании. То, что сохраняет целостность действий на протяжении разных шагов и сессий, — это память.
Постоянная память во времени
Модели языка являются безсостоянийными: каждый вызов знает только то, что находится в его контексте. Для планирования на длительный срок необходима постоянная память, которая связывает между собой отдельные шаги. Без неё агенты забывают о достигнутом прогрессе при выполнении многоэтапных задач или когда работа передается между сессиями, что приводит к повторной работе и нестабильности системы.
Три вида памяти
- Эпизодическая память фиксирует то, что происходило в ходе конкретной задачи, включая принятые шаги рассуждения и неудачные попытки, всё это в рамках одной сессии.
- Семантическая память хранит стабильные факты и структурированные организационные знания, которые могут использоваться при выполнении любых задач.
- Память на основе векторов предназначена для поиска по сходству, позволяя агенту извлекать релевантный контекст из очень больших коллекций с помощью технологии RAG.
Эти элементы следует разделять, поскольку у них разный срок существования и способы доступа. Эпизодическая память имеет короткий срок действия и связана с конкретной задачей, семантическая память долговечна и систематизирована, а хранилища векторов оптимизированы для нечёткого поиска, а не для точного воспроизведения данных.
Общий контекст для передачи задач
В масштабных системах агентам также необходимы общие буферы контекста. Когда один агент передаёт подзадачу другому, буфер содержит всю предысторию и текущее состояние, благодаря чему принимающий агент может продолжить работу, не начиная с нуля. Распространение состояния в таком формате требует наличия координационного уровня над отдельными агентами.
Оркестрация и разбиение целей
По мере роста систем одна универсальная модель сменяется ансамблем специализированных моделей. Назначение определенных ролей — например, агента, который планирует как генеральный директор, агента, который пишет код, и агента, который его проверяет, — обычно приводит к лучшей точности и глубине обработки информации, чем попытка заставить одну модель выполнять всё самостоятельно.
Что делает мета-агент
Мета-агент, или оркестратор, контролирует деятельность ансамбля. К его обязанностям относятся:
- Назначение каждой подзадачи агенту, наиболее подходящему для её выполнения.
- Управление зависимостями, чтобы результаты обработки поступали в нужное место в правильном порядке.
- Решение конфликтов, возникающих, когда агенты дают противоречивые результаты или соперничают за одни и те же ресурсы.
Планирование с использованием дерева мыслей
Оркестрация заключается в разбиении цели на подцели. Методы планирования, такие как дерево мыслей, рассматривают несколько вариантов выводов вместо того, чтобы ограничиваться одной последовательностью действий, что помогает преодолевать неопределенность и снижает чрезмерную хрупкость и галлюцинации, свойственные планам с одним путем. Однако рассмотрение нескольких вариантов увеличивает количество вызовов модели, что усугубляет проблему задержек, о которой говорилось ранее.
Существует еще один риск — возникновение эмерджентного поведения. Когда множество автономных агентов взаимодействуют нелинейным образом, система может привести к результатам, которые никто не планировал и не предсказывал. Оркестрация снижает этот риск, но не устраняет его полностью, поэтому механизмы управления должны быть частью архитектуры, а не добавлены позже.
Безопасность и управление
Сеть агентов имеет большую площадь атаки, и один скомпрометированный или сбитый с толку узел может спровоцировать цепную реакцию ошибок во всей сети. Безопасный подход заключается в том, чтобы рассматривать каждое взаимодействие между агентами как потенциальный источник риска.
- Цепная реакция ошибок. Галлюцинация или ошибка на раннем этапе обработки данных передаются дальше и искажают окончательное решение. Статья о предотвращении усиления галлюцинаций в графах агентов подробно рассматривает этот способ сбоя.
- Атаки со стороны злонамеренных пользователей. Внедрение вводимого текста или «отравление» модели могут помешать выполнению задачи агентом.
- Распространение предвзятости. Агенты могут усиливать искаженные закономерности в данных, что приводит к систематически несправедливым результатам.
Архитектура с учетом принципов управления
Три механизма помогают справиться с большинством этих рисков:
- Изоляция ролей ограничивает полномочия каждого агента и API, к которым он может обращаться, так что скомпрометированный агент может нанести лишь ограниченный ущерб.
- Логирование решений с возможностью отслеживания фиксирует каждый шаг логических рассуждений, что позволяет аудитировать сбои и определять их причины.
- Аутентификация агентов проверяет идентичность каждого участника рабочего процесса.
Помимо этого, слой формальной верификации отделяет то, что кажется правильным, от того, что логически обосновано. Это архитектурное решение проблемы убедительности, но ненадежности языковых моделей, описанной в начале.
Куда это ведет: проактивный интеллект и парадигма абсолютного нуля
По мере слияния модульных агентов и организованных агентских систем следующим шагом становится проактивный интеллект: системы, которые замечают сигналы в своей среде и запускают рабочие процессы до того, как кто-либо об этом попросит.
Одним из направлений исследований, связанных с этим, является парадигма абсолютного нуля (AZR). Вместо обучения на примерах, помеченных людьми, такие системы совершенствуются за счёт самостоятельных задач, генерируя собственные проблемы и выводы без использования внешних данных для обучения. Основой стабильности здесь служит проверяемая обратная связь, такая как запуск сгенерированного кода или проверка формальных доказательств, которая заменяет человеческую аннотацию источником истины. Считайте это активной областью исследований, а не готовой к применению техникой.
Чек-лист проектирования
Перед масштабированием многоагентной системы проверьте её проектирование с учётом следующих вопросов:
- Формальная верификация: Существует ли логический уровень, позволяющий отличить результаты работы модели, ориентированной на убеждение, от действительно корректных результатов?
- Разделение памяти: Являются ли эпизодические, семантические и векторные хранилища четко разделены?
- Стандарт протокола: Происходит ли вся коммуникация между разными фреймворками и поставщиками через A2A?
- Контроль управления: Включены ли изоляция ролей и логирование принимаемых решений для каждого автономного узла?
- Лимит задержек: Были ли измерены и отрегулированы компромиссы между глубиной обработки информации, такой как дерево мыслей, и временем ответа?
Основные выводы
- Системы с несколькими агентами переводят проблему от создания инструментов для ответов на вопросы к формированию экосистем, способных самостоятельно решать проблемы, и это изменение носит архитектурный характер.
Связанные материалы
- Agent = Model + Harness: Откуда на самом деле берется надежное поведение ИИ — Узнайте, что такое механизм harness для ИИ-агента, почему состояние, полномочия и верификация должны находиться вне модели, и какие элементы станут ненужны по мере совершенствования моделей.
- Проектирование четырехуровневой памяти агента с использованием LangGraph и Amazon Bedrock — Узнайте, как обеспечить агентам на основе больших языковых моделей рабочую, эпизодическую, семантическую и процедурную память в средах Bedrock и LangGraph, а также как защитить её от вредоносного воздействия, утечек персональных данных и нежелательного доступа.
- Эскалация по узлам, а не по задачам: шестиступенчатая система контроля затрат на рабочий процесс больших языковых моделей — Почему выбор между структурой DAG и агентом на каждую задачу приводит к увеличению затрат на использование больших языковых моделей, и как система эскалации по узлам с использованием контрактов, объёмов работ и бюджетов позволяет сдерживать эти затраты.
- Интерфейс чата или цикл агента? Как определить потребности вашей функции ИИ — Узнайте, как отличить чат-бота для диалогов от агента, ориентированного на достижение целей, что добавляет цикл агента и как решить, какой из вариантов действительно необходим вашей функции ИИ.
- Реестры агентов сообщают о том, что существует, но не о том, можно ли им по-прежнему доверять — Четырехвопросная схема для реестров способностей агентов, охватывающая существование, пригодность, статус и происхождение, а также простой тест последней проверки, который можно выполнить сегодня.