AI 沙箱已死
Agent 越来越强,围绕它们构建的技术栈也在不断变化。我们需要提前准备好基础设施,迎接它们接下来能够完成的工作。
一切从运行代码开始
2023 年,我们创立了 E2B。那时 GPT-3.5 刚问世不久,大家还在争论什么才算 Agent。Agent 也刚开始尝试使用工具:十次尝试可能只有三次成功,即使成功,也往往只能往下执行几步。
但这几次成功已经让我们看清了一件事:Agent 需要一个安全、灵活的运行环境。资源要能按需调整,也要跟得上它们不断增强的能力。E2B Sandbox 就这样诞生了。
从一开始,我们考虑的就不只是 Agent 当时能做什么,还有它们接下来会具备哪些能力。
从代码片段到完整应用
最先出现的是编程助手(copilots),帮助开发者补全代码。我们随后推出 E2B Code Interpreter,让 AI 生成的数据分析代码在隔离沙箱中的交互式笔记本里运行。E2B 也由此成了 AI 数据分析助手的默认工具。
接着,Agent 开始用 React 等技术开发完整的 Web 应用。它们像开发者一样编写和运行程序,需要的工作环境也不再局限于数据分析笔记本。
在我们的沙箱里,Agent 有了自己的计算机:这些虚拟机彼此隔离,可以按需启动、持续使用,并运行 Linux 软件。Agent 在其中运行的内容,也从 Web 应用扩展到 Docker 容器,甚至完整的 Kubernetes 集群。
有了计算机,还需要工作环境
我们正在经历第三波变化:Agent 开始操作整台计算机,在复杂的工作场景中持续运行,从头到尾完成一整项任务。我们支持的 Agent 也不再局限于编程,而是用于个人助理、业务分析、视频剪辑、生物技术、安全和幻灯片制作等领域。
Agent 承担的工作越多,对运行环境的要求也越高:专用存储、防火墙、沙箱之间的网络连接、可观测性、能按需扩缩的 CPU 和内存,还有浏览器与安全的密钥存储。要提供这些能力,运行环境就已经接近一套完整的平台。
因此,我们认为,竞争如果仍停留在虚拟机冷启动快几毫秒、每 vCPU 小时的费用低多少,就已经跟不上第三波变化了。基础设施要承载的工作,从代码片段扩展到应用、集群,再到生产任务。如果设计时只考虑眼前的需求,等建好时,可能就已经落后。
我们设想,未来由 Agent 根据具体任务决定需要哪些工具和资源。我们把这样的基础设施称为“Agent 驱动的私有云”。
运行经验能带来什么
这些年,我们运行了数十亿次 Agent,积累了数百亿条执行轨迹。这些经验让我们越来越清楚,不同任务究竟需要怎样的基础设施。
在任务开始前,我们往往就能预估 Agent 会用到哪些工具,以及它的平均和峰值运行时间。我们也能预估它会消耗多少 CPU 和内存、依赖哪些服务、发出哪些网络请求。我们设想,云可以先观察 Agent,再预测需求、搭建环境,并在运行中持续优化。
我们能否利用这些数据和规模经济,为 Agent 推荐更合适的工具、服务和数据库,帮助它更有效地完成工作?如果运行环境也能从经验中学习,又能给 Agent 带来多大的提升?
下一步,让环境跟着任务走
我们期待的未来,是每个 Agent 都有一套围绕当前任务优化的私有云,并能随着需求变化,调整所用的资源和工具。
这就是我们说“沙箱已死”的含义:基础设施要从运行代码的地方,发展为支撑 Agent 完成整项工作的平台。Agent 已经在使用过程中告诉了我们它们需要什么。我们要做的,就是像对待其他客户一样,持续响应这些需求的变化。