abc小站

2026-10-23

Agent 大部分时间在等待:谷歌的 Agent Compute Engine 怎么调度

谷歌云介绍 Agent Compute Engine(ACE)与开源的 Agent Substrate:让空闲的 Agent 挂起、把机器让给别人;ACE 对外预览要等“未来几个月”。

Google Cloud 官方博客头图
来源:Google Cloud

一、Agent 一天里有多少时间在干活?

先问大家一个问题。

一个 AI Agent 一天里,真正在占用 CPU 干活的时间有多少?

大家猜猜看。

答案可能出乎意料:大部分时间,它都在等。

等模型想好下一步(也就是"思考"阶段)。

等工具调用返回结果。

等人类点一下"批准"。

等某个外部系统回复。

真正需要算力的,只是夹在这些等待中间的一小段。

如果给每个 Agent 都配一台一直开着的虚拟机,大部分时间这台机器都空转着。

Agent 少的时候,这不是问题。

一旦 Agent 多到成千上万,空转的机器就变成了一笔大开销。

10 月 22 日,谷歌云发了一篇博客(Introducing Agent Compute Engine and expanded agent governance),介绍了两样东西:Agent Compute Engine(简称 ACE)和 Agent Substrate。

两者想解决的就是这个问题:让 Agent 不干活的时候,不占着机器。

本文只谈调度和密度。

ACE 在隔离方面也做了不少设计,官方列了 Titanium IPU、Cloud Hypervisor、独立内核、每个 microVM 一个身份、在出口处注入的短期凭证等。本文不展开,有兴趣的读者可以看原文。

二、ACE:会"打盹"的 microVM

先说 ACE。

据谷歌官方介绍,ACE 目前只用在谷歌自己的产品上,承载 Gemini 的办公类 Agent,客户还不能拿来跑自己的 Agent。对外的预览版要等"未来几个月"。

也就是说,它现在还不能直接用。

它的核心是 microVM,也就是一种启动很快的轻量虚拟机。

ACE 在 microVM 上做了几件事。

(1)共享模板,写时复制

成千上万个 Agent,跑的操作系统几乎一模一样。

如果每个 Agent 都把整套系统完整地装进自己的内存,就太浪费了。

ACE 的做法是写时复制(copy-on-write):所有 Agent 共享同一个操作系统模板的内存,只有某个 Agent 要改动其中某一块时,才给它单独复制一份。

打个比方,这就像全班同学共用一本教科书,谁想在哪一页上写笔记,就只复印那一页,其他页照旧大家一起看。

(2)想的时候,先睡一会

一个 Agent 调完工具,进入"思考"阶段,等模型给出下一步。

这时,microVM 会主动向宿主机发信号:我现在闲着。

宿主机收到信号,就可以把它暂停。

等待人类审批、等待外部系统回复的时候,也是同样的处理。

等到需要它继续干活,再从快照迅速恢复。

这有点像电脑的"睡眠"和"唤醒":合上盖子不等于关机,打开盖子,刚才的窗口都还在。

(3)工作区跟着 Agent 走

暂停和恢复的前提是,Agent 的东西不能丢。

ACE 给每个 microVM 配了一块独立的 Hyperdisk 持久化工作区,用来保存它的文件和上下文。

所以,机器可以睡,Agent 的"记忆"不会断。

三、Agent Substrate:在 Kubernetes 上做同样的事

ACE 是谷歌云自己的服务。

如果你不在谷歌云上,或者想自己掌控,怎么办呢?

谷歌这次还开源了 Agent Substrate(GitHub 仓库 agent-substrate/substrate,谷歌博客里的开源链接指向这里)。它可以跑在 GKE 上,也可以跑在任意 Kubernetes 上。

它的思路和 ACE 一脉相承。

(1)闲了就归还机器

Agent 空闲时,Substrate 会把它的内存做成快照,然后把机器还回资源池,让给别的 Agent。

需要的时候,再从快照恢复。

这就像图书馆的座位:人走了,书包收进储物柜,座位让给下一位,回来再取书包,找个空位继续读。

(2)密度和基准

官方称,这样做能把密度提高到最多约 10 倍。

官方还给了一个基准测试:20 万个 Agent 的规模下,持续每秒 500 次激活,挂起和恢复都在 500 毫秒以内。

这些数字都是谷歌自己测的,属于厂商自报。

(3)隔离方式和 harness 都可以选

隔离可以用 microVM,也可以用 gVisor。

上面跑什么 Agent 框架(harness)都行,官方点名了 Claude Code、OpenClaw 和 Hermes。

多个 Agent 需要协作时,可以挂 Filestore 卷,共用一个工作区。

官方提到,Nous Research 的 Hermes Enterprise 已经用上了 Substrate。

这里值得多说一句。

调度层不挑 harness,意味着它管的是"机器怎么分",不管"Agent 怎么想"。

这是一种很经典的分层:底下的人只负责把座位排好,至于坐上去的人看什么书,它不过问。

这样做的好处是,Agent 框架换来换去,底下的调度不用跟着重写。

四、Agent 多了,还要管得住

调度解决的是"跑得起",治理解决的是"管得住"。

这篇博客也顺带更新了治理工具。

现有的组件包括 Agent Gateway、Registry、基于 SPIFFE 的身份,以及 OTel 可观测性。

即将推出预览的有三项:

最后一项和本文的主题关系最近。

机器的账可以靠调度省下来,token 的账也需要有人管。按 Agent 设预算、按任务挑模型,是同一个思路在另一层的延伸。

官方提到的客户里有欧莱雅(L'Oréal)。

五、我的看法

过去我们给程序分配资源,默认它是"一直在跑"的。

Web 服务器是这样,数据库也是这样。

Agent 打破了这个默认。它更像一个上班的人:大部分时间在开会、在等回复、在想事情,真正敲键盘的时间不多。

ACE 和 Substrate 的思路,就是承认这一点,然后把等待的时间换成别人的运行时间。

这不是什么全新的发明。写时复制、快照、资源池都是很老的技术。

操作系统里,进程挂起和恢复早就是家常便饭;云计算里,虚拟机按需分配也做了很多年。

新的是把它们组合起来,专门对付"大部分时间在等"这种负载。

需要提醒的是,ACE 对外还只是"未来几个月"的预览,Substrate 的数字是厂商自报。真实效果,还要看自己的负载跑出来是什么样。

如果你正在 Kubernetes 上跑大量 Agent,苦于机器大部分时间闲着,可以试试 Agent Substrate。

(完)

来源:Google Cloud 官方博客(2026-10-22);GKE 官方博客;Agent Substrate GitHub 仓库。ACE 目前只用于谷歌自家 Gemini 产品,对外预览要等未来几个月,尚不可用;密度最多约 10 倍、20 万 Agent、每秒 500 次激活、500 毫秒以内挂起恢复均为谷歌自测自报,未见第三方复测;比方为作者所加。