Actions 概覽¶
Action(任務)是工作流程 (Workflow) 的基本建構單位。一個工作流程就是把多個 Action 串接起來,每個 Action 負責一件具體的事,例如呼叫大型語言模型、查資料庫、打外部 API 或轉換資料。本頁先說明 Action 是什麼、怎麼在編輯器裡新增,再用一個「所有 Action 類型」清單帶你找到對應的設定頁,最後集中說明所有 Action 表單都共用的設定分區。
這頁能幫你做什麼¶
- 快速理解 Action 與工作流程、資源 (Resource) 的關係。
- 知道在工作流程編輯器裡如何新增並設定一個 Action。
- 一次看懂每個 Action 表單都有的共用設定(名稱、輸入/輸出、錯誤處理、進階任務設定、執行設定),各 Action 頁不再重複說明,直接連到本頁的「Action 通用設定」。
Action 是什麼¶
每個 Action 代表工作流程裡的一個步驟(在後端稱為一個「狀態」)。執行時,前一個步驟的輸出會成為這個 Action 的輸入,這個 Action 處理完後再把結果交給下一個步驟。你可以把工作流程想成一條生產線,Action 就是線上的每一台機器。
Action 常常需要搭配資源 (Resource) 才能運作。資源是事先建立好、可重複使用的設定,例如:
- LLM 任務需要先有一個 LLM 資源(指定模型與金鑰)。
- MySQL/OpenSearch 任務需要先有對應的 Connector 資源(指定連線資訊)。
- Retrieval/Retriever 任務需要先有 Knowledge Base 與 Retriever 資源。
如何建立這些資源,請參考 Resource 指南。功能頁只會用一句話帶過並連到資源頁,不會在每個 Action 裡重寫一次。
如何在編輯器裡新增一個 Action¶
新增 Action 的方式是「從面板拖曳到畫布」,不是點一下清單就會加入。請依下列步驟操作:
-
進入要編輯的工作流程,開啟「工作流程編輯器」。

-
點開編輯器左上角的「新增狀態」()按鈕,左側會滑出一個面板,列出所有可新增的 Action 類型。

-
面板上方有一個搜尋框,可輸入關鍵字快速找到要的類型;下方的類型則依分類手風琴(可展開/收合的分類區塊)排列(即上圖面板,分類見下方「所有 Action 類型」)。
- 找到要的類型後,用滑鼠按住該項目並拖曳到畫布上要插入的位置(從上圖面板拖到畫布),放開滑鼠即完成新增。直接點一下清單項目只會顯示提示,不會加入節點。
-
點選畫布上新加入的節點,右側會開啟該 Action 的設定表單。

-
在「設定」分頁填寫該 Action 的專屬欄位(如模型、SQL、API 端點等,即上圖表單),詳見各 Action 頁。
-
視需要切換到「輸入與輸出」、「錯誤處理」分頁,調整共用設定(見「Action 通用設定」)。

-
設定完成後,可用表單上方的測試()按鈕試跑這個 Action,確認輸出符合預期。

