技術分享
單一 Agent 故障診斷手冊:幻覺、API、死鎖速查
單一 AI Agent 上線後偶爾給出離譜答案、卡住不動或呼叫外部服務失敗,卻往往沒有明確的錯誤訊息可查。本文把常見故障整理成幻覺、API 依賴與死鎖三張「症狀→成因→處置」速查表,並引用 Vectara、τ-bench、AgentBench 等實測數據,讓你在事故現場快速定位止血。
很多團隊導入多代理系統時,第一個動作就是把幾個 Agent 接在一起,期待它們自己把事情做完。結果往往是彼此搶做同一件事、又同時漏掉沒人負責的那塊,最後產出對不起來。這不是個案:加州大學柏克萊分校 Sky Computing Lab 的 MAST 研究(Cemri 等人,發表於 NeurIPS 2025)分析了 7 套主流多代理框架的 1,642 條執行軌跡,實測失敗率介於 41% 到 86.7%,並把失敗歸成三大類——約 44% 出在系統設計與規格(角色模糊、任務定義不清),約 32% 出在代理間的協調與交接,約 24% 出在驗收缺失。三者加起來幾乎全是「工作怎麼拆、角色怎麼分、交接怎麼接」的問題,而不是模型不夠聰明。Gartner 也預估,到 2027 年底會有超過四成的代理式 AI 專案被取消,主因正是價值不明、成本失控與控管不足。
這篇談的是工作流編排的方法論:一個目標進來,怎麼拆成可交付的工作單元、怎麼把每個單元指派給定義明確的角色、又怎麼設計角色之間的交接。這裡不碰該用哪種協作拓撲、記憶與 context 怎麼共享,也不談值不值得投入——把工作與角色這一層拆對,後面的架構與實作才有依據。
拆解不是把工作切碎,而是切成「每一塊都能獨立交付、獨立驗收」的單元。判斷切得對不對,看三件事:它有沒有單一而明確的產出、這個產出能不能被檢查對錯、它對其他單元的依賴是不是夠少。Anthropic 公開其多代理研究系統的工程紀錄時就強調,主導 Agent 若沒給子任務清楚的目標、輸出格式與邊界,子代理就會重工或留下資訊缺口;他們甚至把「投入多少」寫成明確規則:簡單查證用 1 個代理、3~10 次工具呼叫,直接比較用 2~4 個代理、各 10~15 次,複雜研究才動用 10 個以上代理。這套「依複雜度縮放」的紀律,讓系統整體表現比單一代理高出 90.2%。
常見的拆解方式有三種切法,實務上經常混用:
顆粒度要抓中間值:切太粗,單一 Agent 一次扛太多、輸出不穩又難除錯;切太細,單元間的協調與交接成本反而吃掉好處。實用準則是:當一個單元的產出已能被明確描述、也能被獨立驗收,就不必再往下切。可以先粗拆跑一輪,看哪個單元經常出錯或反覆卡住,再針對那塊往下細分,而不是一開始就追求完美的拆解圖。
工作單元拆好之後,要把它們收斂成角色。角色不是「這個 Agent 會做什麼」,而是「這個 Agent 該為什麼結果負責」。最重要的原則是單一職責:一個角色只負責一種產出,職責一多,行為就難預測、出錯也難定位。這正是 MetaGPT(ICLR 2024)的核心設計——它把人類軟體公司的標準作業程序(SOP)編進流程,用產品經理、架構師、專案經理、工程師、QA 工程師五種角色像生產線一樣分工,每個角色交出結構固定的中間產物(例如 PRD),錯誤因此大幅下降。CrewAI 則用「角色—目標—背景」三件套定義每個 Agent,官方建議把責任邊界寫進背景、並對底層執行者關掉自行委派,避免角色越界。
| 角色 | 負責的產出 | 職責邊界(不做什麼) |
|---|---|---|
| 規劃者 | 把目標拆成任務清單與順序 | 不親自執行,也不評斷成果好壞 |
| 研究者 | 蒐集並整理所需的事實與資料 | 不下最終決策,只提供依據 |
| 執行者 | 依指派完成具體產出 | 不改動任務範圍,範圍問題交回規劃者 |
| 審查者 | 對照驗收條件判定通過或退回 | 不自己動手改,只給明確的退回理由 |
職責邊界寫清楚,最大的好處是消除模糊地帶——這也正對應 MAST 統計中占比最高的那 44% 規格類失敗。當每個角色都知道自己該交出什麼、不該碰什麼,就不會出現兩個角色搶做同一件事,或某塊工作因為「以為別人會做」而沒人負責。邊界不是靠默契維持,而要在角色定義裡明文寫死。
角色之間最容易出事的地方就是交接,MAST 約有 32% 的失敗正落在這一層。交接失敗多半不是資料沒傳到,而是收到的一方拿到一份不知道算不算完成、格式也對不上的東西。好的交接要當成一份契約來設計。這在工程實作上已有成形做法:OpenAI 在 2025 年開源的 Agents SDK 把交接實作成一個工具呼叫(transfer_to_X),並用 Guardrails 在交接邊界做輸入與輸出的驗證,等於強制每次交接都通過一道檢查。一份清楚的交接契約至少涵蓋四件事:
| 契約要素 | 要回答的問題 |
|---|---|
| 輸入前提 | 接手方需要哪些條件到位才能開始 |
| 產出格式 | 交出的東西長什麼樣、用什麼結構表達 |
| 完成定義 | 符合哪些條件才算「做完」,而非「做了」 |
| 驗收條件 | 下游用什麼標準判定接受或退回 |
把每個交接點都變成一道帶驗收條件的關卡,工作流才不會把錯誤一路往下游帶。研究顯示,未協調的多代理系統會把錯誤放大最多 17 倍,而有中央驗證把關的架構能壓到約 4.4 倍。當上游產出對不上完成定義,就該在交接當下退回,而不是讓下游拿著半成品硬做,直到最後才發現整條流程的結果都不能用。
這五個坑的共同解法,是把拆解、角色、交接都當成要先設計、要寫下來的東西,而不是接上 Agent 之後再看著辦。呼應 MAST 那 24% 因驗收缺失而失敗的比例:工作流編排本質上是一套設計工作,設計得越清楚,多代理系統就越可預測、越好維護,出問題時也越容易定位是哪個環節、哪個角色沒把該做的事做完。
多代理系統要穩定產出,難的不是把 Agent 接起來,而是把工作拆對、把角色與交接定清楚——這也是多數專案上線後才踩到的坑。恩梯科技的 AI 系統顧問服務,會先盤點你的實際流程,協助把目標拆成可驗收的工作單元、定義每個角色的職責與邊界,並設計出帶驗收條件的交接契約,讓你的 AI 工作流從一開始就長在清楚的分工上,而不是等到上線才發現各角色各做各的、結果對不起來。
想把這些做法落地到你的公司?
加 LINE 免費諮詢需要協助嗎?
點擊這裡與我們聯繫!