Запросить демо

Архитектурные паттерны ИИ агентов: ReAct, Plan-and-Execute и Chain-of-Thought

Сергей Шлыков
Сергей Шлыков
Апр 30, 2026 | 10 мин на чтение

Chain-of-Thought: базовый паттерн рассуждений

Chain-of-Thought (CoT) — это техника, при которой модель явно генерирует промежуточные шаги рассуждения перед выдачей финального ответа. В контексте агентов CoT используется как внутренний «внутренний монолог», позволяющий LLM декомпозировать сложные задачи.

Стандартный промпт для CoT включает инструкцию «думай шаг за шагом» (think step by step) либо few-shot примеры с развёрнутыми цепочками рассуждений. Экспериментально доказано, что такой подход снижает процент ошибок на задачах многошаговой логики на 30–40% по сравнению с прямым ответом.

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

ReAct: интеграция рассуждений и действий

ReAct (Reason + Act) — на сегодняшний день наиболее распространённый паттерн для агентов, требующих взаимодействия с внешними системами. Цикл работы: Thought → Action → Observation → повтор до получения финального ответа.

Каждая итерация цикла выглядит следующим образом:

  • Thought: модель формулирует, что нужно узнать или сделать
  • Action: выбор инструмента и параметров вызова (например: search("последняя версия LangChain"))
  • Observation: результат выполнения инструмента, добавляемый в контекст

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

ReAct хорошо работает при глубине цепочки до 10–15 шагов. При большей глубине контекст «засоряется» промежуточными наблюдениями, и модель начинает «галлюцинировать» или зацикливаться.

Plan-and-Execute: разделение планирования и исполнения

Plan-and-Execute (P&E) разделяет агента на две роли: Planner и Executor. Planner (обычно более мощная модель или специализированный промпт) строит детальный план задачи. Executor последовательно выполняет шаги плана, при необходимости корректируя его.

Архитектура P&E решает ключевую проблему ReAct — «близорукость»: ReAct-агент выбирает следующее действие, видя только текущий контекст, тогда как P&E позволяет спланировать всю последовательность шагов заранее.

Типичная реализация P&E на LangChain:

planner = create_structured_chat_agent(llm_powerful, tools, planner_prompt)

executor = AgentExecutor(agent=create_react_agent(llm_fast, tools, executor_prompt), tools=tools)

plan = planner.invoke({"input": user_query})
for step in plan.steps:
    result = executor.invoke({"input": step})

Недостаток P&E — негибкость: если план составлен неверно, исполнитель может не иметь контекста для самостоятельной корректировки. Рекомендуется добавлять механизм re-planning при ошибках исполнения.

Гибридные архитектуры и практические рекомендации

На практике большинство production-систем используют гибридные архитектуры. Наиболее эффективные комбинации:

  • CoT + ReAct: внутренний монолог реализуется через CoT, а вызовы инструментов — через ReAct. Это стандартный подход в Claude и GPT-4 с function calling.
  • P&E + ReAct: планировщик строит граф задач, каждый узел которого выполняется ReAct-агентом. Используется в AutoGen и LangGraph.
  • Reflexion: агент после каждого неудачного исполнения генерирует «рефлексию» (анализ ошибок) и повторяет попытку. Значительно повышает качество на задачах с верифицируемым результатом (код, математика).

При выборе паттерна руководствуйтесь следующими критериями: если задача требует до 5 шагов и хорошо определена — используйте ReAct; если задача сложная и многошаговая — P&E; если нужна высокая точность с возможностью самокоррекции — Reflexion или P&E с re-planning.

Независимо от выбранного паттерна, всегда устанавливайте максимальное количество итераций (max_iterations), чтобы предотвратить бесконечные циклы. Типичные значения: 10–20 для ReAct, 3–5 для P&E с re-planning.

Оценка паттернов по ключевым метрикам

Для выбора оптимального паттерна сравните их по следующим характеристикам:

  • CoT: низкая стоимость токенов, нет внешних вызовов, ограниченная гибкость, лучший выбор для задач «в контексте».
  • ReAct: умеренная стоимость, поддержка инструментов, высокая прозрачность, оптимален для задач с 3–15 шагами.
  • Plan-and-Execute: более высокая стоимость за счёт двух LLM-вызовов на этапе планирования, но превосходное качество на длинных задачах, лучший выбор для enterprise-сценариев.

Рефлексия значительно повышает качество, но увеличивает стоимость в 2–3 раза — применяйте только там, где точность критична.

Заключение

Выбор архитектурного паттерна — одно из первых и наиболее важных решений при проектировании ИИ агента. ReAct остаётся золотым стандартом для большинства задач благодаря балансу простоты и эффективности. Plan-and-Execute выигрывает на сложных многошаговых задачах, где важно глобальное планирование. Гибридные подходы и Reflexion обеспечивают наивысшее качество ценой дополнительных вычислительных ресурсов. Начинайте с ReAct, профилируйте производительность и переходите к более сложным паттернам только при наличии обоснованных требований.

 

Chatme.ai
Ответим на ваши вопросы по чат-бот платформе chatme.ai
Задать вопрос
Сергей Шлыков
Сергей Шлыков
Основатель & CEO

Поделиться статьёй: