惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

P
Privacy International News Feed
Hacker News - Newest:
Hacker News - Newest: "LLM"
Application and Cybersecurity Blog
Application and Cybersecurity Blog
N
News and Events Feed by Topic
Hacker News: Ask HN
Hacker News: Ask HN
V2EX - 技术
V2EX - 技术
L
LINUX DO - 最新话题
Google Online Security Blog
Google Online Security Blog
www.infosecurity-magazine.com
www.infosecurity-magazine.com
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
Stack Overflow Blog
Stack Overflow Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
P
Proofpoint News Feed
A
Arctic Wolf
Forbes - Security
Forbes - Security
Spread Privacy
Spread Privacy
Security Latest
Security Latest
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
CERT Recently Published Vulnerability Notes
Latest news
Latest news
AWS News Blog
AWS News Blog
M
MIT News - Artificial intelligence
GbyAI
GbyAI
V
Visual Studio Blog
T
The Blog of Author Tim Ferriss
有赞技术团队
有赞技术团队
Help Net Security
Help Net Security
博客园 - Franky
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
S
Schneier on Security
S
SegmentFault 最新的问题
Microsoft Security Blog
Microsoft Security Blog
Y
Y Combinator Blog
PCI Perspectives
PCI Perspectives
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园_首页
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
P
Palo Alto Networks Blog
SecWiki News
SecWiki News
TaoSecurity Blog
TaoSecurity Blog
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
K
Kaspersky official blog
G
Google Developers Blog
H
Hacker News: Front Page
T
Tailwind CSS Blog
aimingoo的专栏
aimingoo的专栏
博客园 - 叶小钗
T
Troy Hunt's Blog
F
Full Disclosure
T
Threat Research - Cisco Blogs

博客园 - stardsd

AI for AI:Recursive Self Improvement(RSI) DRAM(High Bandwidth Memory)与HBM(Dynamic Random Access Memory) Daytona——为Agent提供可长期存在、可持续开发、可恢复状态的 Workspace Browserbase:AI Agent 的“云浏览器” Composio:AI Agent 的工具连接层 人工智能前沿研究报告 智能体攻防 计算语言学(computational linguistics) 状态空间模型(State Space Model, SSM) 神经符号集成(Neuro-Symbolic Integration) 动态计算分配(Dynamic Compute Allocation)技术:MoD 从LLM到SLM:小型语言模型 Claud Code 源码设计哲学总结 Claud Code源代码主提示词(prompts)中文版 REPL的实现以及Agent的REPL-Plan模式 LLM 大语言模型研究进展与趋势报告 DeepSeek DualPath 论文解读 Test Time Scaling (TTS) Web 4.0:Agentic Web CL-bench:上下文学习的评测 梅宏院士:符号主义与连接主义的结合应该成为下一代AI的发展方向 训推误差(training-inference mismatch)与重要性采样(Importance Sampling,IS) 如何设计GRPO系算法的reasoning reward + pair采样策略 GRPO(Group Relative Policy Optimization) 算法的演进脉络以及DAPO、VAPO、SRPO、GFPO的区别与联系 VLM评估体系指标对比:CIDEr vs CLIPScore vs GPT-based Eval CIDEr公式:多模态评价指标 TDM(Tree-based Deep Model,树模型) VLM的视觉词汇表扩充(Vary:扩展大型视觉语言模型的视觉词汇量) CLIP视觉词汇表与Q-Former Agent Skill 解析 斯科特·佩奇(Scott E. Page)多样性预测定理(Diversity Prediction Theorem) AI合成数据、模型坍缩与数据焦虑问题:合成数据的扩展定律(Scaling Law)
E2B介绍与示例
stardsd · 2026-07-03 · via 博客园 - stardsd

很多人看完 E2B 的介绍之后,仍然不知道Agent 到底什么时候会调用 E2B

下面用一个完整的真实 Agent Workflow来说明。


场景:AI 数据分析 Agent

假设你开发了一个类似 ChatGPT Data Analysis(以前叫 Code Interpreter)的 Agent。

用户上传一个 Excel。

然后说:

"请分析一下近三年的销售数据,并生成一份 PDF 报告,同时预测 2027 年销售额。"

这个需求看起来只有一句话,但对于 Agent 来说,需要经过很多步骤。


第一步:LLM 理解需求(Plan)

LLM 首先不会写代码,而是规划任务。

用户需求:

分析销售数据
↓

拆解任务:

① 读取 Excel

② 数据清洗

③ 统计各地区销售额

④ 绘制趋势图

⑤ 建立预测模型

⑥ 输出 PDF

这里还没有调用 E2B。


Agent 内部维护了一张 Tool List。

例如:

Available Tools

✓ Browser

✓ Search

✓ Python Sandbox(E2B)

✓ Email

✓ SQL

LLM 推理:

这个任务需要执行 Python。

于是:

Tool Selected:

Python Sandbox

这里:

Python Sandbox 实际上就是 E2B。


第三步:Agent 调用 E2B

这时候 Agent 不会:

exec(code)

而是:

Agent Runtime
      │
      ▼
Create Sandbox
      │
      ▼
E2B 返回:

Sandbox ID

sandbox-12345

例如:

from e2b import Sandbox

sandbox = Sandbox()

这一步发生了什么?

实际上:

E2B 在云端创建了一台临时 Linux。

