Agent¶
Agent 任務讓你在工作流程的某個步驟中,呼叫一個已建立好的 Agent 資源。Agent 會依照你給的提示詞自行推理、視需要呼叫工具(工具迴圈),最後把回應交給下一個步驟。和直接呼叫 LLM 不同,Agent 能自己決定要不要用工具、用哪個工具來完成任務。
這頁能幫你做什麼¶
- 把開放式的推理或工具選擇交給 Agent 處理(例如「查資料庫後再總結」)。
- 在工作流程中重複使用同一個 Agent 設定,不必每次重建。
- 需要時讓 Agent 輸出結構化 JSON,方便後續步驟取用。
本頁只說明 Agent 任務特有的欄位。名稱、附註、下一個狀態、輸入與輸出、錯誤處理及共用開關,集中在 任務通用設定。
開始前¶
需要先建立 Agent 資源
Agent 任務必須綁定一個已建立的 Agent 資源(內含指令、工具、可用模型等設定)。如何建立請見 Agent 資源。
操作步驟¶
-
在工作流程編輯器中新增一個 Agent 任務(如何新增請見 任務使用指南)。

-
填入「名稱」。
- 在「Agent」欄位選擇要呼叫的 Agent 資源。這是一個資源挑選欄位:點欄位或右側的鉛筆鈕會開啟挑選對話框,選取時請點該列「名稱」以外的任一格(或列前面的圓鈕)——點「名稱」會在新分頁開啟該資源的詳細頁,不會選取它——再按對話框右上角的「儲存」(見資源挑選欄位)。
- 在「提示詞」填入要給 Agent 的指示,可用 Jinja2 樣板語法(如
{{ variable }})插入變數(樣板語法見 Template 語法)。編輯器工具列上有「改寫」()鈕,可以請系統幫你把草稿改寫成更清楚的提示詞(用法與 LLM 任務 的同名工具相同)。 - 在「提示詞變數」設定要帶進來的資料(見下方「提示詞變數的兩種角色」)。
-
視需要展開「進階任務設定」,覆寫模型、設定工作階段、結構化輸出、最大工具使用次數等。

