研究者のYuxing Lu、Yicheng Chen、Shanchan Wuは、大規模言語モデル(LLM)エージェントが作業中に自身のタスク実行計画を書き換えられる「Procedural Graph」フレームワークを発表しました。

今日のエージェントが抱える問題

ほとんどのLLM駆動型アシスタントは、レシピを暗唱することしかできないシェフのようなものです。モデルはステップを一時的なメモリに保存し、次のツールを選択し、次のトークンが正しく生成されることを祈るだけです。実際には、主に3つの失敗が頻繁に発生します。

  • ゴールの逸脱(Goal drift) – 数回のやり取りの後、エージェントが本来の目的を忘れてしまう。
  • ツールの誤用 – APIを誤った順序で呼び出したり、同じ呼び出しを繰り返したりする。
  • 学習されないミス – 失敗を永続的に記録するものがないため、無関係なセッションでも同じエラーが再発する。

推論が暗黙的なままなので、開発者はなぜそのアクションが発生したのかを把握できず、ユーザーは体系的な欠陥を修正することができません。

プロンプトをグラフに変換する

Procedural Graphは、「メモリのみ」のアプローチを、明示的で編集可能な構造へと置き換えます。このフレームワークは、以下の3つのコア要素を定義しています。

要素 役割
ノード 「フライトを検索」や「支払いを検証」といった具体的なステップ。
エッジ ノード間のフロー。直線的なシーケンス、条件分岐(if/then)、ループなど。
属性(Attribute) ノードまたはエッジに付随するメタデータ(例:成功率、平均実行時間、信頼度スコアなど)。

LLMエージェントがリクエストを受け取ると、まずそのリクエストを既存のグラフにマッピングするか、その場で新しいグラフを構築します。実行はエッジに従って進み、ツールを呼び出し、結果を属性に保存します。グラフはモデルのトークンストリームの外側に存在するため、人間がそれを検査、可視化、編集することが可能です。

5つのステップによる自己進化

この手法の新規性は、エージェントが自身のグラフを改善できるループにあります。

  1. 記録(Record): エージェントが辿るすべてのパスを記録し、入力、ツール呼び出し、および結果をログに保存する。
  2. 比較(Compare): 成功したパスと失敗したパスを比較し、どこで分岐したかを特定する。
  3. 診断(Diagnose): ノードの属性(例:低い成功率)やエッジの条件を調査して、エラーの原因を診断する。
  4. 提案(Propose): LLMが失敗の分析結果を受け取り、グラフの修正案を提示する(不足している検証ステップの追加、冗長なループの削除、条件の厳格化など)。
  5. 検証(Validate): 修正されたグラフをテストインスタンスで検証する。パフォーマンスが向上すれば、その変更が適用される。

グラフが「信頼できる唯一の情報源(single source of truth)」として機能するため、エージェントは人間の助けを借りずにステップを追加したり、行き止まりを削除したり、ロジックを組み直したりできます。人間が作成した不完全なワークフローであっても、時間の経過とともに改善されていくのです。

なぜこの転換が重要なのか

暗記を超えた汎用化

静的なプロンプトは、単一のタスクインスタンスしか捉えられません。グラフは、「検索して予約」「データ入力パイプライン」「トラブルシューティングの対話」といったクラス全体に対する「やり方」を抽象化するため、同じ構造を異なるパラメータで利用できます。チームは、バリエーションごとにモデルへプロンプトを再入力する必要がなくなります。

透明性の高い意思決定

グラフはフローチャートのような見た目になります。ステークホルダーは、どのノードがどのツール呼び出しをトリガーしたのか、なぜその分岐が選ばれたのかを正確に追跡できます。

ニューロ・シンボリックな相乗効果

Procedural Graphは、ディープラーニングによるパターン認識(LLMの言語理解)と、シンボリックな推論(明示的なグラフロジック)を組み合わせます。LLMはステップの生成や修正のための「直感」を提供し、グラフは論理的な一貫性を強制します。著者らはこれを、LLMに「システム2」の脳を与えることだと説明しています。つまり、生のトークン予測による高速で連合的な「システム1」を補完する、慎重で検証可能なコントローラーです。

まとめ

Procedural Graphは、LLMエージェントに、各実行から学習することを可能にする「変更可能で検査可能なバックボーン」を提供します。一過性のプロンプトを永続的な構造へと変換することで、このアプローチは、壊れにくく、理解しやすく、そして新しい課題に対してより適応力の高いAIアシスタントを実現することを約束します。