新工作流程已內建一個預設節點
新建立的空白工作流程其實不是真的空白,預設已含一個「大型語言模型任務」節點,流程為「開始 → 大型語言模型任務 → 結束」。你可以直接點這個節點開始設定,或依上述步驟拖曳新增其他 Action。
所有 Action 類型¶
下表列出目前支援的所有 Action 類型,並依平台「新增狀態」面板的實際分類整理。點選指南連結可看該類型的完整欄位說明。
面板的實際結構
在「新增狀態」面板中,項目最上層會先分成「任務」與「流程」兩個分頁,分頁底下再以下列分類(手風琴)排列:生成式 AI、雲端運算、網路傳輸與 API、網頁互動、資料庫、檢索與排序、工作流程執行、文字與資料處理。實際的分類名稱與排序以畫面為準,下表僅供你對照各類型的用途與指南連結。
生成式 AI¶
| Action | 一句話用途 | 指南 |
|---|---|---|
| LLM | 呼叫大型語言模型做文字生成、補全或對話。 | LLM 指南 |
| Structured LLM | 讓模型輸出符合指定 Schema 的結構化 JSON。 | Structured LLM 指南 |
| Agent | 在工作流程步驟中呼叫已設定好的 Agent。 | Agent 指南 |
雲端運算¶
| Action | 一句話用途 | 指南 |
|---|---|---|
| Lambda | 在 AWS Lambda 函式中執行自訂程式碼。 | Lambda 指南 |
網路傳輸與 API¶
| Action | 一句話用途 | 指南 |
|---|---|---|
| HTTPS API | 呼叫外部 REST API 或 Web 服務。 | HTTPS API 指南 |
| MCP | 與 Model Context Protocol 伺服器互動。 | MCP 指南 |
網頁互動¶
| Action | 一句話用途 | 指南 |
|---|---|---|
| Search Engine | 透過搜尋引擎 API 搜尋網路。 | Search Engine 指南 |
| Read URL | 從指定 URL 擷取並萃取內容。 | Read URL 指南 |
資料庫¶
| Action | 一句話用途 | 指南 |
|---|---|---|
| MySQL | 對 MySQL 資料庫執行 SQL 查詢。 | MySQL 指南 |
| OpenSearch | 查詢與管理 OpenSearch 索引。 | OpenSearch 指南 |
檢索與排序¶
| Action | 一句話用途 | 指南 |
|---|---|---|
| Retrieval | 一站式從知識庫檢索文件(內含 Retriever 與 Ranker)。 | Retrieval 指南 |
| Retriever | 用語意或關鍵字策略搜尋知識庫。 | Retriever 指南 |
| Ranker | 依相關性重新排序文件,提升 RAG 品質。 | Ranker 指南 |
工作流程執行¶
| Action | 一句話用途 | 指南 |
|---|---|---|
| Start Sync Workflow Execution | 同步呼叫子工作流程並等待結果。 | Start Sync Workflow Execution 指南 |
| Start Workflow Execution | 非同步觸發子工作流程(觸發後不等待)。 | Start Workflow Execution 指南 |
| Describe Workflow Execution | 查詢工作流程執行狀態並取回結果。 | Describe Workflow Execution 指南 |
文字與資料處理¶
| Action | 一句話用途 | 指南 |
|---|---|---|
| Code | 直接在工作流程執行環境中跑 Python 程式碼。 | Code 指南 |
| Text | 用變數替換從模板產生文字。 | Text 指南 |
| 資料轉換(已棄用) | 內建轉換(目前僅簡體轉繁體);面板標示為「資料轉換(已棄用)」,新流程改用 程式碼 (Code)。 | 資料轉換指南 |
| Pass | 直接傳遞資料,或把靜態值注入工作流程狀態。 | Pass 指南 |
設定面板的頂部與分頁¶
點選畫布上的任一 Action 節點,右側會滑出它的設定面板。不論哪一種 Action,面板最上方的工具列與三個分頁都長得一樣:

| 元件 | 作用 |
|---|---|
| 定義(開關) | 切換成「定義檢視」,直接顯示這個步驟的原始 JSON 定義(見下圖),適合進階使用者檢查或核對設定。一般操作維持關閉、用表單填寫即可。 |
| 測試 | 單獨試跑這一個 Action,跳出測試視窗讓你填入測試輸入並查看輸出,方便在組整條流程前先確認這步沒問題。 |
| 最大化 | 把設定面板放大到更大的檢視,欄位多時操作更從容;再按一次還原。 |
| 關閉 | 收起設定面板,回到只有畫布的檢視(設定不會遺失)。 |
| 設定 / 輸入與輸出 / 錯誤處理(分頁) | 三個分頁分別放:該 Action 的專屬欄位、資料進出設定、出錯時的重試與捕捉。內容見下方「Action 通用設定」。 |
開啟「定義」開關後,面板會切換成原始 JSON 定義檢視:

