LangChain發布DeepAgents沙箱功能:安全執行代碼的新突破
AI Agent開發領域迎來重大突破!
LangChain團隊近日正式發布了DeepAgents沙箱功能,這是一套全新的集成方案,允許開發者在遠程沙箱環境中安全執行任意DeepAgent代碼。
目前,該功能已支持來自三家合作伙伴的沙箱服務:Runloop、Daytona和Modal。
下面,讓我們深入了解沙箱的用途以及如何通過DeepAgents-CLI使用它們。
為什么需要沙箱?
沙箱為我們提供了一個簡單、可配置的環境,用于在本地機器之外執行代碼和處理任務。以下是一些典型的使用場景:
? 安全性保障:你的代理可能執行任意代碼,這些代碼可能對本地機器造成危害(例如:rm -rf命令)。在沙箱中運行意味著你的機器可以免受潛在惡意代碼的威脅。
? 干凈的環境:你需要特定的依賴、編程語言或操作系統配置,但不想污染本地環境。啟動一個包含所需配置的沙箱,使用完畢后即可終止,保持本地環境的整潔。
? 并行執行:同時運行多個代理,每個代理都在自己獨立的隔離環境中,避免資源沖突或相互干擾。
? 長時間運行的任務:讓代理處理耗時的操作,而不會阻塞你的本地機器。
? 可重現性:確保團隊成員之間執行環境的一致性。
工作原理
沙箱集成主要包含三個步驟:
? 設置沙箱(可使用可選的設置腳本)
? 代理需要執行命令
? 遠程沙箱運行命令并將結果返回給用戶
你的DeepAgent在本地(或你指定的任何位置)運行,但當它需要執行代碼、創建文件或運行命令時,這些操作會在遠程沙箱中進行。
圖片
代理可以完全訪問沙箱的文件系統和命令輸出,因此可以自然地迭代工作。設置腳本可用于加載環境變量、克隆Git倉庫、準備環境等操作。
如何開始使用
要使用Daytona和Runloop沙箱,只需創建賬戶并將API密鑰存儲為環境變量(DAYTONA_API_KEY和RUNLOOP_API_KEY)。要使用Modal沙箱,請按照這里的設置說明進行操作,并運行modal setup命令。
完成設置后,DeepAgents CLI提供了簡單的命令,讓你在幾分鐘內就能開始使用沙箱,包括便捷的sandbox和sandbox-setup命令。
注意:雖然我們提供了上下文管理器來自動清理沙箱,但我們建議你檢查提供商的儀表板,確保沒有代理或沙箱意外地繼續運行。
例如,以下命令可用于將runloop沙箱附加到你的DeepAgent,并使用位于當前目錄中的自定義設置腳本:
uvx deepagents-cli --sandbox runloop --sandbox-setup ./setup.sh
安全使用沙箱的注意事項
雖然沙箱是隔離的,但在處理不受信任的輸入時,代理仍然容易受到提示注入攻擊。
為了降低沙箱中存在密鑰的風險,建議運行可信的設置腳本、使用人工介入(human-in-the-loop)機制,并分配短期有效的密鑰。
沙箱API正在快速發展,我們期待更多提供商支持有助于緩解提示注入和密鑰管理問題的代理服務。
未來展望
LangChain團隊對開發者將如何使用沙箱與DeepAgents感到興奮。
他們將繼續為沙箱添加更多配置選項,并分享更多關于集成沙箱以完成實際工作的示例。
如果你想觀看關于如何開始使用沙箱的教程,可以查看他們的教程頁面。準備開始構建了嗎?今天就可以開始使用DeepAgents文檔和GitHub倉庫。
這一功能的發布標志著AI代理開發工具鏈的進一步完善。
通過提供安全的代碼執行環境,LangChain正在降低AI代理開發的門檻,讓開發者能夠更安全、更高效地構建和測試AI代理應用。
對于需要在生產環境中部署AI代理的團隊來說,這無疑是一個重要的里程碑。



























