优刻得全新发布Agent Sandbox,构建安全、可控的执行环境

近日,在优刻得与光合组织共同举办的「大模型智能体融合应用与技术论坛」上,优刻得研发总监王晓慧正式发布全新构建的Agent Sandbox产品,针对数据处理、生命科学、生物医药等高复杂度场景,解决Agent自主代码执行不可控、环境难复现、资源失控等关键问题。

优刻得研发总监王晓慧正式发布Agent Sandbox

AI浪潮的当下,AI Agent成为一个不可忽视的重要组成部分,它让我们可以真正利用AI的强大能力,去规划执行复杂的任务,以实现真正的AI赋能。但是AI Agent在真正应用的过程中会存在一些不可忽视的问题:

  • AI Agent生成的代码具备不确定性。如果没有合适的安全和运维保障,这种不确定性可能会带来很大的安全风险。
  • 不同的个人电脑、服务器环境千差万别,AI Agent生成的代码在不同环境下可能带来不同的结果。
  • 当需要批量执行大量代码时,如果没有合适的隔离机制,这些代码之间可能会互相产生影响。
使用Docker容器来执行AI Agent生成的代码,确实可以快速启动并提供一个隔离环境,但是容器跟宿主机是共享内核的,对于AI Agent生成的代码这种不可信任务来说,安全性和隔离性都是不足的。而传统的虚拟机虽然可以满足隔离要求,但是成本和启动速度都令人堪忧,如果要启动大量沙箱并发执行代码,就会占用大量资源和时间。

面对这些挑战,优刻得推出全新的Serverless产品Agent Sandbox,为AI Agent提供一个安全、隔离、快速且低成本的运行环境。通过标准化SDK,AI用户可一键启动安全沙箱,驱动大模型在沙箱内完成代码执行与任务操作,并获取完整执行结果。

通过Agent Sandbox可以让AI操作沙箱完成各种任务,例如:

  • 在沙箱中执行代码。并下载或上传执行结果。
  • 生成前端页面在沙箱中执行并进行预览。
  • 操作沙箱中的GUI软件。
  • 操作沙箱中的浏览器,浏览网页或下载数据。
这样,AI Agent生成的代码只会影响沙箱,沙箱的数据即用即毁,沙箱之间也不会互相影响。即使AI生成rm -rf /*这样的代码,也只会清空单个沙箱的数据,不会对宿主机或其他沙箱产生影响。
下面将分几个部分详细介绍一下这项技术跟传统的虚拟机以及容器有什么不同。
安全的微虚拟机

优刻得推出的Agent Sandbox底层采用了Serverless中比较火热的微虚拟机技术。微虚拟机底层采用KVM,阉割掉了许多传统虚拟机的功能,例如BIOS/UEFI、各种PCI设备等,只提供一个最小化的操作系统环境以及最基本网络、存储能力。并且,它会直接加载内核而不像传统虚机那样通过BIOS引导内核,以提供极快的启动速度。

微虚拟机提供容器级别的快速启动速度,又提供了独立的内核,具有虚拟机级别的隔离性,并且因为屏蔽了很多不必要的功能,它占用的资源也会远远低于传统的虚拟机。微虚拟机甚至可以运行一些超低规格的实例,例如0.2CPU256MB内存的机器。以实现最高的资源利用和最低的成本管控。

当然,因为这种阉割,微虚拟机无法支持复杂的PCI硬件,例如GPU。但是对于AI Agent生成的代码来说,一般无需使用GPU加速的能力,CPU和基础的网络存储能力足以满足大部分要求。

到这里,我们可以梳理出一张表来概括微虚拟机、传统虚拟机、容器之间的区别:

 虚拟机容器微虚拟机
安全隔离
启动速度
使用成本
GPU支持支持不支持
毫秒级启动

微虚拟机的启动速度已经很快了,但是还是会涉及到加载内核的步骤,因此基本也还是要百毫秒的时间才能完成。为了进一步提高沙箱的启动速度,优刻得Agent Sandbox采用了Snapshot技术来完成。

Snapshot可以将微虚拟机在某个时间点的状态完全保存下来,包括CPU状态、内存、设备状态等。在恢复的时候,可以直接把这些状态文件加载到CPU和内存里面,而无需再加载整个内核,这可以将沙箱的启动速度加快到几十毫秒级别。

Agent Sandbox底层不像传统的虚拟机使用镜像来启动沙箱,而是完全使用Snapshot来完成,这为沙箱带来了极快的启动时间。沙箱的启动可以在一个HTTP请求内完成,而无需再异步等待启动完成了。

沙箱暂停和恢复

正因为有了SnapshotAgent Sandbox可以实现沙箱的暂停和恢复Snapshot在底层本质是一些保存状态的文件,暂停的沙箱不会占用实际的CPU和内存,并且恢复速度极快。需要的时候再快速启动沙箱,可以完全恢复沙箱之前的运行状态,无需重新启动一个新的沙箱并重新计算一遍数据。

这可以带来极大的成本节省,一来暂停的沙箱无需费用,二来恢复后沙箱也无需耗费资源重新初始化一遍,可以直接开始上次未完成的任务。

模板构建和使用

类似于虚拟机和容器的镜像,我们也可以给沙箱构建模板。模板的底层依然是Snapshot,因此我们也完全可以把模板当作是一个暂停的沙箱。优刻得会提供一些基础模板,里面提供了一些基础的运行环境和代码执行环境,还有基础GUI桌面环境的模板。

Agent Sandbox支持在基础模板的基础上构建自定义模板,可以修改基础模板中的配置,给模板上传二进制文件等。完全实现像Docker镜像那样,将Agent的运行环境事先打包好上传为一个模板,每次在执行沙箱的时候都无需再安装执行环境。Agent Sandbox也支持从Docker镜像构建模板,可以轻松将您的应用从Docker迁移到Agent Sandbox中。

通过微虚拟机、Snapshot与模板化机制,优刻得Agent Sandbox在安全隔离、启动效率与成本控制之间实现了平衡,让AI Agent可以真正进入生产系统,稳定运行、持续迭代。

为您推荐