面板裡的共用小元件
面板中的欄位也用到全平台共用的元件:選擇資源的 挑選鈕、 參數微調、表格的 新增列,以及多行欄位的編輯器工具列。這些的統一說明見通用介面元件。部分欄位(如輸入與輸出分頁的 Parameters)右側會有一個「值/JSONPath」切換鈕,可在「直接填固定值」與「用 $ 路徑從輸入動態帶入」之間切換($ 路徑的寫法見 JSONPath 語法)。
Action 通用設定¶
每個 Action 的設定表單,右側面板上方都有三個分頁:「設定」、「輸入與輸出」、「錯誤處理」。本節把這些分頁中所有 Action 共用的分區一次說清楚,各 Action 頁只會詳列該類型的專屬欄位,共用部分一律連回這裡。
進階任務設定/執行設定的內容會依 Action 類型而略有不同
所有 Action 的「設定」分頁底部都有「進階任務設定」與「執行設定」兩個摺疊區塊,但區塊裡實際出現的欄位會依 Action 類型而定。本節以 LLM 任務為例說明最常見的共用項;若某欄位只出現在特定 Action(例如 Guardrail、備用大型語言模型多半只在 LLM/Structured LLM/Agent 才有),會在表格中標明。各 Action 頁會列出該類型實際提供的進階/執行欄位。
基本欄位(設定分頁)¶
這些欄位直接顯示在「設定」分頁,不在摺疊區塊內,幾乎每個 Action 都有。
| 欄位 | 必填 | 預設 | 說明 |
|---|---|---|---|
| 名稱 | 是 | 無 | 這個步驟在工作流程中的識別名稱,必須在同一個工作流程裡唯一,不可與其他步驟同名。建議取有意義的名字(如「查詢訂單」「呼叫客服模型」),方便後續引用與除錯。 |
| 下一個狀態 | 是 | 無 | 這個步驟完成後要前往的下一個步驟。下拉選單會列出同層其他步驟;若選擇「結束」,代表這是流程的最後一步。 |
| 附註 | 否 | 空白 | 給這個步驟加上說明文字,純粹備註用途,不影響執行。方便團隊協作時看懂每步在做什麼。 |
Note
「下一個狀態」的下拉選項只會列出同一層級的步驟,外加一個「結束」選項;起始節點不會出現「結束」。實際可選項目依你工作流程現有結構而定。
輸入與輸出設定(輸入與輸出分頁)¶
切到「輸入與輸出」分頁可以控制資料如何流進、流出這個步驟。這些欄位多半使用 JSONPath(以 $ 開頭的路徑)來指定要取用或寫入資料的哪一部分。多數欄位選填,不填就會套用該 Action 的預設行為。

上圖由上到下依序是 InputPath、ResultSelector、ResultPath 等欄位,下表逐一說明每個欄位的作用。
想深入了解這些路徑怎麼寫、資料怎麼流
$路徑的完整寫法(取前一步輸出、取 Workflow 輸入)見 JSONPath 語法。- InputPath/ResultPath/OutputPath 如何一步步改變資料流,見 Path Parameters。
- 整章資料引用的概念與選擇(
$.、{{ }}、.%)見 變數與資料引用。
| 欄位 | 必填 | 預設 | 說明 |
|---|---|---|---|
| InputPath | 否 | 整包輸入 | 用 JSONPath 篩選要餵給這個步驟的輸入,只取你需要的那一部分。不填代表使用上一步的完整輸出。 |
| Parameters | 否 | 視 Action 而定 | 以鍵值對的方式組出要傳入的參數,值可以是固定值,也可以用 JSONPath 從輸入動態帶入。只有部分 Action 會出現此欄位。 |
| ResultSelector | 否 | 視 Action 而定 | 從這個步驟的執行結果中挑選要保留的部分,組成新的鍵值對後再往下傳。只有部分 Action 會出現此欄位。 |
| Result | 否 | 無 | 直接指定要往下傳的「虛擬結果」。常見於 Pass 之類不實際執行外部呼叫、只負責塞資料的 Action。只有部分 Action 會出現此欄位。 |
| ResultPath | 否 | 視 Action 而定 | 指定要把這步的結果放到輸入的哪個位置(相對於原始輸入)。可用來決定是覆蓋輸入、還是把結果掛在某個欄位下。只有部分 Action 會出現此欄位。 |
| OutputPath | 否 | 整包結果 | 在資料成為這個步驟的最終輸出前,再用 JSONPath 篩一次,只往下傳你要的部分。 |
Note
Parameters、ResultSelector、Result、ResultPath 並非每個 Action 都會出現,畫面是否顯示取決於該 Action 類型;InputPath 與 OutputPath 則是所有 Action 共通。這幾個欄位的命名與行為沿用 AWS Step Functions 的輸入/輸出處理慣例。
錯誤處理(錯誤處理分頁)¶
切到「錯誤處理」分頁可以設定當這個步驟出錯時要怎麼辦。分成兩大區塊:重試(重試器) 與 捕捉(捕捉器),兩者都可新增多筆,依序套用。

