Re Reference AI

エージェント

プランナーとは

Planner

与えられた目標を、実行可能なサブタスクの手順へ分解するエージェントの構成要素

エージェント計画

ひとことで言うと

目標を、実際にこなせる細かい手順に分解する係を担うAIの部品。

概要

プランナー(Planner)とは、AIエージェントが持つ役割・構成要素の1つで、与えられた目標を達成するために必要なサブタスクを洗い出し、実行すべき手順(計画)を立てる部分を指す。 プランナーが立てた計画に基づいて、実際の行動やツール呼び出しを担う「エグゼキューター」が各ステップを実行するという役割分担(Plan-and-Execute方式)を取るエージェント設計が代表的な使われ方の1つ。 単一のLLM呼び出しの中で計画と実行を同時に行わせる設計もあれば、プランナーとエグゼキューターを別々のLLM呼び出しやエージェントとして明確に分離する設計もある。 計画は一度立てて終わりではなく、実行結果を踏まえて途中で計画自体を修正する「動的な再計画」を組み込む設計も多く、想定外の実行結果への対応力を高める。

背景

LLMに複雑なタスクを一度にこなさせようとすると、途中で目標を見失ったり非効率な手順を取ったりすることがある。 プランナーという役割を明確に分離することで、まず全体の見通し(計画)を立ててから個々のステップを実行するという、人間の問題解決に近い進め方をエージェントへ取らせるため、この構成要素が重視されるようになった。

アーキテクチャ

プランナーは、目標とこれまでの状況(観測結果)を入力として受け取り、次に実行すべきサブタスクの列、あるいは次の1ステップを出力する。 計画は一度に全ステップを確定させる場合もあれば、実行結果を見ながら逐次的に更新する場合もある。

利点

  • 複雑な目標を、見通しの立った実行可能なステップへ分解できる
  • 計画と実行を分離することで、各役割に適したプロンプトやモデルを使い分けやすくなる

欠点

  • プランナーの立てた計画が不適切だと、後続の実行全体に悪影響が及ぶ
  • 状況の変化に応じて計画を柔軟に修正する仕組みがないと、当初の計画に固執し失敗しやすくなる

比較

  • エグゼキュータープランナーが立てた計画を、実際に実行するのがエグゼキューターの役割
  • AIエージェントプランナーは、AIエージェントを構成する要素の1つ
  • Chain-of-ThoughtChain-of-Thoughtが単一の推論過程を段階的に言語化するのに対し、プランナーは複数のサブタスクへの分解・実行計画の立案を担う

関連用語

エグゼキューターAIエージェントChain-of-Thoughtマルチエージェントオーケストレーター

よくある質問

プランナーとエグゼキューターは必ず別のLLM呼び出しにする必要がある?

必須ではない。 1つのLLM呼び出しの中で計画と実行を同時に行わせる設計も一般的だが、タスクが複雑な場合は役割を分離した方が安定しやすいとされる。

参考文献

関連Zenn記事