AI News HubLIVE
站内改写

我們如何構建 LangSmith Engine:用於改進代理的代理

LangSmith Engine 是一個位於代理追蹤之上的智能代理,能夠發現重複出現的問題並提出改進建議。本文詳細介紹了其技術架構,包括如何大規模篩選追蹤、識別問題、生成評估器和數據集示例,並持續更新代理概覽以優化後續運行。

文章情報

工程師進階

要點

  • Engine 自動發現追蹤中的失敗模式並轉化為可操作的問題。
  • 採用兩階段處理:先通過軌跡摘要快速篩選,再深入調查可疑追蹤。
  • 可連接代碼庫,提出修復建議並生成評估器和迴歸測試用例。
  • 通過代理概覽維持長期記憶,不斷改進代理行為。

為甚麼重要

這條新聞值得關注,因為Engine 自動發現追蹤中的失敗模式並轉化為可操作的問題。

技術影響

可能影響模型選型、推理成本、產品能力和評測基準。

上週,我們發佈了 LangSmith Engine,這是一個位於 LangSmith 追蹤項目之上的智能代理,旨在自動發現並解決代理運行中的重複問題。Engine 的核心任務包括:識別追蹤中的失敗模式、將其轉化為可處理的問題、以及生成評估器、數據集示例和修復方案,從而將生產中的失敗轉化為團隊的長期資產。

為什麼構建 Engine

隨着部署的代理數量增長,生成的追蹤數據也急劇增加。基本的工具錯誤容易發現,但許多問題——如代理循環調用同一工具、使用錯誤參數、遺漏必要工具等——需要深入檢查每條追蹤才能察覺。為了解決這一內部痛點,我們開發了 Engine。

Engine 的輸出:問題(Issues)

每個問題包含名稱、描述、類別、嚴重等級、相關追蹤證據和建議行動。建議行動包括:在線評估器(可標記未來類似失敗)、數據集示例(用於離線迴歸測試)、以及代碼或提示的修復建議。Engine 不僅指出錯誤,更致力於將失敗轉化為可測試、可行動的改進點。

Engine 的輸入

Engine 接收四種主要輸入:

  • **指令**:通過“代理概覽”(Agent Overview)描述代理的行為、預期追蹤結構和已知失敗模式。首次運行時從引導答案和項目上下文創建,後續手動或自動更新。
  • **追蹤**:通過 LangSmith CLI 拉取,優先使用壓縮的軌跡摘要進行篩選,僅在需要時加載完整內容。
  • **現有問題**:讀取當前問題看板,避免重複,追加證據。
  • **代碼庫(可選)**:連接 GitHub 倉庫後,Engine 能更精確診斷問題並自動提出代碼修改。

高層架構

Engine 基於 Deep Agents 構建,運行在沙盒環境中,通過 LangSmith CLI 與 LangSmith 交互。其處理流程分為五個步驟:

  1. **準備上下文**:設置沙盒、初始化代理概覽、配置 CLI。
  2. **大規模篩選**:使用專用的篩選子代理(基於 Haiku 模型)並行處理約 20 條追蹤的壓縮軌跡,快速標記可疑項。
  3. **深入調查**:主代理調度調查子代理,加載完整追蹤內容,尋找失敗模式。
  4. **創建問題與資產**:生成問題、評估器、數據集示例,並可選地自動提交修復。
  5. **更新記憶**:將新發現寫入代理概覽,供後續運行參考。

篩選階段是 Engine 擴展性的關鍵。通過軌跡格式(每輪角色、延遲、內容大小)和優先處理帶有反饋的追蹤,Engine 有效降低了需要詳細分析的追蹤數量。實踐證明,這種兩階段方法使 Engine 能夠處理數千條生產追蹤而不會過載。

未來展望

Engine 目前仍處於早期階段,但已顯著提升了代理調試和迭代的效率。未來,我們計劃增強其對複雜多步驟問題的識別能力,並進一步優化代碼庫的集成體驗。