功能說明 01:編排引擎
2026-07-17 18:40:30
從第一個委託到經驗證的補丁
Agent Argo 並非由單一模型組成,該模型盡可能長時間地處理一項任務。它是一個將軟體工作轉化為可追溯步驟的系統:規劃、拆分、處理、檢查、修正,然後才提交採納。
本文開啟 「功能說明」 系列。它沿著實際部署情境,而非行銷承諾,闡述 Agent Argo 的核心機制。首篇聚焦編排引擎:將需求轉化為受控工作流程的過程。
1. 啟動前:確定品質、成本與自主權
Argo 處理任務前,需做兩項決策。它們刻意分離:
- Argo 應如何在成本與結果品質間權衡?
- Argo 在專案中可擁有多大自主行動權?
這避免了典型的目標衝突:徹底執行不必自動獲得更多寫入權限。自主執行也不必自動選用昂貴模型。
成本與品質的三個階層
模型路由器提供三種易懂模式。它們改變價格與模型等級在選型中的權重;所需技能始終是核心。
| 階層 | 路由器模式 | 適用場景 |
|---|---|---|
| 節省 | economy |
常規任務、擷取、明確界定的變更。成本權重大。 |
| 均衡 | balanced |
大多數執行的預設值:技能匹配、成本與品質等級保持平衡。 |
| 進階 | expert |
架構、研究、複雜分析與嚴格審查。模型等級權重明顯較高,成本權重較低。 |
運營配置檔 快速且廉價、均衡 與 徹底 將此路由器模式與其他決策打包:例如協同思考僅觀察還是主動執行、驗證是否具約束力、Argo 在失敗時是否可更強力地升級處理。
自主權的三個階層
自主權規定的不是 Argo 認為 什麼正確,而是 何時 需要人介入。
| 階層 | 行為 |
|---|---|
| 安全 | Argo 分析並規劃。變更保留供審查;執行寫入或風險操作前會詢問。 |
| 均衡 | 一般變更可在隔離工作狀態產生。刪除、命令、下載、網路存取或受保護路徑仍會詢問。 |
| 完全自主 | 執行無常規回詢。硬性安全、策略與預算邊界仍生效。 |
代碼中這些規則以 readonly、confirm_write、auto_write 和 bypass 更精確實現。三個階層使其可操作;專案策略始終是最終裁決者。它可排除雲供應商、僅允許本地模型、封鎖網路存取、限制命令、保護密鑰或設定成本上限。
2. CEO 層將委託轉化為計畫
使用者先以自然語言描述目標。Argo 的 CEO 層獲得有限的專案概覽、可用模型目錄與相關專案資訊。它可先就未決問題提問,或直接生成計畫。
計畫不僅是待辦清單。每項任務獲得角色、描述、依賴與所需能力——例如 coding、planning、qa_review 或 context_comprehension。困難任務可標記更高難度。CEO 層不硬性指定模型:它描述工作,路由器稍後按任務選型。
因此計畫成為人類可讀的專案共識,而執行保持適應性。
3. 從計畫生成任務圖
計畫核准後,Argo 將任務轉為任務圖。節點僅在依賴成功完成後才能執行。獨立任務可並行。
調度器按可理解的效用啟發式排序就緒節點:預期品質減去成本、時間與風險懲罰。若節點位於關鍵路徑,平手時優先,因它決定整體執行時長。
高不確定性或高風險時,Argo 可在處理前啟用協同思考模式:多視角開發方案、相互批判,為 Worker 提供有理據的工作方案。是否僅記錄或真正執行,由啟動前選定的運營配置檔決定。
4. 每個任務前:適配上下文、技能與模型
Worker 啟動前,Argo 依角色與任務構建專用上下文。包含相關檔案、依賴結果、啟用時的緊湊記憶包與適配技能指南。Argo 不盲目將全部專案知識塞入提示。記憶與技能按相關性、來源、時效性、成本與安全狀態選取。
隨後模型路由器選型。先排除不可達、上下文窗口不足、額度耗盡或違反當前策略的候選。對剩餘模型評估四因子:
- 能力匹配度: 模型對所需技能評分如何?多技能取平均。
- 成本: 請求多貴——或啟用成本路由時,預期成功結果的成本。 | 模型等級: 困難、安全關鍵、架構與審查任務可偏好旗艦等級。
- 經驗值: 足夠真實結果後,納入模型/技能組合的近期成功率與重試率。
成本計算可用 預期成功成本:直接價格、預期重試、驗證開銷、可能返工與小延遲懲罰。單次廉價調用非自動最優,若頻繁失敗或觸發返工。
顯式模型推薦僅在可用、策略允許且上下文窗口足夠時採納。CEO 層的規劃、委派與上下文理解另用專為這三能力挑選的強模型。
5. Worker 以細小可驗證步驟處理任務
Worker 不單次回覆完成。它跑有限 ReAct 迴圈:
- 模型提結構化動作——如讀檔、搜尋、跑測試或寫入變更。
- Executor 檢查權限、路徑、命令風險與當前策略。
- Argo 僅執行允許動作。
- 結果、差異與錯誤作為觀察回傳模型。
- 基此 Worker 修正下一步或結束任務。
因此 Agent 可先讀受影響代碼、再改動、跑測試、將結果納入下一決策。完整流程在執行日誌可見。
輸出本身也被檢查。模型產出無效動作 JSON 時,Argo 可要求有限修復迴圈。嚴格模式下,持續錯誤輸出被受控拒絕,而非將不明文本解釋為動作。
6. 錯誤時:針對性修正而非盲目重試
非每個失敗任務意味整個執行失敗。編排引擎區分錯誤原因並受控反應:
- 暫時性錯誤可在固定邊界內重試。
- 硬性驗證判定提供具體異議作為下一次嘗試的指令。
- 啟用級聯時,下一次嘗試承接前一次認知,而非歸零。
- 失敗後 Argo 可偏好更強模型。
- 預算耗盡時不啟動昂貴盲試:節點以文檔化部分結果結束或可見升級。
節點策略最終決定任務可否跳過、受控失敗或需用戶決策。依賴任務僅獲得確認的部分結果。由此局部錯誤不成為靜默傳播至後續計畫的錯誤。
7. 實作後:審查、驗證與可能的進一步週期
計畫任務完成後,Argo 從多視角檢查整合狀態:
- QA Agent 可讀檔案並執行測試命令。
- 架構 Agent 僅讀取檢查結構,刻意無寫入權限。
- 確定性驗證器可跑測試、型別檢查或 Lint 作為客觀神諭。
- 模型基礎與確定性判定融合為整體裁決。
若 QA、架構或具約束力驗證器發現問題,Argo 將判定歸因至受影響任務。僅這些任務帶著具體反饋重做。隨後再次審查與驗證。無共識模式時迴圈有限;顯式選擇共識模式時,持續至用戶停止或檢查者同意。
觀察模式驗證器記錄判定但不阻擋。約束模式下硬性判定可阻止結果視為成功。由此可按運營配置檔選擇嚴格度,不犧牲可追溯性。
8. 僅當狀態經驗證:文檔與 CEO 總結
完成工作與驗證週期後,文檔 Agent 可記錄變更。隨後 CEO 層生成用戶總結:完成什麼?遺留什麼?跑了哪些檢查?涉及哪些檔案或決策?
結果不只是聊天文本。執行擁有共同標識,串聯計畫、模型選擇、成本、動作、驗證裁決、用戶中斷與後續補丁決策。由此可追溯 Argo 如何得出結果。
9. 最後由人決定真實工作區
預設 Argo 在隔離 worktree 工作。變更作為補丁存在,非靜默進入真實專案。視自主權階層,隨後發生三種情況之一:
- 補丁保留供採納、部分採納、編輯或捨棄。
- 成功補丁自動採納。
- 與間時修改檔案衝突時 Argo 可見停止;不覆蓋外部變更。
失敗執行不自動應用。高自主配置也不會解除策略:密鑰保護、命令規則、供應商邊界、預算限制與必要人工關卡持續生效。
編排引擎的成果
編排引擎不只決定下一個回答的模型。它將用戶意圖、設定、規劃、並行化、模型選擇、工具使用、錯誤修正、品質保證與安全採納串聯為連貫流程。
衡量標準非「盡可能多 Agent」。額外工作僅在有理據處產生:困難架構決策用更強模型、不確定性時第二思考路徑、驗證器異議後針對性重試、或風險生效前的人工批准。
航向已定。