Канал для разработчиков Frontend & Backend с полезными материалами по разработке, поиску работы и работе с AI.
Я 8 лет в веб-разработке, сейчас работаю Lead AI Fullstack Engineer и внедряю AI агентов.
@kostya_xxxx
Курс по AI: Kostya-it.pro/ai
Post #268
866
Оркестрация ИИ-агентов
Очень часто взаимодействую с оркестрацией агентов и решил разобрать как это может быть устроено на примере моего одного проекта.
Куда идет запрос: Фронтенд, бекенд, ИИ слой.?
Первым делом запрос с фронта идет не сразу в оркестратор, а в продуктовый бек. В нем добавляется вся информация о пользователе, его контекст, проверка сессии и тд. В общем дефолтный бек.
Оттуда уже запрос идет в бекенд оркестрации.
Самое важное за что отвечает оркестратор: безопасность, выбор модели, подбор агентов и инструментов. Разберем подробнее.
Гардрейлы на входе и выходе
Гардрейлы - это отдельный сервис, через который проходит запрос до и после модели.
На входе они чекают сам вопрос: на сколько данные деликатные, проверяется prompt injection, классификация данных.
После этой проверке происходит решение о маршруте: какую модель использовать, какой инструмент и нужно ли чистить/маркировать данные.
На выходе из этого узла агент уже получит "чистый" запрос и инструкцию какую LLM выбирать.
На выходе гардрейл проверит ответ модели:
утечка данных, корректность ответа. Если проверка/критика не прошла, запускается пост валидация или перегенераци ответа, а потом снова по цепочке.
Само решение по выбору модели исполняется на уровне прокси.
Выбор модели и маршрутизация
Маршрутизация моделей осуществляется единым прокси-слоем (litellm).
Это удобно тем что есть единый провайдер: агент вызывает «модель», не зная, локальная она или внешняя.
Обычно режимы такие:
1. Локальная модель в защищённом контуре для внутренних данных
2. Внешние модели через роутер для всего остального.
Цикл агента и инструменты
Внутренний агент работает в цикле.
Он получает запрос, контекст и список доступных инструментов ->
после модель решает, какой инструмент вызвать -> результат вызова возвращается в модель -> цикл повторяется, пока задача не решена или не достигнут лимит шагов.
Инструменты подключаются по MCP. Каждый источник (файлы, почта, таск-трекер) отдельный MCP-сервер.
Сверху стоит агрегатор MCP: он сводит все серверы в единую точку, чтобы агент видел один общий каталог инструментов вместо кучи подключений.
Под конкретный запрос оркестратор формирует набор инструментов и нужных агентов.
Это и есть мультиагентность: не один универсальный бот, а агенты, собираемые под задачу.
Итого:
Оркестратор = это слой между продуктовым бэкендом и моделями, который на каждый запрос решает: безопасен ли он, по какому маршруту и какой моделью отвечать, какие инструменты и агенты подключить, что делать при плохом ответе.
В воскресенье в 16 буду проводить ребятам урок по мультиагентным системам. Кому интересно отпишитесь в личку @kostya_xxxx
Очень часто взаимодействую с оркестрацией агентов и решил разобрать как это может быть устроено на примере моего одного проекта.
Куда идет запрос: Фронтенд, бекенд, ИИ слой.?
Первым делом запрос с фронта идет не сразу в оркестратор, а в продуктовый бек. В нем добавляется вся информация о пользователе, его контекст, проверка сессии и тд. В общем дефолтный бек.
Оттуда уже запрос идет в бекенд оркестрации.
Самое важное за что отвечает оркестратор: безопасность, выбор модели, подбор агентов и инструментов. Разберем подробнее.
Гардрейлы на входе и выходе
Гардрейлы - это отдельный сервис, через который проходит запрос до и после модели.
На входе они чекают сам вопрос: на сколько данные деликатные, проверяется prompt injection, классификация данных.
После этой проверке происходит решение о маршруте: какую модель использовать, какой инструмент и нужно ли чистить/маркировать данные.
На выходе из этого узла агент уже получит "чистый" запрос и инструкцию какую LLM выбирать.
На выходе гардрейл проверит ответ модели:
утечка данных, корректность ответа. Если проверка/критика не прошла, запускается пост валидация или перегенераци ответа, а потом снова по цепочке.
Само решение по выбору модели исполняется на уровне прокси.
Выбор модели и маршрутизация
Маршрутизация моделей осуществляется единым прокси-слоем (litellm).
Это удобно тем что есть единый провайдер: агент вызывает «модель», не зная, локальная она или внешняя.
Обычно режимы такие:
1. Локальная модель в защищённом контуре для внутренних данных
2. Внешние модели через роутер для всего остального.
Цикл агента и инструменты
Внутренний агент работает в цикле.
Он получает запрос, контекст и список доступных инструментов ->
после модель решает, какой инструмент вызвать -> результат вызова возвращается в модель -> цикл повторяется, пока задача не решена или не достигнут лимит шагов.
Инструменты подключаются по MCP. Каждый источник (файлы, почта, таск-трекер) отдельный MCP-сервер.
Сверху стоит агрегатор MCP: он сводит все серверы в единую точку, чтобы агент видел один общий каталог инструментов вместо кучи подключений.
Под конкретный запрос оркестратор формирует набор инструментов и нужных агентов.
Это и есть мультиагентность: не один универсальный бот, а агенты, собираемые под задачу.
Итого:
Оркестратор = это слой между продуктовым бэкендом и моделями, который на каждый запрос решает: безопасен ли он, по какому маршруту и какой моделью отвечать, какие инструменты и агенты подключить, что делать при плохом ответе.
В воскресенье в 16 буду проводить ребятам урок по мультиагентным системам. Кому интересно отпишитесь в личку @kostya_xxxx
- ❤ 8
- 👍 1
- 🔥 1





