[Anthropic 工程部落格] 建構長運行智能體的高效能框架 Anthropic 最新工程部落格探討如何為長運行智能體設計有效的“框架”,以應對複雜任務在多會話間的持續執行挑戰。基於Claude Agent SDK 實際經驗,強調透過結構化環境和漸進式工作流程,讓智能體像人類軟體工程師一樣,逐步推進項目,而非試圖一蹴而就。 長運行智能體的核心挑戰長運行智能體目標是處理跨小時或數天的複雜任務,例如建立一個完整複雜的軟體專案。但由於上下文視窗的容量限制,每個會話都像是從零開始:智能體缺乏先前記憶,容易陷入「一次性完成」的陷阱——試圖在單一會話中搞定整個項目,導致上下文耗盡、程式碼雜亂或文件缺失。其他常見問題包括: · 過早宣告完成:後續智能體看到部分進展,就錯誤地標記任務結束。 · 狀態復原困難:智能體花大量時間猜測未完成工作,或在buggy 環境中掙扎。 · 測試缺失:功能看似就位,但未通過端對端驗證,隱藏潛在問題。 透過實驗(如建構200+ 功能的網頁克隆專案)總結這些失敗模式,並提供針對性解決方案,借鑒軟體工程最佳實踐,如Git 版本控制和自動化測試。 提出的解決方案:雙智能體框架與結構化環境解決方案是引入「框架」——一個由提示、腳本和文件組成的系統,確保會話間狀態持久化和乾淨交接。具體分為兩個角色: 1. 初始化智能體(Initializer Agent):僅用於首輪會話,負責搭建初始環境。產生關鍵文件,包括: · feature_list.json:一個JSON格式的功能清單,列出所有任務(如「建立新聊天」),每個包含描述、步驟和初始「passes」狀態(false)。 JSON格式確保不可變性,防止後續編輯。 · claude-progress.txt:日誌文件,記錄動作和進展。 · init. sh:啟動腳本,用於運行開發伺服器、測試基礎功能,減少後續設定開銷。 初始化後,進行首次Git 提交,形成乾淨基線。 2. 編碼智能體(Coding Agent):後續會話專用,專注於漸進式進展。每個會話僅處理一個功能: · 會話啟動例程:檢查目錄(pwd)、審查Git 日誌和進度檔、執行init. sh 啟動環境、驗證核心測試。 · 工作流程:從JSON 清單選一未完成功能,編碼、提交描述性Git 變更、更新「passes」 狀態(僅在通過測試後),並記錄日誌。 · 強調「乾淨狀態」(clean state):結束時,程式碼須無bug、文件齊全、可直接合併到主分支。 關鍵實踐與工具整合· 功能清單與Git:JSON 清單防止“過早完成”,Git 提供回滾和歷史追蹤。實驗顯示,相較於Markdown,JSON 減少了不當修改。 · 端對端測試:整合瀏覽器自動化工具(如Puppeteer MCP 伺服器),模擬人類操作(如點擊模態框、截圖驗證)。這捕捉程式碼審查忽略的互動bug,但文章也指出局限,如原生瀏覽器元素的處理。 · 提示策略:初始化和編碼提示不同-前者聚焦搭建,後者強調單一功能和驗證。使用強約束語言(如“絕不編輯測試”)規避失敗。 · 失敗模式表格:文章附表總結問題(如「設定混淆」)及因應(如標準化腳本),便於實際應用。 結論與展望 Anthropic 的經驗證明,這種框架能顯著提升長運行智能體的可靠性:從混亂的「一擊即潰」轉向工程化的持續迭代。關鍵啟示是藉用人類工程實踐(如版本控制、測試驅動開發),結合AI 的自動化潛力。從簡單專案起步,檢視失敗模式,並擴展到多智能體系統(如專職測試智能體)。未來方向可以泛化到其他領域,如科學研究或財務建模,探索更複雜的協作架構。 部落格網址:
正在加载线程详情
正在从 X 获取原始推文,整理成清爽的阅读视图。
通常只需几秒钟,请稍候。
![[Anthropic 工程部落格] 建構長運行智能體的高效能框架
Anthropic 最新工程部落格探討如何為長運行智能體設計有效的“框架”,以應對複雜任務在多會話間的持續執行挑戰。基於Claude Agent SDK 實際經驗,強調透過](https://pbs.twimg.com/media/G6uD6C6aEAAAsuS.jpg)