Модуль 4 из 4

Агенты, мультиагентность и архитектурные паттерны

Как строить системы, которые не просто отвечают, а автономно решают задачи

Что внутри этого модуля

  1. AI-агенты: что это и чем отличаются от просто LLM
  2. Архитектурный паттерн Loop (Agentic Loop)
  3. Архитектурный паттерн Map-Reduce: разбиение сложных задач
  4. Мультиагентные системы: разделяй и делегируй
  5. Архитектурные паттерны: какой когда использовать
  6. Итоги курса

1. AI-агенты: что это и чем отличаются от просто LLM

До сих пор мы рассматривали LLM как систему «вопрос-ответ»: вы спросили — модель ответила. Это полезно, но ограниченно. Агент (agent) — это следующий эволюционный шаг: система, которая не просто отвечает, а планирует и выполняет многошаговые задачи.

AI-агент (AI Agent)
Автономная система на основе LLM, которая: (1) получает цель, (2) самостоятельно планирует шаги для её достижения, (3) использует инструменты для выполнения шагов, (4) анализирует результаты и корректирует план при необходимости, (5) повторяет цикл до достижения цели или исчерпания попыток.

Отличие агента от чат-бота

ХарактеристикаЧат-бот (LLM)Агент
Модель работыОдин запрос → один ответЦель → План → Действие → Наблюдение → Повтор
АвтономностьЖдёт ввода пользователяРаботает автономно, запрашивает ввод только когда нужно
ИнструментыНе использует (или один вызов)Может вызывать множество инструментов в разной последовательности
ПамятьТолько контекстное окноРабочая память + внешняя (векторная БД, файлы)
Обработка ошибокНет (отвечает «как есть»)Обнаруживает неудачу, пробует другой подход
Пример«Какая погода?»«Найди 5 лучших ресторанов рядом, проверь их рейтинги, забронируй столик в лучшем на 19:00»

Минимальные компоненты агента

  1. LLM-мозг. Принимает решения на основе контекста и доступной информации.
  2. Инструменты (tools). Возможность выполнять действия: поиск, запись, API-вызовы, выполнение кода.
  3. Память. Сохранение промежуточных результатов, истории действий, извлечённых фактов.
  4. Планировщик. Механизм разбиения цели на подзадачи и их последовательного выполнения.
  5. Цикл принятия решений. Наблюдение → Мысль → Действие → Наблюдение → ... (loop, подробнее в следующем разделе).
Компоненты AI-агента
Простая аналогия: Чат-бот — это калькулятор (ввод → результат). Агент — это повар на кухне: получил заказ (цель), открыл холодильник (инструмент — поиск), проверил рецепт (инструмент — чтение), начал готовить, попробовал, посолил (корректировка), подал блюдо.

2. Архитектурный паттерн Loop (Agentic Loop)

Loop (или Agentic Loop) — это центральный архитектурный паттерн любого агента. Это цикл, в котором агент работает: думает, действует, наблюдает результат и решает, что делать дальше.

Agentic Loop (агентный цикл)
Повторяющийся цикл: (1) Observation — агент получает информацию из окружения (результаты инструментов, сообщения); (2) Thought — анализирует и принимает решение; (3) Action — выполняет действие через инструмент. Цикл продолжается, пока агент не решит, что цель достигнута, или не исчерпает лимит итераций.

Классический ReAct Loop

Один из самых популярных вариантов агентного цикла — ReAct (Reasoning + Acting). Агент чередует «мысли» и «действия»:

  1. Thought (Мысль): «Мне нужно найти рестораны. Я должен использовать поисковый инструмент.»
  2. Action (Действие): Вызов search_restaurants(«Москва, итальянская кухня»)
  3. Observation (Наблюдение): Получен список из 12 ресторанов.
  4. Thought: «12 — слишком много. Нужно отфильтровать по рейтингу выше 4.5.»
  5. Action: Вызов filter_by_rating(min=4.5)
  6. Observation: Осталось 3 ресторана.
  7. Thought: «Задача выполнена. У меня есть 3 подходящих ресторана. Отдаю результат.»
  8. Final Answer: Список с рекомендациями.

Ключевые параметры Loop

ПараметрНазначениеРекомендация
Max iterationsМаксимальное количество шагов в цикле5-15 для большинства задач
Max tokens per stepЛимит токенов на один шаг (мысль + действие)Зависит от контекстного окна; оставьте хотя бы 50% окна для накопления истории
Stop conditionsУсловия завершения циклаДостижение цели, превышение лимита итераций, явный сигнал от агента «завершаю»
Reflection stepПериодический самоанализ агентом своего прогрессаКаждые 3-5 шагов: «Что я уже сделал? Что осталось? Не пора ли сменить подход?»
Проблема зацикливания: Агенты склонны застревать в циклах — повторять одни и те же действия, ожидая другого результата. Всегда ставьте жёсткий лимит итераций и добавляйте «предохранитель»: если последние 3 действия не изменили ситуацию — принудительно завершайте цикл или смените стратегию.

3. Архитектурный паттерн Map-Reduce: разбиение сложных задач

Map-Reduce (чанкинг в контексте архитектуры агентов, не путать с chunking документов из RAG) — это подход к решению сложных задач через их разбиение на управляемые фрагменты. Если задача слишком большая для одного прогона агента, chunky-подход предлагает разделить её на этапы и обрабатывать последовательно.

