Мультиагентная система

Мультиагентная система (Multi-Agent System, MAS) — программная система, в которой несколько агентов взаимодействуют для выполнения задач. В AI-приложениях они могут разделять общую работу на части, обмениваться результатами и координировать действия.

Как устроена мультиагентная система

В системе с одним AI-агентом планирование, использование инструментов и проверка результата сосредоточены в одном рабочем процессе. Многоагентная система распределяет эти функции между несколькими участниками: у каждого могут быть своя роль, инструкции, контекст и разрешённые действия.

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

Как агенты взаимодействуют

Распространены два способа координации:

  • Через главного агента (оркестратора). Он составляет план, делегирует задачи, принимает отчёты и определяет следующий шаг.
  • Напрямую между агентами. Участники обмениваются сообщениями или результатами через общую среду без обязательного согласования каждого действия с одним координатором.

На практике встречаются и смешанные схемы. Важно не количество сообщений между агентами, а то, как система передаёт состояние работы: что уже проверено, какие файлы изменены, какой результат нужно получить дальше.

Некоторые подзадачи выполняются параллельно. Например, исследование документации и поиск подходящих тестов не требуют ждать друг друга. Но сначала изменить интерфейс функции, а затем проверить вызовы этой функции — последовательная зависимость. Система должна учитывать её, иначе агенты начнут работать с устаревшими данными.

Где мультиагентные системы применяются в разработке

Допустим, команда поручает AI-системе добавить новый метод API. Исследователь находит существующие соглашения и связанные модули. Агент разработки меняет обработчик и модель данных. Агент проверки изучает изменения, запускает доступные тесты и сообщает о рисках. Координатор собирает результаты и решает, нужны ли дополнительные исправления.

Подход полезен для сложных задач с относительно независимыми этапами: анализа большой кодовой базы, подготовки миграций, проверки безопасности и ревью изменений. При этом разделение ролей само по себе не гарантирует более качественный код. Возникают накладные расходы на обмен контекстом, возможны противоречивые выводы и конфликты изменений.

Для короткой задачи один агент обычно проще и экономнее. Мультиагентная архитектура оправдана, когда выигрыш от специализации и параллельной работы превышает затраты на координацию.

ИИ-агент (AI-agent)

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

Посмотреть термин

Субагент (Subagent)

Субагент (subagent) — вспомогательный AI-агент, которому основной агент поручает отдельную задачу. Он действует по заданным инструкциям, использует разрешённые инструменты и возвращает результат агенту, который его запустил.

Посмотреть термин

Агентное программирование (Agentic coding)

Agentic Coding (агентное программирование) — подход к разработке, при котором программист делегирует AI-агенту выполнение многошаговых задач. Агент самостоятельно определяет последовательность действий, работает с кодом и доступными инструментами и проверяет промежуточные результаты.

Посмотреть термин
Мультиагентная система (Multi-Agent System) – что это такое