Шаблоны работы агентов: планирование — выполнение — проверка
Сначала составьте план, затем выполняйте его шаг за шагом и проверьте результат по критериям приёмки — это надёжнее одношагового подхода
«Шаблоны работы агентов: планирование — выполнение — проверка» — бесплатный урок AI Agents на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения AI Agents, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс AI Agents содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Зачем сначала составлять PLAN?
Одноразовая генерация кода подходит для крошечных задач («напишите fizzbuzz»). Для реальных изменений в программном обеспечении агент должен:
- Plan — разложить задачу на шаги
- Выполнить — реализовать каждый шаг
- Проверить — провести тесты, проверку стиля и запуск
- Повторять — исправлять, пока результат не будет проверен
Step 1: Plan
Попросите модель создать структурированный PLAN:
PLAN_PROMPT = '''
You are a senior engineer. Given this task, produce a JSON plan:
{steps: [{description, files_to_touch: [str], test_commands: [str]}], risks: [str]}
Task: {user_task}
'''Plan Schema
from pydantic import BaseModel
class Step(BaseModel):
description: str
files_to_touch: list[str]
test_commands: list[str]
class Plan(BaseModel):
steps: list[Step]
risks: list[str]Step 2: Выполнение
Выполняйте каждый шаг по порядку. Передавайте модели содержимое файлов в качестве контекста:
for step in plan.steps:
context = {f: read_file(f) for f in step.files_to_touch}
diff = llm.invoke(f'Implement: {step.description}\nFiles:\n{context}').content
apply_diff(diff)Step 3: Проверка
Запускайте тесты, проверку стиля и сборку для каждого шага:
for cmd in step.test_commands:
result = sandbox.run(cmd)
if result.exit_code != 0:
# Verification failed; iterate
loop_until_verified(step, result.stderr)Step 4: Iterate Until Pass
MAX_ITERS = 5
for iter in range(MAX_ITERS):
result = sandbox.run(test_cmd)
if result.exit_code == 0:
break
fix = llm.invoke(f'Tests failed:\n{result.stderr}\nFix the code.').content
apply_diff(fix)Показывайте DIFFS, а не целые файлы
Для последовательных изменений модель должна создавать UNIFIED DIFFS:
diff = '''
--- a/main.py
+++ b/main.py
@@ -10,3 +10,4 @@
def add(a, b):
return a + b
+
+def sub(a, b): return a - b
'''
import patch
patch.fromstring(diff).apply()Качество PLAN имеет значение
Плохой PLAN обрекает выполнение на провал. Используйте более сильную модель для планирования (GPT-4o, Claude Sonnet 4.5), а более дешёвую — для выполнения (gpt-4o-mini, haiku), если бюджет ограничен.
Составляйте новый PLAN при остановке
Если проверка неоднократно завершается ошибкой, откажитесь от текущего PLAN и попросите LLM составить новый PLAN с учётом новой информации:
if iter == MAX_ITERS - 1:
new_plan = llm.invoke(f'Original plan failed. Errors: {errors}. Make a new plan.').contentКомпромисс при планировании на длинный горизонт
Чем длиннее горизонт, тем хуже планы модели. Для задач из 10 и более шагов создавайте общий PLAN, а затем уточняйте его на каждом шаге.
PLAN и критик
Пусть агент-критик проверит PLAN до начала выполнения. Это позволяет заранее обнаружить очевидные ошибки и обходится дешевле, чем исправление во время выполнения.
Показывайте PLAN пользователю
Покажите PLAN пользователю до начала выполнения. Позвольте ему отредактировать его:
approved_plan = await ask_user_to_approve_or_edit(plan)
execute(approved_plan)PLAN — выполнение — проверка
Почему этот шаблон надёжнее одноразовой генерации кода?
Итоги
Составляйте PLAN, выполняйте, проверяйте и повторяйте. Используйте сильную модель для планирования и дешёвую для выполнения, запускайте настоящие тесты. Показывайте PLAN пользователям, когда цена ошибки высока.
Часто задаваемые вопросы
Урок «Шаблоны работы агентов: планирование — выполнение — проверка» бесплатный?
Да — полный текст урока «Шаблоны работы агентов: планирование — выполнение — проверка» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс AI Agents, подпишись на CoddyKit PRO. Курс AI Agents содержит 4 уроков всего.
Чему я научусь в уроке «Шаблоны работы агентов: планирование — выполнение — проверка»?
Сначала составьте план, затем выполняйте его шаг за шагом и проверьте результат по критериям приёмки — это надёжнее одношагового подхода Ты практикуешь AI Agents с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать AI Agents?
Предыдущий опыт не требуется. AI Agents на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Шаблоны работы агентов: планирование — выполнение — проверка»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке AI Agents?
Да. Каждый урок AI Agents включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Шаблоны работы агентов: планирование — выполнение — проверка
- Инструменты для написания кода (чтение, редактирование, Bash)
- Циклы итеративного самокорректирования
- Архитектуры SWE-Agent и OpenDevin