跳到主要內容
Cypher's Practical Coding
正在準備工作環境...

六種拓撲模式

所有 AI 工作流都是以下六種基本模式的組合。學會辨認模式,你就能把任何複雜的系統拆解成可理解的積木。

1. 線性鏈 Sequential

[A] → [B] → [C] → [D]

每步的輸出是下一步的唯一輸入。最簡單,也最脆弱——任一節點失敗,整條鏈斷。

電商例子:收到訂單 → 查庫存 → 計算運費 → 產生出貨單。

適用場景:步驟之間有嚴格的先後關係,不需要分支。

2. 條件分支 Branch

        → [B]
[A] → [Router]
        → [C]

Router 根據條件把流程導向不同路徑。

電商例子:客戶問題進來 → 意圖分類 → 退貨走退貨流程 / 查單走查單流程 / 投訴走客訴流程。

適用場景:同一個輸入根據特徵需要不同處理方式。

3. 並行展開/收合 Fan-out / Fan-in

      → [B] →
[A] → → [C] → → [E]
      → [D] →

多個獨立子任務同時執行,結果匯集。整體耗時 = 最慢那條分支。

電商例子:新品上架前,同時做三件事——AI 寫商品描述 + 自動生成商品圖 + 查競品價格 → 匯整成上架資料。

適用場景:多個任務可以平行、互不依賴、結果需要合併。

4. 自回饋迴圈 Self-loop

[生成] → [檢查] → [OK] → 繼續
              ↓ [NG]
           [回到生成]

產出不合格時回前步重做。這就是 Loop Engineering 教的單環——但在 Graph 裡,它是一個子結構。

電商例子:AI 寫促銷文案 → 法務檢查 → 有違規就回去改 → 沒違規就過。

注意:必須設停止條件(最多重試 3 次、或時間上限),否則無限迴圈。

5. 有向無環圖 DAG

[A] → [C] →
               → [E]
[B] → [D] →

多條路徑、多個依賴,但不形成迴圈。現實中大多數系統最終長這樣。

電商例子:月報生成——同時從 GA4 拉流量數據 + 從 DB 拉銷售數據 → 各自清洗 → 合併分析 → 生成報告。

適用場景:多個資料源、複雜依賴、但整體流程有明確的起點和終點。

6. 狀態機 State Machine

[待機] → [執行] → [審核]
  ↑                 ↓
[完成] ← [通過] ← [退回?→ 執行]

根據事件在狀態間切換,允許回到之前的狀態(有環)。最有表達力,也最難除錯。

電商例子:訂單生命週期——待付款 → 已付款 → 出貨中 → 已送達 → 完成。任何狀態都可能因為取消、退貨而跳到其他狀態。

適用場景:多輪對話、審批流程、有明確「狀態」和「轉換事件」的系統。

怎麼判斷用哪種

特徵推薦模式
嚴格先後、無分支Sequential
根據條件走不同路Branch
多件事可以同時做Fan-out/Fan-in
做完要檢查、不行重做Self-loop
多源多路徑但有終點DAG
狀態間可以來回跳State Machine

真實系統通常是混合體。一個 DAG 的某個節點內部可能包含一個 Self-loop;一個 State Machine 的某個狀態轉換可能觸發一個 Fan-out。辨認模式的目的不是分類,是讓你知道手上有哪些積木可以用。

AI 協作:學了這個,跟 AI 怎麼配合?

告訴 AI 你的工作流屬於哪種模式,它就能給出更精準的架構建議。

你的人類優勢:

  • 判斷「可不可以平行」——有些步驟看起來獨立,實際上有隱含的依賴
  • 決定停止條件——Self-loop 跑幾次就該放棄,這是業務判斷

可以這樣跟 AI 說:

我的月報生成流程需要從三個資料源拉數據、各自清洗後合併分析、最後產報告。這像是 Fan-out/Fan-in + Sequential 的組合。幫我畫出完整的 DAG,標出哪些步驟可以平行、哪些有依賴。

挑戰任務

Task 1

以下三個場景,分別最適合用哪種拓撲模式?

  1. 客戶下單後:扣庫存 → 通知倉庫 → 產生物流單
  2. 客戶上傳一張圖,需要同時做三件事:辨識商品、偵測瑕疵、估算價格,三個結果合併後給客服
  3. AI 幫客戶寫了一封投訴信,客服主管看了覺得語氣太強,退回修改,改完再送審,來回最多三次
BackNext Lesson →