定義

エージェントノードは、Difyチャットフローやワークフローにおいて自律的なツール呼び出しを実現するコンポーネントです。異なるエージェント推論戦略を統合することで、大規模言語モデル(LLM)が実行時に動的にツールを選択・実行し、多段階推論を可能にします。

設定手順

ノードの追加

チャットフローやワークフローのエディタで、コンポーネントパネルからエージェントノードをキャンバスにドラッグします。 "エージェントノードの追加"

エージェント戦略の選択

ノード設定パネルで エージェント戦略 をクリックします。 "エージェント戦略設定" ドロップダウンメニューから推論戦略を選択します。Difyは Function Calling と ReAct を標準装備しており、Marketplace → エージェント戦略 カテゴリから追加インストール可能です。 "推論戦略選択"

1. Function Calling

ユーザー指示を事前定義された関数/ツールにマッピングし、LLMが意図を識別→適切な関数を選択→パラメータ抽出という明確なツール呼び出しメカニズムです。 特徴: • 高精度: 明確なタスクに直結するツールを直接呼び出し • 外部連携容易: API/ツールを関数化して統合可能 • 構造化出力: 下流ノード処理向けの定型化された情報出力 "Function Calling"

2. ReAct(Reason + Act)

思考(Reason)と行動(Act)を交互に繰り返す戦略です。LLMが現状分析→ツール選択→実行→結果評価のサイクルを問題解決まで継続します。 特徴: • 外部リソース活用: モデル単体では困難なタスクを実行可能 • 処理追跡性: 思考プロセスが可視化され説明性が向上 • 広範な適用: Q&A/情報検索/タスク実行など多様なシナリオに対応 "ReAct戦略" 開発者は公開リポジトリへ戦略プラグインを提供可能で、審査後Marketplaceで公開されます。

ノードパラメータ設定

選択した戦略に応じた設定項目が表示されます。標準装備のFunction Calling/ReActでは以下を設定:
  1. モデル: エージェントを駆動するLLMを選択
  2. ツールリスト: 「+」で呼び出し可能ツールを追加
    • 検索: インストール済みツールから選択
    • 認証: APIキーなどの認証情報を入力
    • 説明とパラメータ: ツールの用途説明とパラメータ設定
  3. 指示文: タスク目標とコンテキストを定義(Jinja構文で上位ノード変数参照可)
  4. クエリ: ユーザー入力を受け取る変数
  5. 最大実行ステップ数: 処理サイクルの上限値
  6. 出力変数: ノードが出力するデータ構造

ログ確認

実行時には詳細なログが生成されます。基本情報(入出力/トークン使用量/処理時間/状態)に加え、「詳細」から各処理ステップの出力を確認可能です。

メモリ機能

メモリスイッチを有効にすると、エージェントに会話コンテキストを記憶する能力が付与されます。メモリウィンドウサイズスライダーを調整することで、エージェントが「記憶」できる過去の会話メッセージ数を制御できます。これにより、エージェントは以前のやり取りを理解して参照し、一貫性のある文脈に沿った応答を提供することができ、複数ターンの対話体験を大幅に向上させます。 例えば、ユーザーが後続のメッセージで代名詞(「それ」、「これ」、「彼ら」など)を使用する場合、メモリ機能が有効になっているエージェントは、ユーザーが完全な情報を繰り返し述べなくても、これらの代名詞が前のコンテキストから何を指しているかを理解できます。

ツールをユースケースにカスタマイズする

Agent ノードや Agent にツールを追加すると、カスタマイズ方法はこちらです: CleanShot 2025-07-07 at 07.41.33@2x.png

ツールの説明

MCPサーバーからのデフォルトの説明をオーバーライドできます。これにより、ユースケースに特化した説明が可能です。

パラメーター設定(推論設定)

各ツールパラメーターについて、次の選択ができます: 自動: コンテキストに基づいてAIモデルがパラメーター値を決定します(デフォルトの動作)。 固定値: 常に使用される特定の値(静的な値または変数)を設定し、AIの推論からパラメーターを取り除きます。 これは次のような状況で便利です:
  • 一貫した設定値を設定するため(検索ツールに対して numResults: 10 のように)。
  • 変更すべきでないパラメーターを事前に設定するため(特定のAPIエンドポイントやフォーマット設定)。
  • AIが処理する必要のあるパラメーターを減らしてツールの使用を簡素化します。
例えば、Web 検索ツールを使う場合、以下のように設定できます:
  • queryを「自動」に保ち、AIが何を検索するかを決定します。
  • numResultsを「5」として固定値に設定し、応答サイズを制限します。
  • 検索フィルターなど他のパラメーターを固定値として設定し、一貫した動作を実現します。

このページを編集する | 問題を報告する