Иерархические супервизоры (координатор + исполнители)
Супервизор планирует и делегирует задачи, а исполнители выполняют их и отчитываются — надёжный шаблон для сложных задач.
«Иерархические супервизоры (координатор + исполнители)» — бесплатный урок AI Agents на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения AI Agents, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс AI Agents содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Шаблон руководителя
Один агент-руководитель решает, что делать, и делегирует задачи специализированным рабочим агентам. Рабочие агенты отчитываются, а руководитель объединяет результаты.
Это ближе к работе человеческих команд, чем свободные диалоги.
Структура
Два уровня, иногда больше:
- Supervisor — видит запрос пользователя, разбивает его на части, выбирает рабочих агентов и объединяет результаты
- Workers — специализированные агенты (исследование, код, математика), у каждого свои инструменты и запросы
Зачем нужна иерархия?
- Более ясное рассуждение — руководитель видит общую картину
- Специализация — каждый рабочий агент небольшой и сосредоточенный
- Более простая оценка — проверяйте рабочих агентов независимо
- Проще добавлять новые возможности — достаточно зарегистрировать нового рабочего агента
LangGraph Implementation
from langgraph.graph import StateGraph, END
from typing import TypedDict, Annotated
import operator
class State(TypedDict):
messages: Annotated[list, operator.add]
next: str
def supervisor(state):
# Ask LLM which worker should handle this
decision = supervisor_llm.invoke(state['messages']).content # 'researcher' / 'coder' / 'FINISH'
return {'next': decision}
def researcher(state):
result = research_agent.run(state['messages'][-1].content)
return {'messages': [{'role': 'tool', 'content': result}], 'next': 'supervisor'}
def coder(state):
result = code_agent.run(state['messages'][-1].content)
return {'messages': [{'role': 'tool', 'content': result}], 'next': 'supervisor'}Wiring the Graph
g = StateGraph(State)
g.add_node('supervisor', supervisor)
g.add_node('researcher', researcher)
g.add_node('coder', coder)
g.set_entry_point('supervisor')
g.add_conditional_edges(
'supervisor',
lambda s: s['next'],
{'researcher': 'researcher', 'coder': 'coder', 'FINISH': END}
)
g.add_edge('researcher', 'supervisor')
g.add_edge('coder', 'supervisor')
app = g.compile()Независимость рабочих агентов
Каждый рабочий агент — автономный мини-агент. Создавайте и проверяйте каждого отдельно, а затем объединяйте их под руководством Supervisor.
Наборы инструментов рабочих агентов
Ограничивайте каждого рабочего агента ONLY необходимыми ему инструментами:
- Researcher — поиск, получение данных
- Coder — чтение файла, запись файла, выполнение Python
- База данных — список таблиц, выполнение SQL
Описания инструментов становятся понятнее, а путаницы меньше.
Формат обмена данными
Рабочие агенты возвращают Supervisor структурированные краткие отчёты, а не полные расшифровки диалогов. Это экономит токены и упрощает для Supervisor объединение результатов:
class WorkerResult(BaseModel):
summary: str
citations: list[str]
next_step_suggestion: str = ''Завершение
Supervisor решает, когда остановиться. Обычно используются такие условия:
- Уверенность выше порога
- От рабочего агента получен сигнал о завершении задачи
- Превышен счётчик шагов
Многоуровневые иерархии
Для очень сложных задач добавьте третий уровень: отдельного руководителя команды для разработки, другого для исследования и так далее. Каждый делегирует задачи рабочим агентам своей области.
Профиль стоимости
Каждое решение Supervisor — это вызов LLM. Каждый рабочий агент выполняет собственный цикл. Общая стоимость примерно равна числу решений Supervisor × стоимости одного решения + числу циклов рабочих агентов × стоимости одного цикла.
Когда использовать
- Сложные задачи с чётко выделенными предметными областями
- Задачи, для которых на разных шагах нужны разные стили запросов
- Системы, в которые требуется постепенно добавлять возможности
Антишаблоны
- Supervisor выполняет всю настоящую работу — это сводит на нет смысл подхода
- Рабочие агенты вызывают друг друга без ведома Supervisor — контроль теряется
- Слишком много рабочих агентов (более 10) — выбор Supervisor становится ненадёжным
Роль Supervisor
Какова главная задача Supervisor в этом шаблоне?
Итоги
Supervisor и рабочие агенты лучше одного большого агента. Каждый рабочий агент небольшой, сосредоточенный и может проверяться независимо. Supervisor решает, кто и над чем работает.
Часто задаваемые вопросы
Урок «Иерархические супервизоры (координатор + исполнители)» бесплатный?
Да — полный текст урока «Иерархические супервизоры (координатор + исполнители)» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс AI Agents, подпишись на CoddyKit PRO. Курс AI Agents содержит 4 уроков всего.
Чему я научусь в уроке «Иерархические супервизоры (координатор + исполнители)»?
Супервизор планирует и делегирует задачи, а исполнители выполняют их и отчитываются — надёжный шаблон для сложных задач. Ты практикуешь AI Agents с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать AI Agents?
Предыдущий опыт не требуется. AI Agents на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Иерархические супервизоры (координатор + исполнители)»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке AI Agents?
Да. Каждый урок AI Agents включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Мультиагентная система на основе диалога (AutoGen)
- Иерархические супервизоры (координатор + исполнители)
- Роли и специализации агентов
- Протоколы связи (шины сообщений)