定義
在自動化工作流程中,經常需要重複執行相同的業務邏輯片段,例如逐項處理資料集、逐行讀取文字進行批次操作,或在指定的迭代次數內多次嘗試某些步驟。
為了滿足這些需求,GoInsight.AI 提供了一個「迭代」節點,可以在可視化「子工作流程」中容納各種業務節點。此節點可以根據指定的迭代模式反覆執行,最終將每次循環的輸出結果合併為一個陣列,以供下游節點使用。

快速入門 / 如何使用
節點配置:在 GoInsight.AI 中,右鍵點擊並選擇「新增節點」,即可在工作流程中新增「迭代」節點。

1. 配置迭代節點的迭代模式
- 1)指定次數:
- 按照指定次數運行循環。可透過「迭代次數」輸入框設定循環執行次數,範圍為1至50。
- 執行邏輯:循環主體將重複執行設定的次數,在每次執行時,可使用配置的變數進行操作。
- 2)迭代集合:
- 指定一個集合,按集合中的順序遍歷每個元素,並在每個元素上執行一次循環。「輸入變數」區域提供「(x) 設定變數」輸入框,用於設定循環過程中使用的變數。
- 執行邏輯:循環主體將依次處理集合中的每個元素,將元素分配給相關變數進行操作,並將結果儲存在輸出變數中。
- 3)迭代行:
- 逐行遍歷文字,將每行文字視為循環的元素,並對每行執行一次循環。
- 執行邏輯:類似於迭代集合,但重點是逐行處理資料,適合表格或其他二維資料結構。
- 集合元素類型:
- 在「集合元素類型」區域,提供一個下拉式選單可選擇元素類型。選項包括「字串」、「數字」和「布林」。
- 根據要處理的數據類型選擇適當的元素類型。例如,如果處理字串數據,選擇「字串」類型。
- 逐行讀取:
- 在「逐行讀取」區域,提供一個「(x) 快速插入鍵」輸入框。您也可以根據實際情況在輸入框中逐行輸入要讀取的資料。例如,如果從檔案中讀取資料,可在此處指定檔案路徑或資料來源。
2. 配置迭代節點的迭代結果輸出
- 循環結果輸出使用「輸出集合變數名稱 [Array...]」輸入框,設定儲存循環結果的輸出變數名稱。
- 使用「(x) 循環主體變數」輸入框,指定在循環主體中生成的變數,這些變數可用於後續操作或作為循環結果輸出。
- 使用「刪除」按鈕移除已配置的輸出變數。
- 使用「+ 添加」按鈕添加更多輸出變數配置。
3. 配置迭代節點的備註
「備註」區域允許您輸入關於此迭代節點的描述性資訊,例如循環目的、輸入和輸出變數的意義等,以便於自己和其他人理解與維護。
典型使用案例
- 資料處理
- 在資料處理情境中,迭代節點可用於遍歷資料集。例如,處理一批銷售訂單資料時,迭代節點可以逐一讀取訂單記錄並執行操作,如計算總價及統計各訂單的商品數量。
- 對於大量資料檔案,迭代節點可以依次開啟每個檔案、讀取資料內容並進行清理、轉換等操作,確保資料的準確性與可用性。
- 批量發送個人化電子郵件:假設有一個包含每位使用者姓名、電子郵件地址和個人化資訊的使用者列表(陣列)。透過迭代使用者列表,循環主體可使用這些使用者資訊來組裝個人化的電子郵件內容,然後呼叫電子郵件發送 API 發送郵件。循環結束後,電子郵件發送的結果(成功或失敗狀態等)會被彙整至一個清單中,以便於檢視及統計電子郵件發送情況,例如計算成功率或分析失敗原因。
- 任務執行
- 在自動化任務情境中,迭代節點可以重複執行某項任務。例如,在系統監控任務中,迭代節點可以定期檢查系統資源(如 CPU 使用率、記憶體消耗等),並在出現異常時記錄資料或發出警報。
- 在軟體測試過程中,迭代節點可以重複執行測試用例多次,以確保軟體的穩定性與可靠性。
- 批量翻譯多行文字:使用者輸入包含多行的文字區塊,迭代節點首先按行拆分此文字。然後,在每次迭代中,使用 LLM 對每行文字進行翻譯。翻譯完成後,每次迭代的結果會被彙總成一個陣列,然後傳遞到後續節點。後續節點可以進一步處理這些翻譯結果,例如進行格式調整與校對。
- 數值計算
- 在金融領域,迭代節點可用於計算複利。透過迭代循環,可以根據本金、利率和期限逐步計算最終的本金與利息金額。
- 條件循環
- 迭代節點可以與條件判斷結合,以控制循環的執行。例如,處理使用者輸入時,迭代節點可以不斷讀取輸入,直到輸入特定的退出命令,從而實現互動式程式流程。
- 在資料驗證過程中,迭代節點可以反覆檢查資料是否符合特定標準,僅在資料完全符合要求時退出循環,然後進行下一步。
- 批量呼叫外部 API:可以進行預設次數的呼叫(例如,10次)或迭代遍歷 ID 清單以反覆呼叫外部 API。每次 API 呼叫後,返回的結果都會被捕獲。循環結束時,所有捕獲的結果會被合併並輸出。
實際應用情境
- 天氣查詢工作流程設計呼叫天氣查詢 API,迭代遍歷城市 ID 清單以獲取每個城市的天氣資訊,並最終彙整所有天氣資訊以生成完整的天氣報告。
注意事項
- 避免無限循環。設置終止條件和超時機制以強制終止,防止循環無法停止。
- 盡量避免迭代空陣列或空值。檢查要迭代的值是否為空;如果是,則提示使用者或終止執行。


常見問題解答
Q1: 如何將其他節點添加到迭代節點中?
在迭代節點內點擊「+ 添加」;循環內的節點可以自由拖放。
Q2: 這與使用代碼執行節點進行循環有什麼不同?
使用代碼執行節點進行循環操作需要編寫代碼,這對於沒有編程背景的人來說不太合適。迭代節點支持多種循環方法,使用起來更方便。
發佈評論