Паттерн Map-Reduce
Архитектурный подход, при котором большая задача декомпозируется на изолированные подзадачи (chunks), каждая из которых решается отдельным вызовом агента со своим контекстом. Результаты чанков агрегируются в финальный ответ.

Когда нужен Map-Reduce

Как работает Map-Reduce: пример

Задача: «Проанализируй годовой отчёт компании на 400 страницах и напиши executive summary на 2 страницы.»

  1. Декомпозиция. Отчёт разбивается на секции: финансовые показатели, операционная деятельность, риски, планы.
  2. Параллельная обработка. Каждая секция отправляется отдельному агенту (или последовательно одному агенту) с запросом «выдели 3-5 ключевых выводов из этого раздела».
  3. Агрегация. Все выводы собираются и передаются агенту-суммаризатору с задачей «собери из этих тезисов целостное executive summary».
  4. Финальная полировка. Итоговый текст проверяется на связность, стиль и форматирование.
Map-Reduce: обработка больших документов

Map-Reduce vs Loop: ключевые отличия

КритерийLoopMap-Reduce
СутьЦикл: думай → делай → смотриДекомпозиция: разбей на части → обработай → собери
Размер задачиСредняя, влезает в контекстБольшая, не влезает в одно контекстное окно
ЗависимостиКаждый шаг зависит от предыдущегоЧанки можно обрабатывать параллельно
КонтекстНакопительный (история всех шагов)Изолированный (каждый чанк — свежий контекст)
ПримерНайди и забронируй ресторанПроанализируй 1000 страниц документа
Гибридный подход: В реальных проектах Map-Reduce и Loop часто используются вместе. Loop управляет общим процессом (что делать дальше), а Map-Reduce отвечает за обработку больших объёмов данных внутри одного шага.

4. Мультиагентные системы: разделяй и делегируй

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

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

Зачем нужна мультиагентность

Типовые роли агентов

РольЗадачаПример промпта
Оркестратор (Orchestrator)Принимает задачу, декомпозирует, распределяет между агентами, собирает результаты«Разбей задачу на подзадачи и назначь исполнителей»
Исследователь (Researcher)Ищет и анализирует информацию«Найди все релевантные источники по теме»
Исполнитель (Executor)Выполняет конкретные действия: пишет код, создаёт документы«Реализуй функцию по спецификации»
Ревьюер (Reviewer)Проверяет качество работы других агентов«Проверь этот код на ошибки и предложи улучшения»
Редактор (Editor)Вносит правки по замечаниям ревьюера«Примени следующие правки к документу: ...»
Суммаризатор (Summarizer)Собирает результаты в итоговый ответ«Объедини выводы всех агентов в единый отчёт»

Пример: написание курса (как сейчас)

Прямо сейчас этот курс создаётся через мультиагентную систему:

  1. Агент-автор пишет содержимое каждого модуля.
  2. Агент-ревьюер проверяет на фактические ошибки, логику и понятность.
  3. Агент-редактор вносит правки по замечаниям ревьюера.
  4. Агент-оркестратор координирует процесс и следит за связностью между модулями.
Мультиагентная архитектура
Сложность растёт экспоненциально: Каждый дополнительный агент усложняет систему. Два агента — это один канал коммуникации. Десять агентов — 45 каналов. Начинайте с 2-3 агентов, добавляйте новых только когда текущая архитектура не справляется.

5. Архитектурные паттерны: какой когда использовать

Мы рассмотрели все основные строительные блоки. Теперь соберём их в систему рекомендаций.

Дерево решений: с чего начать и когда усложнять

Ваша задачаНачните сУсложните доПричина усложнения
Простой чат-бот FAQLLM + промптНе нужно усложнять
FAQ по вашим документамRAG (LLM + векторная БД)RAG + гибридный поискЕсли ранжирование результатов хромает
Ассистент с действиями (отправить, создать)LLM + Function CallingMCPЕсли больше 3 интеграций или несколько проектов
Задача в 3-10 шаговLLM + Loop (ReAct)Loop + памятьЕсли агент забывает промежуточные результаты
Обработка большого документаMap-Reduce (разбивка + агрегация)Map-Reduce + RAGЕсли нужен не summary, а поиск по документу
Сложный проект (разные типы задач)Мультиагентная система (2-3 агента)Полноценная мультиагентная архитектураЕсли 2-3 агента не покрывают все аспекты

Золотое правило архитектуры AI-систем

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

Чек-лист перед выбором архитектуры

  1. Можно ли решить задачу одним вызовом LLM с хорошим промптом?
  2. Нужны ли модели внешние данные? (Если да — RAG)
  3. Нужно ли модели выполнять действия? (Если да — Function Calling / MCP)
  4. Требуется ли несколько последовательных шагов? (Если да — Loop)
  5. Настолько ли большой объём данных, что он не влезает в контекст? (Если да — Map-Reduce)
  6. Требуются ли принципиально разные компетенции? (Если да — мультиагентность)

6. Итоги курса

Вы прошли путь от «что такое AI» до архитектуры мультиагентных систем. Давайте зафиксируем ключевые выводы всего курса.

Что дальше? Технологии AI развиваются быстрее, чем любой учебник. Вот что поможет оставаться в курсе: