- はじめに
- 基本情報
- BPMN を使用したプロセス モデリング
- ケース管理を使用したプロセス モデリング
- フローを使用したプロセス モデリング
- プロセスの実装
- プロセスの操作
- プロセスの監視
- プロセスの最適化
- 参考情報
自律型エージェント ノード: モデル、プロンプト、ツール、リソースを使用して AI エージェントを設定し、タスクを推論して完了します。
機能
キャンバス上で作成した AI エージェントを実行します。モデル、指示、ツール、コンテキストを指定すると、データに基づいて推論を行い、タスクを完了して結果を返します。
このノードには、パレットで [自律型エージェント ] というラベルが付いています。AI を活用した意思決定、コンテンツ生成、分類、抽出など、固定ロジックではなく推論のメリットが得られるあらゆるステップに使用します。
自律型エージェントがループ内で推論を行う。プロンプトを読み、ツールを呼び出すか、コンテキストを参照するかを決定し、返された内容を組み込み、答えが得られるか反復処理の上限に達するまで繰り返します。モデル、プロンプト、およびノードのハンドルに接続するリソースを使用して、そのループを形成します。
このプロセスを使用すべき状況と BPMN プロセスを使用すべき状況
自律型エージェントはインラインで作成され、その構成はノード上に存在し、フローとともに移動します。BPMN プロセスとは、個別にバージョン管理およびデプロイされるエージェントへの参照です。
エージェントを追加する
ノードを追加し、[プロパティ] パネルで設定します。
- 出力ハンドルの [ + ] ボタンを選択するか、下部のツールバーからノード パレットを開きます。
- [ エージェント ] カテゴリを選択し、[ 自律型エージェント] を選択します。フローによってノードが追加され、そのプロパティ パネルが開きます。
- 以下に記載するように、モデルとプロンプトを設定します。
結果: [自律型エージェント] ノードがキャンバスに追加され、プロパティ パネルが開き、設定できるようになります。
構成のリファレンス
| フィールド | Required | 既定 (Default) | 説明 |
|---|---|---|---|
| モデル | いいえ | 組織の既定のエージェント モデル | エージェントが使用する大規模言語モデル (LLM)。ピッカーからモデルを選択すると、組織で利用可能なモデルが一覧表示されます。 |
| システム プロンプト | はい | なし | エージェントの役割とスタンディング インストラクション: エージェントが誰であり、どのように動作すべきか。エージェントのペルソナ、制約、出力の期待値など、すべての呼び出しに適用される永続的なガイダンスを記述します。 |
| ユーザー プロンプト | はい | なし | この呼び出しのタスクです。ワークフロー データを式 (例: $vars.start.output.request) で参照します。 |
| 温度 | いいえ | 0 | 0 から 1までのランダム性をサンプリングします。値が小さいほど、応答はより決定論的になります。値が大きいほど、応答の多様性や創造性が強くなります。 |
| 回答あたりの最大トークン数 | いいえ | 16384 | 各モデルの応答の最大長。天井は選択したモデルによって異なります。 |
| 最大繰り返し回数 | いいえ | 25 | エージェントが停止するまでの推論およびツール呼び出しのステップの最大数。1 から 100までの値を受け入れます。 |
| ガードレール | いいえ | なし | エージェントの動作と出力を制約するルール (許可されていないコンテンツをブロックする、エージェントを定義されたスコープ内に収めるなど)。ガードレールはエージェント全体に適用されます。 |
入力変数と出力変数
エージェントがフローの残りの部分と交換するデータを [プロパティ] パネルの [変数] タブで宣言 します 。
- 入力変数 は、エージェントに渡してワークフロー データにバインドする値です。エージェントは推論中にそれらを参照できます。新しいエージェントは、入力変数なしで開始します。
- 出力変数 は、エージェントが返す構造化フィールドです。すべてのエージェントは、応答テキストを保持する
contentという 1 つの出力変数から開始します。エージェントに構造化データを返すように、出力変数をさらに追加します。
宣言した各出力変数は、エージェントの output オブジェクトのフィールドになります。それぞれに名前と種類を指定し、システム プロンプトでエージェントにそれらを入力するように指示します。エージェントは、宣言されたすべてのフィールドを 1 つの構造化 outputにまとめて返します。
リソース
自律型エージェントは、そのハンドルに接続するリソース・ノードで構成されます。ノードには 3 つのリソース ハンドルがあり、それぞれに専用のラベル ( ツール、 コンテキスト、 エスカレーション) がキャンバスに表示されます。リソースをハンドルに接続し、そのリソースを専用のプロパティ パネルで設定します。リソースはフローとともに移動します。
各ハンドルは、一致するリソースの種類のみを受け入れます。キャンバスでは、適合しない接続がブロックされるため、たとえばツールをコンテキスト ハンドルにワイヤリングすることはできません。
ツール
ツールを ツール のハンドルに接続して、エージェントが推論中に呼び出すことができる機能を提供します。エージェントは、ループ中に、接続された各ツールを呼び出すかどうか、およびいつ呼び出すかを決定します。各ツールには、そのツールの目的をエージェントに伝える説明が付いているので、ツールで説明が公開された場合は、明確な説明を記述してください。
接続できるツールの種類は次のとおりです。
- 組み込みツール、以下で説明する 3 つの既製ツール。
- コネクタ ツール。エージェントが Integration Service の操作を呼び出すことができます。たとえば、メールの送信や下流のシステムでのレコードの作成などが可能です。
- RPA ワークフロー および API 関数 ツール: エージェントはパブリッシュ済みの RPA プロセスまたは API ワークフローをツールとして呼び出すことができます。
- モデル コンテキスト プロトコル (MCP) サーバー ツール。MCP サーバー上でパブリッシュされたツールを公開します。
組み込みツール
Flow には 3 つの組み込みツールが付属しています。それぞれが自己完結型のリソースであり、[ ツール ] に接続して専用のパネルで処理および設定します。
- ファイルを分析: LLM を使用して 1 つ以上のファイルを分析し、その内容を抽出、合成したり、質問に回答したりします。エージェントが渡すファイルと、そのファイルに対して実行する分析タスクを入力します。
- バッチ変換: CSV ファイルを 1 行ずつ処理および変換します。ソース ファイルを指定し、行ごとのタスクを説明して、ツールが追加する出力列を定義します。変換の Web 検索のグラウンディングを有効化または無効化できます。
- 要約: 引用を含む複数のドキュメント (最大 1,000 ページ) を合成します。ソースを指定し、合成する内容を説明し、ファイル拡張子を選択します。ソースが PDF の場合、引用のオン/オフを切り替えることができます。
Context
コンテキスト リソースを コンテキスト ハンドルに接続して、エージェントをデータにグラウンディングします。エージェントは、モデルだけに依存するのではなく、推論中にこのグラウンディング データを利用します。コンテキスト リソースは、組織内のコンテキスト インデックスを指します。
エージェントがインデックスから取得する方法を設定します。取得モード (セマンティック、構造化、DeepRAG、バッチ変換)、クエリ、返される結果の数、関連性のしきい値、引用を含めるかどうかなどがあります。新しいコンテキスト インデックスを作成するには、ハンドルの [追加] パネルで [ 新しいコンテキストを作成 ] アクションを使用します。これにより、インデックスの作成が新しいタブで開きます。
エスカレーション
エ スカレーション ハンドルを接続し、エージェントが単独で決定すべきではないケースに到達したときにユーザーにルーティングします。エージェントが一時停止し、人間がエスカレーションに対応し、エージェントは結果を持って再開します。次の 2 つのエスカレーション リソースのいずれかをアタッチできます。
- エスカレーション: アクション アプリのタスクにルーティングします。アクション アプリ、受信者、通知、アプリに渡される入力、アプリの結果がエージェントにどのようにマッピングされるかを設定します。
- アクション アプリのエスカレーション: 受信者、通知、入力、結果マッピングの設定で、コード化されたアクション アプリにルーティングします。
両方のエスカレーション リソースは同じように設定されます。エスカレーションの対象が標準のアクション アプリではなくコード化されたアクション アプリである場合は、[アクション アプリのエスカレーション] を選択します。いずれかのリソースをアタッチするには、バージョン1.2以降のAutonomous Agentノードが必要です。
入力と出力
入力
エージェントは、入力ハンドルを介してアップストリーム ノードから、および宣言した入力変数からデータを受け取ります。
出力
エージェントは、宣言した出力変数を含む output オブジェクトを返します。既定のフィールドは contentで、応答テキストです。$vars.<node>.output.<field>を使用してフィールドにアクセスするには、例を示します。
$vars.agent1.output.content
$vars.agent1.output.content
エージェントが失敗した場合、ノードは代わりに error オブジェクトを設定します。エラーの形状とそのルート処理方法については、「 エラー処理 」をご覧ください。
{
"output": {
"content": "string. The agent's response text, plus any output variables you declared."
},
"error": "object. Populated only on failure. See Error handling."
}
{
"output": {
"content": "string. The agent's response text, plus any output variables you declared."
},
"error": "object. Populated only on failure. See Error handling."
}
結果に対する分岐
エージェントの後に、返された内容に基づいてルーティングする 決定を下 します。
Autonomous Agent → Decision ($vars.agent1.output.content.includes("approved"))
→ True: continue processing
→ False: escalate or terminate
Autonomous Agent → Decision ($vars.agent1.output.content.includes("approved"))
→ True: continue processing
→ False: escalate or terminate
宣言された出力フィールドを下流の スクリプト ノードで読み取ります。
return $vars.agent1.output.content;
return $vars.agent1.output.content;
例
例 1: 受信要求を分類する
機能: サポート リクエストを返金、苦情、または質問として分類し、ラベルを構造化された出力として返します。
システム プロンプト:
You are a support triage assistant. Classify each request into exactly one category: refund, complaint, or question. Respond with only the category.
You are a support triage assistant. Classify each request into exactly one category: refund, complaint, or question. Respond with only the category.
ユーザー プロンプト:
Classify this request: $vars.start.output.request
Classify this request: $vars.start.output.request
出力変数 category (文字列) を宣言します。エージェントは以下を返します。
{
"output": {
"category": "refund"
}
}
{
"output": {
"category": "refund"
}
}
ダウンストリーム スイッチを使用して $vars.agent1.output.category でルーティングします。
例 2: 請求書のクエリをエンド ツー エンドで解決する
機能: 顧客の請求書に関する質問に回答します。請求書を読み、その回答をポリシーに基づいており、対応が必要なときにワークフローを呼び出し、金額がしきい値を超えた場合はエスカレーションします。
エージェントのハンドルを配線します。
- コンテキスト: エージェントが承認されたガイダンスに基づいて回答を提供できるように、請求ポリシーを保持するコンテキスト インデックスです。
- ツール: 添付された請求書を読み取るための組み込みツール Analyze Files と、請求システムで返金を行う RPA ワークフロー ツール。
- エスカレーション: 価値の高いケースをアクション アプリでレビュー担当者にルーティングする エスカレーション リソースです。
システム プロンプト:
You are a billing support agent. Use the billing policy in your context to answer invoice questions. Read the attached invoice before answering. If a refund is warranted and the amount is at or below 200, issue it with the refund workflow. If the amount exceeds 200, escalate for review instead of acting. Always return a structured result.
You are a billing support agent. Use the billing policy in your context to answer invoice questions. Read the attached invoice before answering. If a refund is warranted and the amount is at or below 200, issue it with the refund workflow. If the amount exceeds 200, escalate for review instead of acting. Always return a structured result.
ユーザー プロンプト:
Resolve this customer query: $vars.start.output.query
Invoice: $vars.start.output.invoiceFile
Resolve this customer query: $vars.start.output.query
Invoice: $vars.start.output.invoiceFile
出力変数 resolution (文字列)、 refundIssued (Boolean)、 amount (数値) を宣言します。解決されたケースは以下を返します。
{
"output": {
"resolution": "Refund issued for duplicate charge.",
"refundIssued": true,
"amount": 48.5
}
}
{
"output": {
"resolution": "Refund issued for duplicate charge.",
"refundIssued": true,
"amount": 48.5
}
}
エージェントをフォローし、確認メッセージとフォローアップ パスの間を分岐する$vars.agent1.output.refundIssuedの決定を下します。エージェントは、しきい値を超えるケース自体をエスカレーションすることで処理するため、その分岐はフローに追加のロジックを必要としません。
一般的な問題
デバッグする前に入力検証エラーが表示されます。モデル、システム プロンプト、ユーザー プロンプトはすべて必須です。ノードでは、それぞれが設定されるまで検証エラーが報告されます。
ループ項目の式がエージェント内で解決されません。プロンプトで ループ の現在の項目を参照する場合は、ループの現在の項目の式を使用します (例: $vars.loop1.currentItem.<field>)。間違ったスコープを参照すると、実行時に値が未解決のままになります。
エージェントは、構造化データを予期したときにテキストを返します。既定では、エージェントは contentのみを返します。必要な構造化フィールドごとに出力変数を宣言し、その出力フィールドを設定するようシステム プロンプトでエージェントに指示します。
接続されたバッチ変換ツールから検証エラーが報告される。バッチ変換には、少なくとも 1 つの出力列が必要です。フローをデバッグする前にツールで追加する列を定義します。
アクション アプリのエスカレーションをエージェントに接続することはできません。アクション アプリのエスカレーションには、バージョン 1.2 以降の自律型エージェント ノードが必要です。接続がブロックされている場合は、ノードをアップグレードします。