EN
AI Engineer World's Fair

OpenAI 工程师推演:agent 沙箱终点都是 microVM,少走两年弯路

From fork() to Fleet: Designing an Agent Sandbox Cloud — Abhishek Bhardwaj, OpenAI · Abhishek Bhardwaj

45 min
AgentAI 编程

全片 44 分钟·真正值得盯屏约 20 分钟·3 个必看点

橙色 = 推荐必看的 20 分钟其余读导览就够
逐段导览 · 7 段
  1. 0:12 5:37

    沙箱的源头:训练循环本身就要跑代码

    从强化学习的可验证奖励讲起:模型给出响应后,由外层程序代它执行代码,判分器判定对错再反向更新权重。训练出的工具调用能力,产品侧必须有同样的执行环境接住。

    沙箱不是产品期才冒出来的需求,它在训练那一刻就已经存在了——训练和产品两侧是对称的。

    配的是一张训练循环的流程示意,扫一眼看清箭头方向即可,讲解本身足够自足。▶ 跳到 0:12
    讲者 · Abhishek Bhardwaj
  2. 5:41 12:00

    研究要吞吐、产品要延迟,以及最土的做法

    拆开两侧诉求:研究侧海量并行、优化吞吐,产品侧慢一秒就流失用户、优化延迟;可靠性和安全两侧都不能让。然后给出最朴素的方案——直接 fork+exec 跑代码。

    别把安全当单一目标:真正要防的是两件事——拿到 root,和在内核态执行代码,后者后果是灾难性的。

    整段以口头论证为主,中间只有一张列攻击面的清单页,不看画面不影响理解。▶ 跳到 5:41
    讲者 · Abhishek Bhardwaj
  3. 12:03 18:13

    容器与 gVisor 好在哪、又差在哪

    容器拆成两个内核原语:命名空间做隔离、cgroups 限资源,正好治住『死循环狂 fork 拖垮整台机器』的邻居噪音。但内核仍是共享的,一次内核漏洞就穿透;gVisor 把内核接口搬到用户态,仍能靠两步链式利用摸到宿主内核。

    共享内核就是共享命运;而新一代模型正越来越擅长把多个漏洞串成一条链。

    讲者明确指着屏幕说『在这张图里你能看到』,随后 gVisor 的用户态内核与文件系统代理也是画出来的分层结构,跳过画面会丢掉整段论证的骨架。▶ 跳到 12:03
    讲者 · Abhishek Bhardwaj
  4. 18:18 23:09

    硬件虚拟化:虚拟机里当 root 也伤不到宿主

    CPU 层面给出保证:虚拟机的内核跑在受限模式下的最高特权级,宿主内核和管理程序跑在另一套模式里,前者的最高权限只对虚拟机内部有效。再往下讲虚拟机管理程序其实只是个用户态程序,靠内核暴露的接口干活。

    这是唯一能兑现『不可信代码拿到内核态执行权、宿主依然安全』的方案——全片的论点落点。

    特权层级那张对照图值得停下来看清(也是本片必看之一),但后半段讲设备访问怎么退出到宿主时,听讲解已经够了。▶ 跳到 18:18
    讲者 · Abhishek Bhardwaj
  5. 23:13 30:15

    microVM 的兴起与它的三笔代价

    2023 年起 Rust 写的一批虚拟机管理程序取代了积弊已久的老方案,内存安全加上逐个设备上锁构成双重防线;『micro』说的是自身足迹小、启动快。代价也说得很直白:模式切换开销、内存只能被动回收、显卡直通没法多租户共享。

    用起来它归根到底就是一组 API——起个进程、建、启动,没有想象中神秘。

    这段把方案落到了具体的接口调用与参数上(内核、根文件系统、CPU、内存怎么传进去),屏幕上是能照着抄的东西。▶ 跳到 23:13
    讲者 · Abhishek Bhardwaj
  6. 30:15 38:34

    持久化:从怕丢任务到主动分叉探索

    任务正在变长变复杂(讲者自己跑 Codex 的纪录是三天),agent 也会从笔记本搬回云端常驻。有了检查点与恢复,任务能扛住基础设施故障;更进一步,外层程序可以存档后并行探几条解法再回溯。随后回到第一性原理讲磁盘:文件系统把文件映射到逻辑块,只打包变过的块就够了。

    快照的真正价值不是灾备,是让多天任务变成一棵可回溯的搜索树。

    前半段是纯粹的动机论述;后半段关于块映射的推演,讲者是一层层口头推下来的,边做别的事听也跟得上。▶ 跳到 30:15
    讲者 · Abhishek Bhardwaj
  7. 38:41 44:14

    落到工程:增量快照、自建块存储、按血缘调度

    给出可照做的实现路线:写时复制层加上查询变更块的接口,异步上传增量。常驻持久化不建议走网络文件系统,而是在对象存储上自建全局分层缓存、以块设备形式挂给沙箱。最后是低延迟创建的三条路和调度策略。

    调度器按各节点已缓存了多少所需快照层来打分路由——快照和编排联动,才换得来快速创建。

    这一段的两张架构图(缓存链路、按快照血缘打分的节点选择)信息密度最高,也是最难靠听复原的部分。▶ 跳到 38:41
    讲者 · Abhishek Bhardwaj