里面已经安装好了:

Ubuntu

Python

pip

Terminal

Filesystem

就像:

给 Agent 临时分配了一台电脑。


第四步:上传文件

用户上传:

sales.xlsx

Agent:

上传到 Sandbox。

Local

↓

E2B Sandbox

↓

/home/user/sales.xlsx

例如:

sandbox.files.write(
    "/home/user/sales.xlsx",
    file_bytes
)

现在:

Sandbox 已经拥有:

sales.xlsx

第五步:Agent 生成 Python

LLM 根据需求生成:

import pandas as pd

df = pd.read_excel("sales.xlsx")

summary = df.groupby("地区")["销售额"].sum()

print(summary)

注意:

LLM 只是生成代码。

它不会运行。


第六步:E2B 执行代码

Agent:

把代码发送给 Sandbox。

例如:

result = sandbox.run_code("""
import pandas as pd

df = pd.read_excel("sales.xlsx")

print(df.head())
""")

此时:

真正执行的是:

Sandbox

↓

python script.py

不是你的服务器。


第七步:返回执行结果

Sandbox:

返回:

stdout:

北京 3000 万

上海 2500 万

深圳 1800 万

Agent:

读取:

Observation:

已经得到统计结果

这里就是:

Observe

第八步:继续推理

LLM:

发现:

需要画图。

于是继续生成:

plt.plot(...)

plt.savefig("trend.png")

再次调用:

E2B

↓

run_code()

Sandbox:

生成:

trend.png

然后:

Agent

↓

拿到图片

第九步:生成 PDF

LLM:

再次写代码:

from reportlab...

生成 PDF

继续:

run_code()

生成:

report.pdf

然后:

Agent:

返回:

已完成分析。

整个过程中:

E2B 一共可能执行:

run_code()

↓

run_code()

↓

run_code()

↓

run_code()

↓

run_code()

而不是一次。


第十步:删除 Sandbox

任务结束。

Agent:

Delete Sandbox

于是:

Ubuntu

Python

文件

图片

PDF

全部删除。

这就是:

Sandbox 生命周期结束。


如果运行失败怎么办?

这是 E2B 最重要的价值之一。

假设:

LLM 写出了:

import panda

执行:

ModuleNotFoundError

Sandbox:

返回:

stderr:

No module named panda

Agent:

Observe:

失败

LLM:

重新思考:

哦。

应该是:

pandas

重新生成:

import pandas

再次:

run_code()

成功。

这就是:

Plan

↓

Act

↓

Observe

↓

Retry

Agent Loop。


再来看一个 AI Coding 的例子

用户:

帮我修这个 Python Bug。

Agent:

读取 GitHub

↓

Clone Repo

↓

进入 Sandbox(E2B)

↓

pytest

↓

失败

↓

LLM 修代码

↓

pytest

↓

失败

↓

再次修

↓

pytest

↓

全部通过

↓

Git Commit

↓

Create PR

注意:

这里:

pytest

是在:

E2B 里面运行。

不是:

LLM 自己想出来:

"测试通过了。"

而是:

真的运行:

pytest

得到:

23 passed

0 failed

Agent 才知道:

修好了。


一个更复杂的企业级例子:核电施工方案审核 Agent

结合你之前做过的核电施工方案生成与审核大模型项目,我们可以设计这样一个 Agent。

用户上传:

《反应堆厂房钢筋施工方案.docx》

用户要求:

请审核该施工方案是否符合规范,并生成审核意见。

Agent 的执行流程如下:

                 用户上传 DOCX
                       │
                       ▼
                Agent Planner
                       │
        ┌──────────────┴──────────────┐
        ▼                             ▼
  读取企业知识库                  判断需要解析文档
 (RAG 检索规范)                       │
                                     ▼
                             调用 E2B Sandbox
                                     │
             ┌───────────────────────┼────────────────────────┐
             ▼                       ▼                        ▼
      python-docx              提取表格                 OCR(如有扫描页)
             │                       │                        │
             └───────────────合并结构化内容───────────────────┘
                                     │
                                     ▼
                           返回文本给 LLM
                                     │
                                     ▼
                    与施工规范逐条比对(RAG)
                                     │
                                     ▼
                       生成审核意见和修改建议

这里为什么需要 E2B?

因为文档解析往往依赖大量第三方库,例如:

python-docx
pdfplumber
camelot
opencv
pytesseract

这些库需要真实执行 Python 代码,甚至调用系统命令。如果直接在生产服务器上运行,既不安全,也难以隔离不同用户的环境。而 E2B 可以为每次审核创建一个独立的沙箱,解析完成后立即销毁,既保证了安全性,也避免了环境污染。


最后,用一句话总结 E2B 在 Agent 中的角色

Agent 可以分为三个阶段:

LLM
负责:

思考
↓

E2B
负责:

执行
↓

LLM
负责:

根据执行结果继续思考

所以,E2B 并不会替代 LLM,它更像是 LLM 的"双手和实验室"。当 Agent 遇到需要真实运行代码、安装依赖、处理文件、执行终端命令、生成图表或验证程序行为的任务时,就会把这些工作交给 E2B;执行完成后,再将结果返回给 LLM,由 LLM 决定下一步行动。这种"思考—执行—观察—再思考"的闭环,正是现代 AI Agent 能够完成复杂任务的关键。