Все статьи
Нейросети · 3 мин

Мультиагентная система: что это простыми словами

Мультиагентная система — это несколько ИИ-агентов, которые делят одну задачу на части и работают вместе. Разбираем, как это устроено и с чего начать.

Олег ЕмельяновДелаю продукты с помощью ИИ

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

Проще всего сравнить с командой на проекте. Если один разработчик пишет код, тестирует его и сам же проверяет результат — он справится, но медленно и с риском пропустить ошибку. Если задачу делят: один пишет, другой тестирует, третий проверяет — получается быстрее и надёжнее. Мультиагентная система устроена так же, только вместо людей — отдельные ИИ-агенты: у каждого свой промпт, свой набор инструментов и своя узкая задача.

Как это устроено

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

Каждый агент-специалист работает со своим промптом и своим набором инструментов — ему не нужно держать в голове контекст всей задачи, только свою часть. Агенты обмениваются сообщениями между собой или через оркестратора, а не напрямую с человеком. Когда подзадачи выполнены, кто-то — отдельный агент или тот же оркестратор — собирает кусочки в один ответ.

Путь задачи от постановки до готового ответа

Постановка · ставишь задачу оркестратору · Раздача · агенты получают часть работы · Сборка · итог собирает один агент

Пример из жизни

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

Оркестратор делит отчёт между двумя агентами

Собери отчёт по конкурентам и сделай вывод о цене · Передал поиск цен одному агенту, вывод — другому. Они работают параллельно, я соберу отчёт из двух частей.

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

С чего начать

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

Один агент на всё превращается в команду агентов

Один агент делает всё сам — ищет, пишет и проверяет · Задачу делят несколько агентов, каждый — за свой шаг · каждый — за свой шаг

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

Вопросы и ответы

Чем мультиагентная система отличается от одного ИИ-агента?

Один агент делает всю задачу сам — от начала до конца. В мультиагентной системе задачу делят между несколькими агентами, у каждого своя роль и свой кусок работы, а оркестратор собирает их ответы в один результат.

Где используют мультиагентные системы?

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

С чего начать делать мультиагентную систему?

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

Читать ещё