重磅!Volcano发布AgentCube,构建AI Agent时代的云原生基础设施

重磅!Volcano发布AgentCube,构建AI Agent时代的云原生基础设施

云原生批量计算引擎 Volcano 社区全新子项目 AgentCube 现已正式发布。AgentCube的诞生基于 Volcano 在大规模高性能计算调度领域多年的生产实践积累,它将这种高并发、高吞吐的调度能力延伸至 AI 领域,构建了一套面向智能体(Agent)工作负载的 Serverless 编排层,旨在为高并发、长会话、对延迟极度敏感的智能体(Agent)工作负载提供 Serverless 化的编排与极速调度能力

从 Kubernetes 到 Agent Native

随着大语言模型(LLM)技术的成熟,技术架构正从"无状态推理"向"自主智能体(Autonomous Agents)"演进。

在这一进程中,Kubernetes 凭借其成熟的生态和对异构算力的标准化管理,已成为构建 AI 基础设施的事实标准 。虽然原生 Kubernetes 提供了通用的容器编排原语以及多样化的工作负载抽象,但在面对 AI Agent 这种"高并发、短时效、强状态依赖"的新型负载时,仍存在着显著的粒度错配机制缺位

1.启动延迟与交互体验的矛盾

Agent 的交互通常要求毫秒级响应。然而,原生的 K8s Pod 启动流程(调度、IP 分配、镜像拉取、容器启动)往往在秒级甚至分钟级。对于需要频繁拉起 Code Interpreter(代码解释器)或临时子 Agent 的场景,这种冷启动延迟是用户无法接受的。

2.资源利用率的挑战: Agent 是典型的 IO 密集型负载。在一次会话中,90% 的时间 Agent 可能都在等待 LLM 生成 Token 或等待外部工具响应。如果在 K8s 上为每个 Agent 独占一个 Pod,会导致大量的 CPU/Memory 资源在等待期间被闲置浪费,却无法被其他任务复用。

**3.会话状态管理的缺失:**K8s 对"无状态(Stateless)"工作负载天然友好,但 Agent 高度依赖"上下文(Context/Memory)"。在原生 K8s 中,Pod 重启意味着内存数据丢失,开发者被迫在应用层通过外部存储重建上下文,这带来了巨大的复杂性和网络开销。

**4.安全隔离难题:**高级 Agent(如 Data Analyst)需要运行由 LLM 生成的不可信代码。但普通的 runC 容器如果运行 rm -rf / 具有极高风险。企业级 Agent 平台迫切需要一种既能快速启动,又能提供强隔离(如 MicroVM)的沙箱环境。

为了在 Kubernetes 坚实的算力底座之上,填补上述机制空白,AgentCube 应运而生。

AgentCube 是什么?

AgentCube 是一个构建在 Volcano 之上的高性能 AI Agent 编排层。它通过扩展 Kubernetes API,将 Agents 和 Tools(Code Interpreters、BrowserUse等) 提升为集群的一等公民。

它不仅仅是一个 CRD,更是一套 面向 Agent 的 Serverless 操作系统

核心架构与抽象

AgentCube 引入了两个核心的 CRD 来定义 Agent 工作负载:

1.AgentRuntime: 面向长会话、复杂的对话式 Agent。

○ 支持定义会话的生命周期、资源配额以及持久化策略。

2.CodeInterpreter: 面向短任务、高频的代码执行环境。

○ 强调"用完即毁"和极致的安全隔离,天然适配 MicroVM(如 Kuasar, Kata Containers, Firecracker)。

AgentCube后续还将提供BrowserUse、ComputerUse、MobileUse等工作负载抽象支持。

AgentCube 关键技术亮点

为了解决上述痛点,AgentCube 在架构设计上引入了多项创新:

1. 极速启动

为了消除冷启动的挑战,AgentCube 实现了 Warm Pool(预热池) 机制。系统会预先启动并暂停一组持有基础环境的 MicroVM 沙箱。当 Agent 请求到来时,AgentCube 能够通过 "Claim-and-Go" 的方式,在毫秒级将预热的沙箱分配给会话,实现近乎零延迟的启动体验。

2. 极速调度

借助 Volcano 的 Agent Scheduler,AgentCube显著提升了Agent调度的吞吐和时延。

  • 高吞吐、低时延: 针对 Agent 突发流量,采用了乐观并发控制和精简的调度策略,大幅提升调度 TPS。
  • 统一调度支持: Volcano 的 Agent Scheduler 可以与原有的 Batch Scheduler 无缝配合,在协调 Agent 与传统的 Batch 作业潜在调度冲突的同时,确保整体集群的资源利用率和关键业务的 SLA。

3. 原生会话管理

AgentCube 引入了 Session ID 作为核心路由标识,便于保证业务上下文的连续性。

  • 请求路由: AgentCube Router 能够识别请求中的 x-agentcube-session-id,自动将其路由到对应的活跃沙箱。
  • 自动的沙箱激活: 当前会话对应的沙箱处于休眠状态时,AgentCube Router 能够自动激活沙箱。
  • 基于会话的端到端隔离: AgentCube 会自动为每个会话分配独立的沙箱环境,确保计算、内存与文件系统的完全隔离,防止跨租户的数据泄露。

4. Serverless 化的弹性伸缩

AgentCube 能够根据会话的活跃度自动管理沙箱生命周期。闲置的沙箱会被自动回收或休眠,释放物理资源供其他高优先级任务使用,真正实现资源按需分配与极致利用

AgentCube 架构概览

