跳到主要內容
AI News HubLIVE
站內改寫1 分鐘閱讀

Agent SDK 的人機協同工具 | OpenRouter

文章摘要

OpenRouter 的 Agent SDK 新增第四種工具類型:人機協同 (HITL) 工具。通過一個鈎子函數,代理可以自動處理常規調用,在高風險場景下暫停等待人類介入,支持按每次調用自動解決或升級。

Agent SDK 的人機協同工具 | OpenRouter
報告錯誤

更正渠道尚未開通,可先複製下方文章資訊留存。

查看更正說明
直接讀正文

OpenRouter 宣佈其 Agent SDK 推出第四種工具類型——人機協同(Human-in-the-Loop, HITL)工具。該功能允許代理在運行過程中根據預設邏輯自動處理常規調用,同時在需要人工判斷的場景下暫停執行,所有控制邏輯集中在一個鈎子函數中。

安裝 SDK 後,開發者可以定義 HITL 工具,並通過配套的示例教程快速實現。HITL 工具的核心機制在於 onToolCalled 鈎子:當代理調用該工具時,鈎子函數檢查輸入數據並做出決策。如果返回一個值,代理繼續運行(類似常規工具);如果返回 null,則循環暫停,狀態變為 awaiting_hitl,應用程序可以獲取待處理的調用並向用户展示。用户做出決策後,通過 callModel 傳入包含人類決定的結果,代理循環恢復。

此外,SDK 還提供了可選的 onResponseReceived 鈎子,用於在人類提交結果後、模型接收前對原始輸入進行轉換。開發者可以利用它添加元數據、標準化格式、驗證業務規則或補充上下文。如果鈎子拋出錯誤,錯誤信息會以 { error: ..., originalOutput: ... } 的形式傳遞給模型,確保不遺漏任何異常。

HITL 工具與現有的 requireApproval 功能有何不同?兩者都會暫停等待人類輸入,但決策邏輯不同。requireApproval 在所有調用執行前都需要明確的人工同意,適用於“刪除數據庫”或“發送郵件”等場景。而 HITL 工具僅在鈎子返回 null 時暫停,且可以基於數據(如金額、風險評分、內容策略標記等)自動決定是否跳過人工審核。例如,支付金額低於 100 美元自動批准,高於則請求人工確認。

完整的生命週期如下:模型在代理循環中調用 HITL 工具 → onToolCalled 運行,返回值則繼續,返回 null 則暫停 → 應用程序通過 getToolCalls() 獲取待處理調用並呈現給用户 → 用户做出決定 → 通過 callModel 將決定作為 function_call_output 傳入 → onResponseReceived(如果有)轉換響應 → 模型接收結果,代理循環繼續。SDK 負責狀態跟蹤、鈎子分發和模式驗證,開發者無需編寫循環代碼。

OpenRouter 提供了詳細的示例教程、完整類型簽名和 API 參考文檔,幫助開發者快速上手。開發者可以獲取 API 密鑰,並在 Discord 社區分享他們的構建成果。

展開要點與分析

文章情報

工程師中級

要點

  • HITL 工具通過 onToolCalled 鈎子檢查輸入,返回值則繼續,返回 null 則暫停等待人工決策。
  • 可選的 onResponseReceived 鈎子在人工響應後轉換結果,支持元數據標記、格式規範化和業務規則驗證。
  • 與 requireApproval 對比:HITL 基於數據驅動(如金額閾值)自動決定,而 requireApproval 每次都需要人工同意。

要點與分析由自動化流程生成,可能有誤,請結合原始來源核實。