⏶104
Hogwild! 推理:通过并发注意力实现并行LLM生成
发表
由
Alistarh 提交
作者:
Gleb Rodionov,
Roman Garipov,
Alina Shutova,
George Yakushev,
Vage Egiazarian,
Anton Sinitsin,
Denis Kuznedelev,
Dan Alistarh



摘要
大型语言模型 (LLM) 已展示出通过高级推理、长篇内容生成和工具使用来处理日益复杂的任务的能力。解决这些任务通常涉及长时间的推理计算。在人类解决问题中,一种常见的加速工作策略是协作:通过将问题分解为子任务、同时探索不同的策略等。最近的研究表明,LLM 也可以通过实施显式合作框架并行运行,例如投票机制或显式创建可以并行执行的独立子任务。然而,这些框架中的每一个可能并不适用于所有类型的任务,这可能会阻碍它们的适用性。在这项工作中,我们提出了一种不同的设计方法:我们并行运行 LLM“工作者”,允许它们通过并发更新的注意力缓存进行同步,并提示这些工作者决定如何最好地协作。我们的方法允许实例针对手头的问题提出自己的协作策略,同时“看到”彼此在并发缓存中的部分进展。我们通过 Hogwild! 推理来实现这种方法:一个并行 LLM 推理引擎,其中同一 LLM 的多个实例与同一注意力缓存并行运行,并“即时”访问彼此生成的令牌。Hogwild! 推理利用旋转位置嵌入 (RoPE) 来避免重新计算,同时提高并行硬件利用率。我们发现,现代具有推理能力的 LLM 可以开箱即用地使用共享键值缓存执行推理,而无需额外的微调。
我们提出了一种不同的并行 LLM 推理设计方法:我们并行运行 LLM “workers”,允许它们通过并发更新的注意力缓存进行同步,并提示这些 workers 决定如何最好地协作。我们的方法允许实例针对手头的问题提出自己的协作策略,同时在并发缓存中“看到”彼此的部分进展。我们通过 Hogwild! 推理实现了这种方法:一个并行 LLM 推理引擎,其中同一 LLM 的多个实例与相同的注意力缓存并行运行,并可以“即时”访问彼此生成的 tokens。Hogwild! 推理利用旋转位置嵌入 (RoPE) 来避免重新计算,同时提高并行硬件利用率。我们发现,现代具有推理能力的 LLM 可以开箱即用地使用共享 Key-Value 缓存执行推理,而无需额外的微调。