AgentCube 采用了经典的控制面与数据面分离的架构设计,确保了系统的高可用性与扩展性:

  • 数据面 :AgentCube Router 承载。它作为流量入口,负责鉴权、限流以及基于 Session ID 的智能路由。对于新会话,它向控制面申请资源;对于活跃会话,它直接将请求转发至对应的 Sandbox (MicroVM)
  • 控制面 : 核心组件 Workload Manager 负责沙箱的全生命周期管理。它监控预热池 (Warm Pool) 的水位,自动补充 MicroVM 实例,并根据会话活跃度策略(如 TTL)执行沙箱的回收与垃圾清理。
  • 调度层: 集成 Volcano Agent Scheduler,通过异步并行调度和乐观锁机制,实现高并发下的毫秒级资源分配。

生态协作:共建标准化的 Agent 基础设施

作为开源中立的基础设施项目,AgentCube 旨在通过标准接口连接上下游生态,协作解决从容器编排到智能体应用落地的"最后一公里"难题。

1. 南向兼容:基于标准接口的运行时适配

AgentCube 坚持开放架构设计,通过深度集成 kubernetes-sigs/agent-sandbox 接口及 OCI 标准,实现对底层异构运行时的统一抽象与无感适配。

  • 运行时解耦: 支持通过 RuntimeClass 机制接入 Kuasar、Kata Containers、Firecracker 等安全容器技术,允许用户根据安全与性能需求灵活选择底层隔离方案。
  • 前沿探索: 社区正在评估 Wasm (WebAssembly) 技术,计划在未来版本中探索其在极轻量级 Agent 任务中的应用,以提供更多样化的算力供给。

2. 北向集成:服务主流Agent框架

在应用层,AgentCube 致力于成为 Dify、LangChain、CrewAI、LlamaIndex 等Agent框架的标准基础设施底座,相关适配工作正在快速迭代中。

  • 声明式管理: 将通过 Operator 模式提供声明式资源接口,帮助上层框架剥离底层的沙箱预热池管理与网络配置等逻辑。
  • 统一底座: 目标是实现业务编排与资源调度的解耦,使不同框架开发的应用能复用同一套云原生运维体系,降低基础设施的维护成本与碎片化程度。

灵活接入:兼顾开发与运维体验

AgentCube 设计了分层的接入接口,旨在同时满足上层业务开发者与底层平台工程师的诉求,让基础设施不再成为黑盒。

1. 面向 Agent 开发者:标准 API 接入

为了进一步降低接入门槛,AgentCube 提供了开箱即用的Python SDK。开发者无需深入理解 Kubernetes 的复杂概念,即可像调用本地函数一样申请、执行和释放沙箱。这使得 AgentCube 能够轻松集成到 Dify、LangChain、CrewAI、LlamaIndex 等主流框架中。

示例1:在agent代码中动态拉起一个CodeInterpreter并运行临时代码

python

from agentcube import CodeInterpreterClient

Initialize client (uses env vars for configuration)

with CodeInterpreterClient() as client:

1. Run a simple shell command

print("User: whoami")

print(client.execute_command("whoami"))

2. Execute Python code

code = """

import math

print(f"Pi is approximately {math.pi:.4f}")

"""

output = client.run_code("python", code)

复制代码
    print(f"Result: {output}") 

示例2:通过kubectl agentcube命令行工具创建一个Agent
# 1. Package an existing agent:

kubectl agentcube pack -f examples/hello-agent --agent-name "my-agent"

# 2. Build the container image:

kubectl agentcube build -f examples/hello-agent

# 3. Publish to AgentCube:

kubectl agentcube publish \

-f examples/hello-agent \

--image-url "docker.io/username/my-agent" \

# 4. Invoke your agent:

kubectl agentcube invoke -f examples/hello-agent --payload '{"prompt": "Hello World!"}'

# 5. Check status:

复制代码
kubectl agentcube status -f examples/hello-agent

2. 面向平台工程师:声明式 CRD 管理

AgentCube 延续了云原生的声明式管理模式。运维团队可以通过 CRD (AgentRuntime, CodeInterpreter) 精细化定义资源池策略,直接复用现有的 Kubernetes 运维体系与工具链进行统一管理。

示例:定义一个CodeInterpreter,始终保持 10 个热备沙箱

YAML

apiVersion: runtime.agentcube.volcano.sh/v1alpha1

kind: CodeInterpreter

metadata:

name: simple-codeinterpreter

namespace: default

spec:

template:

image: ghcr.io/volcano-sh/picod:latest

sessionTimeout: "15m"

maxSessionDuration: "8h"

复制代码
  warmPoolSize: 10   # 预热水位

想亲自体验? 完整的安装部署文档与 Demo 示例,请访问 GitHub 仓库:https://github.com/volcano-sh/agentcube

加入社区

AgentCube 是 Volcano 社区的一部分,遵循开源开放的原则。我们诚挚邀请对 AI Infra、Kubernetes 调度、Serverless 架构 感兴趣的开发者加入我们!

让我们一起,为 AI Agent 时代构建更强大的基础设施!


Volcano (https://volcano.sh)是业界首个云原生批量计算引擎,也是 CNCF 首个和唯一的批量计算项目。项目主要用于 AI、大数据、基因、渲染等诸多高性能计算场景,对主流通用计算框架均有很好的支持。目前,Volcano在人工智能、大数据、基因测序等海量数据计算和分析场景已得到快速应用,已完成对 Spark、Flink、Ray、 Tensorflow、PyTorch、Argo、MindSpore、Paddlepaddle 、Kubeflow、MPI、Horovod、Mxnet、KubeGene 等众多主流计算框架的支持,并构建起完善的上下游生态。