理解 AI 中的 Agent Harnesses
Agent harness 是一種軟體環境,它封裝在 AI 模型周圍,以提供作為自主 Agent 所需的結構、工具和指令。雖然原始的 AI 模型提供了「智能」,但 harness 提供了解決方案的運作框架——有效地充當了模型權重與實際、面向任務的應用程式之間的橋樑。
Agent Harness 的四個核心組件
一個功能完備的 agent harness 通常由四個主要的技術層組成,這些層決定了模型如何與使用者及外部世界進行互動。
1. System Prompt
System prompt 作為基礎指令集,定義了 Agent 的人格、規則和行為準則。與某些前沿模型中嵌入的訓練或「靈魂文件」不同,system prompt 會在每次請求時注入到對話中。這使得 harness 可以規定模型在特定情境下應如何行動,而無需重新訓練底層模型。
2. Tools
Tools 是以程式碼編寫的可執行能力,模型可以透過「呼叫」它們來執行文字生成之外的動作。Harness 提供這些工具的軟體——例如網路搜尋、程式碼執行環境或電子郵件撰寫——並向模型描述它們。至關重要的是,harness 並不規定何時使用工具;它只是讓工具可用,並允許模型決定哪個工具適合給定的任務。
3. Agentic Loops
Agentic loop 是實現迭代推理和自我修正的框架。與單次的提示詞-回應互動不同,harness 允許模型:
- 分析請求。
- 執行工具(例如:搜尋網路)。
- 檢視結果。
- 決定結果是否充足,或者是否需要另一次工具呼叫。
- 重複此過程直到達成目標。
4. Translation Layer
Translation layer 提供了模型無關性(model agnosticism),允許單一 harness 與各種 AI 模型協作(例如:在 Anthropic、OpenAI 或開源權重模型之間切換)。這一層防止了供應商鎖定,並使用戶能夠在維持相同工具集和 system prompt 的同時,比較不同模型的成本和效能。
使用者自主權與開源 Harnesses
擁有 harness 與使用專有 AI 應用程式之間存在關鍵區別。當使用者在本地運行 harness 時,他們保留了對數據、對話紀錄和 Agent 特定配置的控制權。
開源 harness——例如 Pi、OpenClaw、OpenCode 和 Hermes——允許使用者透過擴充功能或修改後的 system prompt 來客製化他們的 Agent。例如,Pi harness 的設計非常精簡,允許使用者建立並分享擴充功能,將 Agent 轉換為股票交易員或軟體工廠等專業化工具。
技術視角與產業類比
產業從業者和開發者將 harness 視為 AI Agent 的「電子元件」或「底盤」。各種類比有助於釐清模型與 harness 之間的關係:
- 汽車類比: 模型是引擎,harness 是底盤,token 是燃料,而最終產生的 Agent 是汽車。
- 硬體類比: 模型代表腦細胞的連接,而 harness 代表大腦與世界互動所需的所有其他要素。
- 工具類比: 模型就像一匹馬,而 harness 由用於將該力量導向特定目標的馬鞍和韁繩組成。
從實作中的工程見解
為會計等專業領域實作 harness 的開發者指出,提供一個帶有工具和護欄(guardrails)的靈活 harness,通常比建立高度規範性的「技能」或指令清單更有效。當前沿模型在受控環境中被賦予工具以獨立推理問題時,其表現往往優於僵化的腳本。
一些開發者也強調了「護欄」(guardrails)的重要性——包括工具呼叫前的驗證以確保數據格式正確,以及工具呼叫後的驗證以核實輸出——作為提高 agentic loop 可靠性的方式。
Sources
相關
- Dispatch
- Dispatch
- 專案
- Dispatch
- 專案