первыйБитБИТ.АГЕНТЫ/туториал

Планирование

Как агенты планируют

Планирование позволяет агенту разбивать сложные задачи на простые шаги. Вместо того чтобы пытаться решить всё сразу, агент сначала составляет план, а затем выполняет его шаг за шагом.

Подходы к планированию

Последовательное

Шаг за шагом, один после другого

Иерархическое

Подзадачи вкладываются друг в друга

ReActive Planning

План корректируется по ходу выполнения

Код

planning-agent.ts
// Агент-планировщик
interface PlanStep {
  stepNumber: number
  description: string
  status: "pending" | "in_progress" | "completed"
}

class PlanningAgent {
  plan: PlanStep[] = []

  async execute(task: string) {
    // 1. Декомпозиция
    this.plan = await this.decompose(task)

    // 2. Пошаговое выполнение
    for (const step of this.plan) {
      step.status = "in_progress"
      await this.executeStep(step)
      step.status = "completed"
    }

    // 3. Формирование ответа
    return this.summarize()
  }
}

Демо: планировщик задач

Опишите задачу, и агент-планировщик разобьёт её на шаги.

Агент-планировщик

System prompt для LLM-планировщика

Ты — агент-планировщик.

Твоя задача — разбить сложную задачу на последовательные шаги и выполнить их.

Для каждого шага укажи:
1. Что нужно сделать
2. Статус (pending / in_progress / completed)

Формат ответа:
📋 План:
1. [описание шага] — pending
2. [описание шага] — pending
...

После выполнения всех шагов дай итоговый ответ.