文章核心观点 - 智谱AI在将其GLM-5系列模型投入大规模、高并发的Coding Agent服务时,遭遇了由底层推理系统在高负载下产生的“扩展之痛”,主要表现为模型输出乱码、复读和生僻字等异常 [1][4] - 公司通过系统性的工程排查,定位并修复了导致这些异常的核心系统瓶颈,包括KV Cache竞态和HiCache加载时序问题,将异常发生率从约万分之十几降至万分之三以下 [4][21] - 公司认为,AI进入高并发、长上下文场景后,维护推理基础设施的输出质量与稳定性至关重要,未来大规模AI不仅需要模型能力的扩展,还需要等量级的系统工程能力作为支撑 [33] 问题发现与初步排查 - 公司在GLM-5发布后,通过观察用户大规模Coding Agent推理过程,发现三类异常现象:乱码输出、重复生成和生僻字生成 [3][6] - 初步在标准推理环境中复现失败,表明问题根源不在模型本身,而在服务环境。通过模拟在线环境、调整PD分离比例并提高系统负载后,异常得以复现,发生率约为每10000个请求出现3-5个 [7][8] - 这表明问题很可能源于高负载下的推理状态管理,指向底层推理链路 [9] 异常检测与监控策略优化 - 公司发现投机采样(Speculative Decoding)指标可作为有效的异常检测参考。在GLM-5的异常中,乱码和生僻字输出的spec_accept_length非常低,而复读则拥有过高的spec_accept_length [11][13][14] - 基于此,公司制定了一套在线异常监控策略:当spec_accept_length持续低于1.4且生成长度超过128个token,或spec_accept_rate超过0.96时,系统会主动中止生成并重新分配请求 [15] 根本原因分析与修复(KV Cache竞态) - 深入分析将问题归因于PD分离架构下,请求生命周期与KV Cache回收、复用时序不一致所引发的KV Cache复用冲突 [16][18] - 修复方案是在推理引擎中引入更严格的时序约束,在请求终止和KV Cache写入完成之间建立显式同步机制,确保KV Cache写入不会跨越内存复用边界,从而避免跨请求的KV Cache损坏 [19][20] - 该修复使异常输出的发生率从约万分之十几下降至万分之三以下 [21] 根本原因分析与修复(HiCache加载时序) - 另一个问题是当KV Cache换入与计算重叠时,系统未能保证数据在使用前已完成加载,导致可能出现访问未就绪KV Cache的情况 [22] - 解决方案是重构HiCache读取流程,引入数据加载与计算之间的显式同步约束,确保在计算前相应缓存已完全加载,消除了read-before-ready问题 [24] 针对系统瓶颈的优化(Prefill阶段) - 上述问题都指向长上下文Coding Agent服务中的一个常见系统瓶颈:Prefill阶段已成为影响系统性能的主要因素 [25] - 为缓解Prefill阶段在高并发下的内存和带宽压力,公司设计了KV Cache分层存储方案“LayerSplit”。该方案让每个GPU只存储部分层的KV Cache,显著降低了单GPU内存占用,并在Attention计算前进行广播 [26][30] - 通过将KV Cache广播与indexer计算重叠,将通信延迟隐藏在计算过程中,额外通信开销仅为KV Cache的八分之一,整体通信成本可忽略不计 [30] - 将LayerSplit与GLM-5.1结合,在Cache命中率达90%、请求长度在40k到120k区间内时,系统吞吐量提高了10%到132%,且收益随上下文长度增加而增长 [32]
智谱公布“降智”的秘密:Scaling不可避免的痛
量子位·2026-05-01 15:00