智能体规模化原则

第 I 至 V 部分先构建一个智能体,再逐步改进它:从一次模型调用,到围绕它的记忆与工具,再到支撑它跨时间运行并对其进行度量的运行时,以及提高其提案通过率的训练。第 VI 部分从两个方向改变智能体的数量。一项任务可以拆分给多个智能体,使单条轨迹变成由交接连接起来的轨迹树。同时,许多任务也会在共享的模型、配额和沙箱上并发运行,因此每条轨迹都有成本,并与其他轨迹争夺容量。规模化不会引入新的暴露类型,而是放大 H·S·A 的全部三类暴露。委派将时间跨度延伸到多个智能体,因此一次交接中的错误会成为下一步的前提。状态被复制到每个子智能体的上下文中,并在过时后仍被读取。权限与预算沿每次委派向下传递,且不得在传递过程中扩大。因此,第 II 至 IV 部分为单个智能体建立的每一种闭合机制,都必须在跨智能体边界和整个集群范围内成立;而只有当每项验收通过的任务所带来的价值足以抵偿其成本时,这些机制才值得运行。

本部分的两章依次处理这些问题。多智能体协同 判断在总预算相同的条件下,何时拆分任务优于使用单个智能体,评判指标包括任务验收通过率、完工时间和每项验收通过任务的成本,并构建运行时随后必须跨越每个智能体边界承载的机制:带有有界返回的类型化交接、隔离的写入、受控提交、取消,以及权限收窄。每项验收通过任务的成本是集群最常处于劣势的指标,智能体经济学 随后对单个或多个智能体的这一指标进行成本核算。该章逐一讨论缓存与推理预算、关键路径延迟、模型路由、轨迹容量,以及在前一章的委派树中预留的资金预算,最后通过成本核算判断一项任务是否值得使用智能体。本部分由五项原则统领。

Principle 19: 协同开销
不变量:将任务拆分给多个智能体,会把交接、重复的上下文、汇合点等待和结果协调置于关键路径上,而共享权重的智能体也会共享错误。加速比受任务串行部分占比的限制;一旦两两协同开销的增长速度超过并行工作量的缩减速度,加速比就会下降。完整论述见 委派的权衡。

推论:集群只有通过上下文隔离、权限分离或独立探索,才能获得足以抵偿协同开销的收益;此后,它必须以显式任务图的形式运行,图的边承载类型化消息封装和有界返回,而不能以智能体之间自由交谈的形式运行。

集群能否获得足以抵偿协同开销的收益,要靠度量来判定,而度量是否公平取决于其基线是否公平。增加智能体意味着并行投入更多推理,因此其基线与受证据约束的审议(原则 2)为任何额外推理设定的基线相同:获得相同总预算的单个智能体。

Principle 20: 多智能体评估的三轴前沿
不变量:多智能体拓扑只有在与获得相同总预算的单个智能体相比时,任务验收通过率、关键路径完工时间和每项验收通过任务的成本均不逊色,且至少一项严格更优,才具有正向的系统价值。完整论述见 单智能体基线基准测试。

推论:对多智能体设计的主张,必须保持预算相等,与使用测试时修订和工具的单个智能体进行比较,并在完工时间和成本中都计入协同开销。

跨过这一前沿的集群仍必须保持有界,因为其智能体之间的任何交接都不得成为获取额外权限或预算的途径。

Principle 21: 单调委派
不变量:当一个智能体向另一个智能体委派任务时,子智能体的权限、时间和预算必须是父智能体剩余持有资源的子集;子智能体收到的任何资源,在其归还之前,父智能体都不得使用。任何委派序列都不能产生根智能体原本不具备的权限或支出能力,而资金一旦花费便无法收回。完整论述见 衰减能力委派。

推论:运行时而非智能体在每次交接时强制执行子集规则,具体依靠以下机制:每个持有者只能收窄、不能扩大的凭证;在任何子智能体支出之前,先从父智能体预算中扣除的预算预留;以及能够传达至所有后代智能体的取消机制。

限定集群可花费的资源后,仍需回答这些支出换来了什么。答案是验收通过的任务,这也是智能体评估已经用来计量成功的单位(多层评估契约)。

Principle 22: 轨迹有效吞吐与验收通过的任务
不变量:只有通过独立验证的轨迹才能交付价值,因此,失败或未经验证的尝试所消耗的所有资源,都要计入验收通过任务的成本。集群要最小化的是每项验收通过任务的成本,而非每个词元的成本;轨迹有效吞吐则是最终用于验收通过任务的资源占比。完整论述见 每项通过验收的任务的成本。

推论:模型选择、缓存、路由、加速和容量,都应根据它们对整条轨迹中每项验收通过任务的成本与耗时的影响来评判。这往往意味着,值得优化的项是工具执行、沙箱和验证,而非模型推理。

每项验收通过任务的成本指明了应当最小化什么。容量还必须能够应对轨迹的到达方式,以及轨迹占用所分配资源的时长。

Principle 23: 轨迹全生命周期容量与尾部感知调度
不变量:轨迹在整个生命周期内都占用容量,其生命周期比任何单次模型调用长数个数量级;轨迹发出的调用以相关联的突发形式到达,服务时间也相差数个数量级。排队延迟会随这种变异性增大,并在利用率接近饱和时急剧上升;由许多串行调用组成的轨迹,很可能在关键路径上至少遭遇一次尾部延迟。完整论述见 轨迹容量。

推论:容量应根据轨迹并发量,即轨迹到达率与其生命周期的乘积,以及每条轨迹的词元数相对于各提供方配额的关系来确定,并使系统运行在利用率曲线拐点以下。由于调度器无法预先知道一次生成的长度,它会降低超过一个词元时间片的调用的调度优先级,以确保短调用不会排在长调用后等待。

前三项原则决定集群能否运行、如何评判,以及如何保持有界;后两项原则决定其成本和所需容量。在每个子系统都完成构建与成本核算之后,第 VII 部分将让它们在同一条轨迹上共同运行。

回到顶部
← 三卷书架