
10月22日,Google发布Agent Compute Engine概念,主张为每个AI智能体会话分配独立的微虚拟机(microVM)。其核心特性包括:在模型“思考”期间进行检查点保存、从预热快照中以写时复制(Copy-on-Write)方式克隆、以及不配备网卡以实现网络隔离。目前该产品尚未开放使用,官方也未披露延迟或密度数据。
为验证这一架构的可行性,开发者基于Firecracker和约2,200行Go代码复现了该模式,并在两台机器上进行了基准测试。结果显示,64个空闲的512 MiB VM分支每个仅消耗约3 MiB的主机内存。在裸金属环境下,快照恢复响应时间为25毫秒,比冷启动快26倍;同时启动64个分支均在约150毫秒内就绪。然而,在Mac mini的嵌套虚拟化环境中,同时启动12个分支均未能成功就绪。
为何容器不足以支撑智能体
智能体常需运行未经审查的代码,面临提示词注入风险。容器共享主机内核,隔离性依赖于工作负载无法触及系统调用漏洞,但此类漏洞(如CVE-2024-21626)层出不穷。微虚拟机通过让Guest运行独立内核,将攻击面缩小至KVM暴露的少量虚拟设备。此外,针对凭据泄露风险,该架构采用“Host决定身份,Guest不持凭据”的设计:Guest通过vsock连接Host代理,由Host在网关处注入临时令牌,确保秘密不进入沙箱。
核心架构复现
复现方案包含四个模块:共享写时复制预热快照、由工具调用生命周期驱动的检查点保存、用于评估的快照分支、以及无网卡的Guest网络配置。
共享机制:利用Firecracker的MAP_PRIVATE内存映射,未修改页面在Host页缓存中仅存一份,Guest写入时生成私有副本。结合virtio-pmem和DAX,文件读取直接指向Host映射,进一步降低内存开销。
空闲感知检查点:智能体框架确切知道沙箱何时空闲(即工具调用完成且无后台进程)。此时Host可将VM暂停或休眠。测试显示,裸金属环境下从暂停恢复仅需1.5毫秒,而从休眠唤醒需21毫秒(主要耗时在磁盘I/O)。
无网卡网络:移除虚拟网卡,消除DNS、元数据服务器等攻击面。所有流量经vsock转发至Host代理,代理执行白名单策略并注入凭据。此设计确保即使Guest被攻陷,攻击者也无法获取长期令牌或直接访问VPC。
性能实测:裸金属 vs 嵌套虚拟化
测试在两台设备上进行:Intel Core i7-6700K(裸金属)和Apple M4 Mac mini(嵌套虚拟化)。
- 延迟:裸金属环境下,恢复操作p50延迟为24.5毫秒,比冷启动(642毫秒)快26倍。嵌套环境下,恢复延迟增至247毫秒,主要瓶颈在于Guest缺页异常在两层Hypervisor间的昂贵开销。
- 内存:64个空闲分支在两种环境下每VM仅增加约2.4–2.9 MiB主机内存。但当每个分支写入64 MiB数据后,私有内存占用升至约70 MiB,显示写时复制优势随脏页增加而递减。
- 并发极限:裸金属环境下,64个分支可在150毫秒内全部就绪。而在Mac嵌套虚拟化中,并发数超过8后延迟显著增加,达到12时完全失败。这表明嵌套虚拟化不适合此类高密度分支场景。
与现有方案对比
相比Alibaba的OpenSandbox和Meta/Hugging Face的OpenEnv,本方案的优势在于“中途分支”能力。OpenEnv基于容器重置,而微VM快照可保留解释器状态和打开文件,支持从轨迹任意步骤分支尝试不同操作,特别适用于强化学习评估。
生产环境建议
当前复现为实验室环境,生产部署需改进:引入jailer隔离、使用UFFD预取远程快照、通过气球驱动回收内存、将代理与网关分离以增强身份验证,以及对快照文件进行签名验证以防篡改。
结论表明,利用开源组件即可构建具备Google所描述隔离性与密度的智能体运行时。在裸金属硬件上,微VM方案能在保持容器级密度的同时,提供硬件级隔离,但其性能优势在嵌套虚拟化环境中会大幅削弱。