如上圖,分頁裡有「捕捉」與「重試」兩塊,分別用「建立新的捕捉器」「新增重試器」按鈕加入規則。以下逐一說明兩種規則的欄位。
重試器(重試)¶
點「新增重試器」可以加入一筆重試規則,遇到指定錯誤時自動重試。下圖是一筆重試器展開後的樣子,每筆包含下列欄位:

| 欄位 | 必填 | 預設 | 說明 |
|---|---|---|---|
| 錯誤 | 是 | 視 Action 而定 | 指定哪些錯誤要觸發這筆重試。可從內建錯誤類型(如 States.ALL 表示所有錯誤、States.Timeout 表示逾時等;任務型 Action 另有 Lambda 相關錯誤)中挑選,或自行輸入錯誤名稱。 |
| 間隔秒數 | 否 | 1 | 第一次重試前要等待的秒數。最小 0。 |
| 最多重試次數 | 否 | 3 | 最多重試幾次。最小 0;設為 0 代表不重試。 |
| 退避倍率 | 否 | 2 | 每次重試後,間隔秒數要乘上的倍率,用來逐步拉長等待時間。最小 1。 |
| 最長延遲秒數 | 否 | 未設定 | 重試間隔再怎麼放大也不超過這個秒數上限。最小 0,最大 31622401。不填代表不設上限。 |
| 新增隨機延遲 | 否 | 關閉 | 開關。開啟後會在重試間隔加入隨機抖動,避免大量請求在同一時間一起重試而壓垮系統。 |
捕捉器(捕捉)¶
點「建立新的捕捉器」可以加入一筆捕捉規則,當(重試後仍)發生指定錯誤時,把流程導向另一個步驟而不是整個失敗。下圖是一筆捕捉器展開後的樣子,每筆包含下列欄位:

| 欄位 | 必填 | 預設 | 說明 |
|---|---|---|---|
| 錯誤 | 是 | States.ALL | 指定哪些錯誤要被這個捕捉器接住。可選內建錯誤類型或自行輸入錯誤名稱。 |
| 回退狀態 | 是 | 無 | 錯誤被接住後要轉去的步驟。下拉選單會列出同層其他步驟。 |
| ResultPath | 否 | 將原始輸入與結果結合 | 兩種模式:「將原始輸入與結果結合」會把錯誤資訊掛到原始輸入的指定路徑再往下傳(路徑已存在則覆蓋);「丟棄結果並保留原始輸入」則把 ResultPath 設為 null,只往下傳原始輸入、捨棄錯誤結果。 |
| 附註 | 否 | 空白 | 這筆捕捉器的備註說明,不影響執行。 |
進階任務設定(設定分頁的「進階任務設定」摺疊區塊)¶
在「設定」分頁底部,展開「進階任務設定」可看到下列共用項。實際出現哪些欄位依 Action 類型而定,以下以 LLM 任務最常見的項目為例(下圖最底為「允許重試」開關):

