核心命題: 多代理不是「多開幾個 AI 就好」。並行帶來三個新問題:誰做什麼、彼此怎麼交換資訊、有依賴的步驟怎麼排隊。 本文角度: 協作機制拆解,樣本取自一個公開的代理式系統。
三個並行帶來的難題
難題一:重複勞動。 兩個代理同時去做同一件事,浪費預算,還可能互相干擾。
難題二:資訊孤島。 代理 A 在執行過程中看到一個重要線索,但它不覺得那是「正式結論」,於是沒有記錄下來;代理 B 後來又從零摸索一次。
難題三:依賴錯序。 有些步驟必須有先後(先拿到憑據,才能橫向移動)。如果把它們同時派下去,後面的步驟會因為前提不存在而空轉。
三個難題各自對應一種設計。
手法一:角色紅線——把邊界寫進提示詞
系統把角色分工寫成明確的禁令,而不只是「你是規劃者」這樣的正向描述:
- 規劃者:「你是規劃者、不是執行者——絕不在規劃裡把活幹了。」
- 執行者:「只做你領到的這一條意圖。」
這看似瑣碎,但非常關鍵。多代理系統最常見的失效模式是角色滑移:規劃者忍不住自己動手,執行者順手做了別人的活,於是職責邊界消失、重複勞動與衝突隨之而來。
可借鏡: 提示詞裡的「禁止做什麼」往往比「應該做什麼」更有效,因為模型的預設傾向是「盡量幫忙」。
手法二:過程級資訊交換——交換「怎麼做的」,不只知道「結論」
傳統做法是代理之間交換結論(事實、發現)。但很多有價值的線索藏在執行過程中:某個報錯訊息、某段響應片段、某個看起來不重要的參數。
這套系統讓執行者具備跨代理檢索過程的能力:
- 在本任務其他執行者的過程裡按關鍵字檢索(自動排除自己的步驟);
- 先看有哪些工作跑過,再取某個工作的具體幾步完整內容。
於是資訊以**「執行過程」為粒度**在代理之間流動——即使某個觀察還沒被正式寫成結論,後續代理仍能複用它。
可借鏡: 我哋常見嘅做法係「子代理只回報摘要」,代價就係丟失過程細節。把過程本身當成一等資料,係一個值得考慮嘅升級。
手法三:共享待辦清單——解決「無狀態會話 + 多步依賴」
規劃者被頻繁喚醒(每次狀態變更就喚醒一次),而每次喚醒都是一個全新的對話——它不記得上一輪做過什麼。
如果沒有補救措施,有前後依賴的多步任務就會亂套。解法是一份按任務保留、跨喚醒共享的待辦清單:
- 第一輪:把整條依賴鏈記錄一次(例如:注入點 → 取憑據 → 橫向 → 提權);
- 之後每一輪:只派「前置步驟已完成、依賴的事實已存在」的下一步,並隨進展更新清單。
於是即使會話本身無狀態,整條任務鏈依然穩定推進、不重複、不錯序。
可借鏡: 我哋做長任務時,同樣面對「上下文被壓縮 / 會話重啟」導致進度丢失。把待辦清單外置成檔案(而非留在上下文裡),係低成本高回報嘅做法。
手法四:單一意圖生成者——避免多頭馬車
系統規定規劃者是唯一的意圖生成者,執行者只能領取,不能自行派活。
這一條切斷了「執行者看到新線索就自己擴大範圍」的路徑:執行者若發現有價值的線索,只能寫一句提示交給規劃者,由規劃者統一決定要不要開新方向。
可借鏡: 呢個係「單一寫入者」原則嘅代理版本 —— 決策入口唯一,先至可審計、可解釋。
四個手法的對照表
| 手法 | 解決的難題 | 本質 |
|---|---|---|
| 角色紅線 | 重複勞動、職責模糊 | 用禁令界定邊界 |
| 過程級資訊交換 | 資訊孤島 | 把「過程」當一等資料 |
| 共享待辦清單 | 依賴錯序 | 把狀態外置、跨輪次共享 |
| 單一意圖生成者 | 多頭馬車 | 決策入口唯一 |
這些手法不只適用於安全領域
任何「多個 AI 代理並行長時間工作」的場景都可以套用:自動化研究、多方資料審查、大型程式碼重構、客服工單分派。
判斷是否需要這些手法的標準很簡單:任務是否可並行、是否有依賴、是否會重複。三者任一成立,角色紅線與待辦清單就先值得加上。
下一步
- 想了解規劃者與執行者共享的兩張狀態圖,可閱讀雙圖架構
- 想從個案脈絡進入,可先讀個案導入
- 想看防禦方如何應對這類系統,可閱讀從紅隊復盤看防禦