DiLaServe: High SLO Attainment Serving for Diffusion Language Models
DiLaServe 是一个针对扩散语言模型的集群级服务系统,通过截止日期感知调度、基于置信度阈值调整的自适应负载控制,以及考虑近似 KV 缓存带来的步长级异构性的动态集群重构,在保持极小精度损失的同时,将 SLO 达成率提升了高达 56.6 个百分点,并将延迟降低了 46%。
原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明
想象一下,你正在经营一家繁忙的餐厅,厨师们(即 AI 模型)必须一个词一个词地编写故事。在旧有的方式中(称为“自回归”模型),厨师写下一个词,思考一下,再写下一个词,以此类推。这种方式很慢,因为他们一次只能做一件事。
最近,一位新型厨师来到了这里:扩散语言模型 (Diffusion Language Model, DLM)。这位厨师不再是一个词一个词地书写,而是观察整页乱码(被遮盖的单词),并尝试在一次“扫射”(sweep)中同时修复许多单词。这比以前快得多,就像是一组编辑同时在修复整个段落。
然而,这里有一个陷阱。这位新厨师有点完美主义。在修复一个词之前,他会问自己:“我有 90% 的把握它是正确的吗?”如果他不够确定,他就会把这个词留着,在下一次“扫射”中再试。如果他非常有信心,他就会立即修复它。
问题所在:
如果厨师太挑剔(高置信度),他们完成故事的时间会非常长,导致顾客等待时感到愤怒(高延迟)。如果他们太草率(低置信度),虽然完成得快,但可能会写出胡言乱语(低质量)。
此外,餐厅的厨师数量是有限的。有时厨房里空空如也,有时则订单爆满。如果你给一个厨师分配了太多复杂的订单,他们会不堪重负;如果你把太多简单的订单交给一个超快速的厨师,则会浪费他们的潜力。
解决方案:DiLaServe
这篇论文介绍了一个名为 DiLaServe 的智能“餐厅经理”,它是专门为这些新型扩散厨师设计的。以下是它的工作原理,我们使用日常类比来解释:
1. “置信度旋钮”(速度 vs. 质量)
想象一下,厨师有一个标有“置信度”的旋钮。
- 调到 10(高置信度): 厨师只修复那些他们绝对确定的词。故事会非常完美,但需要很长时间。
- 调到 5(低置信度): 厨师甚至在瞎猜时也会修复单词。速度极快,但故事可能会变得很奇怪。
DiLaServe 的魔力: 它不会为一整天设定一个固定的参数。它会观察时钟。
- 如果某个客户的订单进度落后了,DiLaServe 会对厨师耳语:“嘿,我们落后了!把置信度调低一点,这样你能完成得更快。”
- 如果厨房很清闲,它会说:“慢慢来,把置信度调高,让它变得更完美。”
- 结果: 它动态地平衡速度与质量,确保没有顾客等待太久,同时保持故事的质量。
2. “负载均衡器”(管理人群)
想象你有一支厨师团队。有些是单打独斗的厨师(使用单个 GPU),而有些则是为了处理一个巨大订单而协同工作的超级团队(使用多个 GPU,称为“张量并行”)。
- 超级团队 非常适合处理庞大、复杂的订单,因为它们能快速完成。
- 单打独斗的厨师 更适合处理大量的小型订单,因为你可以同时拥有更多这样的厨师在工作。
DiLaServe 的魔力: 它不断统计进来的订单。
- 如果餐厅很清闲,它会将订单发送给超级团队,让他们快速完成。
- 如果餐厅订单爆满,它会切换到单打独斗的厨师,以处理海量的订单量,即使每个单独的订单耗时稍长一些。
- 它还会防止厨房发生拥堵。如果太多人在同时烹饪,它会告诉厨师降低置信度(工作得更快),从而让整条生产线持续运转,防止出现全面瘫痪。
3. “智能调度器”(移动订单)
在普通的厨房里,一旦厨师开始了一份订单,他就会将其完成。但 DiLaServe 允许厨师在中途交换订单。
- 如果厨师 A 被一个困难的订单卡住了,而厨师 B 正处于空闲状态,DiLaServe 可以立即将订单移交给厨师 B。
- 因为扩散模型是按“步骤”(修复一批单词)工作的,这种交接非常廉价且快速。这就像服务员从一条缓慢的流水线上抓起一个盘子,放到一条快速的流水线上,而不会洒出一滴汤。
4. “回收箱”(近似 KV 缓存)
通常,当厨师写故事时,他必须记住目前为止写下的所有内容,以保持上下文连贯。这需要消耗大量的脑力(内存)。
- DiLaServe 使用了一种叫做近似 KV 缓存 (Approximate KV Caching) 的技巧。这就像是在说:“我们不需要在写每一个新句子时都重新阅读第一段的内容;我们可以只记住它的大意。”
- 这节省了大量的时间。DiLaServe 准确知道何时需要“刷新”这种记忆,以确保故事不会变得混乱,从而确保厨师们保持高效。
实验结果
该论文使用真实世界的数据,将此系统与传统的、僵化的系统进行了对比测试。
- 成功率: 与旧系统相比,DiLaServe 能够达到客户时间限制(SLO)的频率提高了高达 56%。
- 速度: 它使总等待时间缩短了 46%。
- 质量: 故事的完美程度仅略微下降(质量下降不到 1%),对于不让客户无尽等待而言,这是一个微小的代价。
简而言之: DiLaServe 是一个聪明的经理,它知道何时催促厨师加快速度,何时让他们追求完美,并且能实时重新安排厨房人员,以确保每个人都能快速用餐,同时不会让厨房陷入瘫痪。
您所在领域的论文太多了?
获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。