По мотивам двух рассказов про нейросети за неделю я решил написать небольшое разъяснение,
что такое агент, что такое воркфлоу и как их стоит разграничивать. Просто кажется, что мы, и я в том числе, начали всё смешивать в кучу.
➡️
Воркфлоу: порядок шагов прописываем мы, LLM исполняет.
➡️
Агент: мы даём цель и инструменты, модель сама решает что вызвать, в каком порядке и когда остановиться.
Если в твоём описании агента написано «сначала сделай структуру, потом черновик, потом проверь редполитику» и нейросеть просто выполняет шаги в этом порядке — это
воркфлоу. Ты прописал поток, модель исполняет.
Если нейросеть сама решает: «мне не хватает данных, пойду поищу в базе знаний» или «структура слабая, переделаю перед тем как писать» — и ты это не прописывал явно — это
агент. Модель управляет потоком сама.
На практике у тебя скорее всего получится
гибрид, и это нормально. Но важно понимать, где именно проходит граница, потому что это определяет где искать баги и как управлять качеством.
И немного теории. Есть четыре воркфлоу-архитектуры:1️⃣
Prompt Chaining — цепочка вызовов LLM, результат каждого шага передаётся в следующий. Между шагами gate: не прошёл валидацию — шаг перезапускается. Большинство моих агентов написаны в этом воркфлоу.
2️⃣
Routing — LLM классифицирует запрос один раз, код направляет к нужному обработчику. Одно решение, один раз — это ещё воркфлоу. Это то, что я реализую сейчас, чтобы не терять контекст. Подробнее
вот тут.
3️⃣
Parallelization — два варианта. Sectioning: задача бьётся на независимые части, каждую обрабатывает отдельный LLM параллельно, агрегатор собирает. Voting: несколько LLM решают одну задачу независимо, побеждает большинство.
4️⃣
Evaluator-Optimizer — генератор создаёт, оценщик критикует, генератор переделывает. Цикл контролируется кодом. Больше 2–3 итераций не имеет смысла: контекст раздувается, модель путается в своих версиях.
Последние два воркфлоу я использую, например, для агентов редактуры и проверки редполитики.
И две агентские архитектуры:1️⃣
ReAct (Reasoning + Acting) — базовая агентская архитектура. Цикл: Think (какой инструмент вызвать) → Act (инструмент выполняется) → Observe (результат в контекст, хватит или ещё шаг). Повторяется пока модель сама не решит что данных достаточно. Это работает под капотом когда Claude Code читает и правит файл.
2️⃣
Orchestrator-Workers — оркестратор разбивает задачу на части и раздаёт субагентам. Количество субагентов определяется динамически под конкретную задачу, не прописано в коде — в этом отличие от Parallelization. Каждый субагент — отдельный ReAct со своим контекстом.
Далее разберу подробнее воркфлоу-архитектуры. Там под капотом тоже интересно.
#ai_agents
📥Инженер Контекста