概要
このページでは、Koogフレームワークにおけるサブグラフについて詳細な情報を提供します。これらの概念を理解することは、複数の処理ステップ間でコンテキストを維持する複雑なエージェントのワークフローを作成するために不可欠です。
はじめに
サブグラフは、複雑なエージェントのワークフローを管理しやすい順序のステップに分割できる、Koogフレームワークにおける基本的な概念です。各サブグラフは、独自のコンテキスト、責務、およびオプションのツールサブセットを持つ処理フェーズを表します。
サブグラフは、エージェントの全体的なワークフローを表すグラフである戦略の不可欠な部分です。戦略の詳細については、「カスタム戦略グラフ」を参照してください。
サブグラフの理解
サブグラフは、エージェント戦略内の自己完結型処理単位です。各サブグラフは次のとおりです。
- 一意の名前を持ちます
- エッジで接続されたノードまたはサブグラフのグラフを含みます
- ツールレジストリから任意のツールまたはツールのサブセットを使用できます
- 前のサブグラフ(または初期ユーザー入力)から入力を受け取ります
- 次のサブグラフ(または最終出力)に渡される出力を生成します
グラフ内でサブグラフのシーケンスを定義するには、エッジ接続を使用するか、then
キーワードを使用してシーケンスを定義します。詳細については、「カスタム戦略グラフ」を参照してください。
サブグラフのコンテキスト
各サブグラフは、以下にアクセスできるコンテキスト内で実行されます。
- 環境
- エージェント入力
- エージェント構成
- LLMコンテキスト(会話履歴を含む)
- ステートマネージャー
- ストレージ
- セッションと戦略
コンテキストはサブグラフ内の各ノードに渡され、ノードがその操作を実行するために必要なリソースを提供します。