-
設定「下一個狀態」,必要時填「附註」。
- 用「測試任務」按鈕()試跑。
提示詞與提示詞變數至少要填一個
試跑(執行)時,「提示詞」與「提示詞變數」兩者不可同時為空,否則無法執行。
提示詞變數的兩種角色¶
「提示詞變數」是本頁最容易搞混的欄位,因為它會依「提示詞」有沒有填而扮演兩種完全不同的角色:
| 情況 | 提示詞變數的角色 |
|---|---|
| 「提示詞」有填 | 當成樣板變數:提示詞裡的 {{ variable }} 會被換成這裡對應的值。 |
| 「提示詞」留空 | 當成輸入訊息:這包資料會直接送給 Agent 當使用者的話,等於你在聊天視窗打的那句。 |
這個欄位預設就把「JSONPath」開關打開、值為 $,也就是「把這一步收到的整包輸入原封不動送給 Agent」。三種常見寫法:
- 整包輸入直接丟給 Agent(預設):提示詞留空、提示詞變數維持 JSONPath 模式的
$。上一步的輸出就是 Agent 收到的訊息。 - 只把某個欄位當訊息:提示詞留空、提示詞變數的 JSONPath 改成
$.question,Agent 只收到使用者的問題那一段。 - 用提示詞包住動態值:「提示詞」填
請用親切的語氣回答這個問題:{{ question }},再把「提示詞變數」的 JSONPath 開關關掉、改打開「JSON」開關填{ "question.$": "$.question" }——鍵名question要和樣板裡的{{ question }}一致,鍵名結尾加.$代表這個值是一條路徑而不是字面字串。
Agent 任務特有欄位¶
設定分頁¶
| 欄位 | 必填 | 預設 | 說明 |
|---|---|---|---|
| Agent | 是 | 無 | 選擇這個步驟要呼叫的 Agent 資源。也可切換為用 JSONPath 從工作流程輸入帶入 Agent ID。 |
| 提示詞 | 視情況 | 空白 | 要給 Agent 的指示文字,支援 Jinja2 樣板語法,可用 {{ variable }} 插入提示詞變數。編輯器工具列有「改寫」()鈕可請系統協助改寫。與「提示詞變數」至少要填一個。 |
| 提示詞變數 | 視情況 | JSONPath 模式、值為 $ | 提供給 Agent 的資料。欄位預設就是 JSONPath 模式、路徑為 $(整包輸入);把滑鼠移到欄位上,標籤右側才會出現那排開關(滑鼠移開就消失,見 任務通用設定),關掉「JSONPath」、改開「JSON」開關可填鍵值對(如 { "message.$": "$.messages" },鍵名結尾的 .$ 代表值是路徑)。有提示詞時作為樣板變數;提示詞為空時作為輸入訊息傳給 Agent(兩種角色與範例見上方提示詞變數的兩種角色)。與「提示詞」至少要填一個。 |
進階任務設定(摺疊區塊)¶
展開設定分頁底部的「進階任務設定」,Agent 任務提供下列特有欄位。
| 欄位 | 必填 | 預設 | 說明 |
|---|---|---|---|
| 大型語言模型 | 否 | 沿用 Agent 預設 | 覆寫這次執行 Agent 預設使用的模型。欄位本身是唯讀的、右側只有一枝鉛筆(沒有下拉箭頭),點鉛筆才會開啟挑選對話框。可選項僅限該 Agent 允許切換的模型清單;點開鉛筆後清單是空的,就代表這個 Agent 沒有設定可切換的模型。可清除以回到 Agent 預設。 |
| 工作階段 ID | 否 | 空白 | 指定 Agent 執行要使用的工作階段 ID,可用來延續同一段對話記憶。未填則系統建立新的工作階段。 |
| 儲存庫 | 否 | 無 | 指定工作階段期間提供給 Agent 使用的儲存庫資源(例如供 Agent 讀寫檔案)。同樣是唯讀欄位+鉛筆,點鉛筆開挑選對話框。如何建立見 儲存庫資源。 |
| 啟用結構化輸出 | 否 | 關閉 | 開關。開啟後,系統會把 Agent 最終回應再整理成結構化 JSON。開啟後會多出下方兩個欄位。 |
| JSON Schema | 是(啟用結構化輸出時) | 預帶一列名為 my_property 的欄位(類型「字串」、必填「是」、可空「否」) | 只在啟用結構化輸出時出現。定義 Agent 結構化回應要符合的結構。它不是空表格——打開開關就已經有 my_property 那一列,記得改成你真正要的欄位名,不改的話輸出就會多一個叫 my_property 的欄位。表格的儲存格是唯讀顯示,要改內容得點該列的 鉛筆開「編輯屬性」對話框,操作方式與結構化大型語言模型任務的 JSON Schema 完全相同;也可打開欄位上的「JSON」開關直接貼一份 JSON Schema。 |
| 結構化大型語言模型 | 是(啟用結構化輸出時) | 無 | 只在啟用結構化輸出時出現。指定負責把回應轉成結構化 JSON 的 LLM 資源。 |
| 最大工具使用次數 | 否 | 25 | 這次執行允許 Agent 使用工具的最大次數,範圍 1–100。用 JSONPath 帶入時不套用範圍檢查。 |
| WebSocket 閒置逾時 | 否 | 30 | Agent 執行期間每次 WebSocket 訊息接收的閒置逾時秒數,範圍 1–300。用 JSONPath 帶入時不套用範圍檢查。 |
Agent 任務的進階區沒有「允許重試」
上表就是 Agent 任務「進階任務設定」的全部欄位——沒有 Guardrail、備用大型語言模型,也沒有「允許重試」開關(那三項只出現在 LLM 與 Structured LLM 任務)。要在失敗時重試,請改用「錯誤處理」分頁的重試器,見 任務通用設定。
開啟「啟用結構化輸出」後,下方會多出「JSON Schema」與「結構化大型語言模型」兩個欄位:

執行設定(摺疊區塊)¶
執行設定區塊(上傳輸出至外部記憶體、即時輸出串流、錯誤時中止、預設輸出)皆為共用欄位。其中「預設輸出」在啟用結構化輸出時會套用你定義的 JSON Schema。說明見 任務通用設定。
實際範例¶
提示詞¶
請查詢訂單 {{ order_id }} 的狀態並用一句話回覆顧客。
提示詞變數¶
{
"order_id.$": "$.order_id"
}
測試執行輸出¶
{
"errors": null,
"action_type": "agent_action",
"message": "您的訂單已於今日出貨,預計兩個工作天內送達。",
"response": {}
}
文字回應在 message 欄位;若啟用結構化輸出,結構化結果會放在 response 欄位。
技術識別¶
- action_type:
agent_action
下一步¶
- 先到 Agent 資源 設定 Agent 的指令與工具。
- 只需要單純呼叫模型時,改用 大型語言模型 (LLM)。
- 共用設定請見 任務通用設定。