Agent harness

agent harness是大型语言模型(LLM)的軟體基礎架構,使大型语言模型可以發揮人工智能代理的功能。agent harness會處理工具使用、記憶、狀態持久性、執行環境及回饋回路,而大型语言模型會進行理解的工作。有一個2026年開始流行的縮寫,將這幾個技術簡化為Agent = Model + Harness。

因為LLM本身无状态,在沒有其他工具的協助下,只能產生文字,harness就是讓模型可以依照步驟採取行動、使用外部工具,以及在不同的對話之間持續進行長任務的關鍵。最原始的作法是重複地在上下文窗口中讀取持續增加的文字,不過harness會在線下進行記錄,使其變成可以管理agent狀態的結構化軟體環境。
架構
harness會協調許多的機制,而這些機制早在agent harness此詞語問世之前就已經有了。模型在一個迴圈中,反覆進行理解和行動的模式,在同行評審的ReAct框架中已有出現,在Toolformer模型時,模型有可以呼叫外部工具的能力。

常見會歸類在harness裡的元件包括工具派發、記憶以及狀態的持久化、隔離的沙盒或工作區、上下文管理、以及像是作用域權限(scoped permission)、核可分級(approval tier)和系統監控等安全防護欄(guardrail)。在2026年的一份工作報告中,Anthropic描述了一個具體範例,其中有一個預備環境的初始化agent,以及一個編寫程式的agent,後者會反覆從未完成的任務中選出一個、處理、提交變更、更新進程記錄,一直到agent停止為止。

Thoughtwork的Birgitta Böckeler區分兩種不同的harness:內層harness是由模型開發商所提供(像是agent SDK,或是像Cursor或Codex等程式設計工具,外層harness是使用者所提供的,例如指令檔案、模型上下文协议伺服器、以及自訂技能。她進一步的區分在agent動作前,引導agent的引導機制(guides),以及在agent動作後,觀察結果,讓agent自行修正的感測機制(sensors),這些機制可能是計算型的(像是語法檢查器或是測試,有明確的結果),也可能是推理型的(例如「用LLM作為裁決者」的語意檢查)。有一篇廣為引用的OpenAI工程報告,其中提到主要由編碼Agent所構建的大型程式碼庫,以及後續Thoughtworks、LangChain和Anthropic的文章,使此一詞語更廣為人知。

harness在2026年中時,已成為學術研究的主題。獨立報導提及了多項研究,像是Self-Harness,是代理從自身的失效中提出調整其harness的作法,並且核實,另一個是Harness-1,是開源的研究agent,其提昇檢索準確度的方式主要透過重構模型周圍的軟體環境,而不是用加大模型的方式來進行。

和提示工程、上下文工程的關係
一般會將Harness engineering定位為比提示工程(針對單一互動的最佳化)更廣的一層,也比上下文工程(管理模型在特定時刻可以看到什麼資訊)要廣,在此框架中,harness設計整個運作環境,而提示工程和上下文工程都只是其中的一部份。Harness有一個顯著特徵,在於所封裝的組件具有非確定性,因此Harness的設計宗旨在於:當模型產生幻覺行動,或是錯誤地將未完成的任務回報為已完成時,系統仍可以優雅復原。
相關條目

  • 人工智能代理
  • 大型语言模型
  • 提示工程
  • 模型上下文协议(MCP)

*

  • 測試控制工具

參考資料

评论 (0)

  • 还没有评论,来抢沙发吧。