E2B 提供云沙箱,用于在隔离环境中运行 AI 生成的代码。请参阅 E2B 文档 了解注册、身份验证和平台详情。
安装
pip install langchain-e2b
uv add langchain-e2b
身份验证
设置您的 E2B API 密钥:
通过 E2B SDK 创建沙箱时,配置特定于 E2B 的选项,如模板或沙箱生命周期。
创建沙箱
在 Python 中,您使用 E2B SDK 创建沙箱,然后使用 deepagents 后端.
from e2b import Sandbox
from langchain_e2b import E2BSandbox
e2b_sandbox = Sandbox.create()
backend = E2BSandbox(sandbox=e2b_sandbox)
try:
result = backend.execute("echo hello")
print(result.output)
finally:
e2b_sandbox.kill()
与 Deep Agents 配合使用
from e2b import Sandbox
from deepagents import create_deep_agent
from langchain_anthropic import ChatAnthropic
from langchain_e2b import E2BSandbox
e2b_sandbox = Sandbox.create()
backend = E2BSandbox(sandbox=e2b_sandbox)
agent = create_deep_agent(
model=ChatAnthropic(model="claude-sonnet-4-6"),
system_prompt="You are a coding assistant with sandbox access.",
backend=backend,
)
try:
result = agent.invoke(
{
"messages": [
{"role": "user", "content": "Create a hello world Python script and run it"}
]
}
)
finally:
e2b_sandbox.kill()
与 Deep Agents Code 配合使用
langchain-e2b 还发布了用于 Deep Agents Code, so dcode 可以在 E2B 沙箱中运行代理工具调用。将包安装到 dcode 环境,设置您的 API 密钥,然后选择提供商:
dcode --install langchain-e2b --package
dcode --sandbox e2b
E2B 沙箱使用 /home/user 作为默认工作目录。要从特定的 E2B 模板创建沙箱,请设置 E2B_TEMPLATE;要更改沙箱生命周期,请设置 E2B_SANDBOX_TIMEOUT (以秒为单位)。每个变量也接受一个 DEEPAGENTS_CODE_前缀形式(例如, DEEPAGENTS_CODE_E2B_API_KEY),后者优先。
Deep Agents Code 为您管理沙箱生命周期,在启动时创建沙箱,在退出时删除沙箱。
清理
完成后请务必终止 E2B 沙箱,以避免持续消耗资源。
另请参阅: 沙箱.