エージェントノード FunctionCalling (最小構成版)
1. 目的
ユーザーの依頼に応じて 定義済みツール(プラグイン)を“関数呼び出し”として実行し、結果を自然文で返す。
ここでは Code Interpreter をツールとして使い、ドル→円換算 を例に構築します。
2. ノード構成
[開始] → [変数代入] → [エージェント(FunctionCalling + Code Interpreter)] → [回答]
- 開始:ユーザー入力の起点(sys.query)
- 変数代入:会話変数(初期値)の書き込み
- エージェント:戦略 = FunctionCalling、Tools List に Code Interpreter を追加
- 回答:エージェント出力をそのまま返す
重要:Agent ノードには LLM ノードのような「CONTEXT 変数割り当て欄はありません。 変数は Instruction に Jinja で埋め込むか、ツール側の固定値で渡します。
3. 会話変数(作成するもの)
| 変数名 | 型 | 例/既定値の考え方 |
|---|---|---|
currency_from |
String | 既定は "USD"(Jinja の default でも可) |
currency_to |
String | 既定は "JPY"
|
usd_to_jpy_rate |
Number | 例: 149(実レートを取らない簡易例) |
変数名は Instruction 内の参照と一致させてください。例:
usd_to_jpy_rate(綴りミス注意)
4. 変数代入ノード(推奨設定)
固定したくない場合は未設定でもOK。Instruction 側で
| default(...)を付けて安全運用できます。
5. エージェントノード設定
5.1 基本
-
エージェンティック戦略:
FunctionCalling -
MODEL:任意(例:
gpt-4o-mini/ Chat) -
Tools List:
Code Interpreterを 追加し、有効化(トグルON)
5.2 Instruction(Jinja 有効)
以下を そのまま貼り付けてください。
あなたは通貨換算を行うエージェントです。必要に応じて Code Interpreter ツールで Python コードを生成・実行し、結果のみを日本語で返してください。
換算パラメータ(未指定時の既定値):
- 入力通貨: {{ currency_from | default('USD') }}
- 出力通貨: {{ currency_to | default('JPY') }}
- USD→JPY レート: {{ usd_to_jpy_rate | default(149) }}
出力は「{金額}{通貨}は約{金額}{通貨}です。」の1行で返してください。説明や推論過程は出力しないでください。
ポイント
- CONTEXT 欄は使いません。(Agent ノードに該当欄なし)
- 変数は Instruction 内で Jinja 参照します。
5.3 Query
{{#input#}}
ユーザー発話をエージェントに渡します。空欄だと不安定になるので必ず設定。
5.4 Maximum Iterations
6. 入力サンプルと期待出力
-
入力:
200ドルを日本円に換算して -
期待出力:
200USDは約29,800JPYです。
(レート 149 を使用した場合)
7. テスト方法(チェックリスト)
- 変数代入ノードで会話変数がセットされている
- Agent の Tools List に Code Interpreter が追加&有効
- Agent の Instruction に上記テンプレを貼り付け(Jinja ON)
-
Agent の Query が
{{#input#}} - フロー接続:開始 → 変数代入 → Agent → 回答
8. トラブルシューティング
× Run failed: tool parameter query not found in tool config
原因:ツール側に存在しない query パラメータを渡そうとした/Query 未設定。
対処:
- Agent の Query に
{{#input#}}を設定。 - Tools List の Code Interpreter 詳細で、
query等の不要な事前割り当てを削除(Code Interpreter は検索系のqueryパラメータを持ちません)。
× 変数が反映されない
- 変数名の綴り(例:
usd_to_jpy_rate)が Instruction 内と一致しているか確認。 - 変数未設定でも動かせるよう
| default(...)を付与。
× Code Interpreter が呼ばれない/素の回答になる
- Tools List で **Code Interpreter が有効(トグルON)**か確認。
- Instruction に「必要に応じて Code Interpreter を使用」の明示を入れる。
- Maximum Iterations を
1~3に。
9. 発展アレンジ
-
Workflow as a Tool:小さな換算ワークフローをツール公開し、明示パラメータ(
amount,from,to,rate)で受けると堅牢。 -
他ツールの併用:
CurrentTime、WebScraperなどを Tools List に追加し、Instruction に利用方針を追記。 - ReAct との使い分け:検索→計算→整形の多段ステップが増えるなら ReAct も検討。
以上