| 欄位 | 必填 | 預設 | 說明 | 適用範圍 |
|---|---|---|---|---|
| 允許重試 | 否 | 關閉 | 開關。開啟後,當任務無法產生有效回應時會自動重新產生,且每次重試時模型溫度會增加 0.1(以增加變化)。與「錯誤處理」分頁的重試器不同,這是針對「結果無效」而非「呼叫失敗」。 | 多數任務型 Action |
| Guardrail ID | 否 | 空白 | 指定要套用的 Guardrail(安全防護)識別碼,把特定的內容防護設定綁到這次呼叫。 | 多為 LLM 相關 Action |
| Guardrail 版本 | 否 | 空白 | 指定要使用的 Guardrail 設定版本,確保套用正確版本的防護規則。 | 多為 LLM 相關 Action |
| 備用大型語言模型 | 否 | 無 | 指定一組備援模型;主模型失敗時依序改用備援模型,提高成功率。 | 多為 LLM 相關 Action |
Note
Guardrail、備用大型語言模型等欄位主要出現在與大型語言模型相關的 Action(如 LLM、Structured LLM、Agent);其他類型的 Action 在「進階任務設定」中會顯示各自適用的欄位。請以各 Action 頁的欄位說明為準。
執行設定(設定分頁的「執行設定」摺疊區塊)¶
在「設定」分頁底部,展開「執行設定」可看到下列共用項,控制這個步驟在實際執行時的行為:

| 欄位 | 必填 | 預設 | 說明 |
|---|---|---|---|
| 上傳輸出至外部記憶體 | 否 | 關閉 | 開關。開啟後,這個步驟的輸出會改存到外部記憶體,適合處理量很大的輸出資料,避免直接塞進工作流程狀態。開啟後會多出選擇器設定,指定要把哪部分輸出存到外部記憶體。用法與如何讀回見 外部記憶體。 |
| 在任務開始階段開啟即時輸出串流 | 否 | 關閉 | 開關。開啟後,任務開始時會把任務定義以串流方式即時送到執行頁面顯示。 |
| 在任務結束階段開啟即時輸出串流 | 否 | 關閉 | 開關。開啟後,任務結束時會把結果以串流方式即時送到執行頁面顯示。 |
| 錯誤時中止 | 否 | 開啟 | 開關。開啟(預設)代表這個步驟出錯時整個工作流程中止;關閉後會改用下方的「預設輸出」繼續往下走。 |
| 預設輸出 | 否 | 無 | 只在「錯誤時中止」關閉時出現。指定這個步驟出錯時要改用的預設輸出值,讓流程能用替代結果繼續執行。 |
Note
串流相關開關主要用於可逐步產出內容的任務(如 LLM)。實際是否顯示「在任務開始/結束階段開啟即時輸出串流」「預設輸出」等欄位,依 Action 類型與是否關閉「錯誤時中止」而定。
常見模式¶
RAG(檢索增強生成)¶
結合檢索 Action 與 LLM,讓回應紮根在你自己的資料上:
Retriever → Ranker → LLM
或使用一站式的 Retrieval Action:
Retrieval(內含 retriever + ranker)→ LLM
API 整合¶
呼叫外部服務並處理回應:
HTTPS API → Code → LLM
資料庫驅動的工作流程¶
查詢資料庫,並在 LLM 提示中使用查詢結果:
MySQL → Code → Structured LLM
工作流程組合¶
透過呼叫子工作流程,組出模組化的工作流程:
Start Sync Workflow Execution → Code → LLM
Agent 輔助步驟¶
把開放式推理或工具選擇交給 Agent 處理:
HTTPS API → Agent → Code
下一步¶
- 從 建立你的第一個工作流程 開始動手做。
- 到 Resource 指南 設定 LLM、Connector 與 Knowledge Base 等資源。
- 了解 編輯器介面導覽,看 Action 如何融入工作流程。