混合专家语言的快速推理的大模型
自然语言处理的许多最新进展都依赖于大型预训练语言模型。然而,这一领域的快速科学进步是不可能的没有开放获取的 LLM,这开放获取 LLM 的主要优势在于,研究人员可以在本地部署它们并在使用专有 API 无法实现的方式。 随着大型语言模型 (LLM) 的广泛采用,许多深入学习从业者正在寻找运行这些模型的策略有效。其中一种策略是使用稀疏专家混合 (MoE) —只有一小部分模型层处于活动状态的模型体系结构类型任何给定的输入。此属性允许基于 MoE 的语言模型生成令牌比他们的“密集”对应物更快,但由于有多个“专家”,它也增加了模型大小。不幸的是,这使得最先进的 MoE 语言模型在没有高端 GPU 的情况下难以运行。在这项工作中,我们研究了在加速器内存有限的消费类硬件上运行大型 MoE 语言模型的问题。我们建立在参数卸载算法和提出一种新颖的策略,通过利用 Innate 来加速卸载使用此策略,我们可以在桌面硬件和免费层 Google Colab 实例上运行混合量化的 Mixtral-8x7B。
尽管 LLM 参数是公开可用的,但由于它们规模。最先进的开放访问语言模型需要多个高端 GPU 1 即使基本推理工作负载。要在更实惠的硬件设置上使用这些 LLM,必须压缩模型参数或将参数卸载到更便宜的存储,无论是 RAM 还是 SSD。
最近的一些工作通过引入稀疏专家混合来修改变压器架构块。MoE 块包含多个“专家”(层),以及一个“门控功能”,用于选择在给定输入上使用哪些专家。因此,MoE 模块使用所有“专家”的一小部分进行任何单次前向传递,从而允许更多计算效率高的训练 。值得注意的是,MoE 是其中之一最大的和可用的 LLM 中最好的。而混合专家模型可能比密集模型更有效,许多技术高效的 LLM 推理在设计时没有考虑到 MoE,并且在现代使用混合专家层的大型语言模型。
在这项工作中,系统地开发了运行大型 MoE 语言模型的技术 GPU 内存有限。主要目标是在桌面级硬件上使用 Mixtral-8x7BInstruct(一个基于 MoE 的聊天助手)进行推理(生成令牌),其中只有一小部分专家适合加速器内存。为此:观察 MoE 语言模型如何在标记之间访问其专家,并发现几个规律性,一些 EA 在相邻的代币之间重复使用,模型被隐藏早期层的状态已经“知道”哪些专家将在后续层中使用。设计了一个特定于教育部的卸载策略,该策略利用了以下规律性:它使用 LRU 缓存来显着减少 GPU-RAM 通信,从而加快速度生成和它提前猜测需要哪些专家才能更好地重叠专家加载计算。考虑在 T4、RTX 3060 上运行 Mixtral-8x7B-Instruct 的具体场景和 RTX 3080 Mobile 并开发混合量化和建议的卸载算法以每秒 2-3 个令牌交互运行该模型取决于硬件。
在这项工作中,探索了加速基于专家混合的语言模型的策略 GPU 内存有限的消费类硬件。提出了一种以教育部为中心的卸载方法并探索混合量化如何影响语言理解的困惑和表现任务。为在资源受限的硬件上推理大型 MoE 语言模型提供了一种实用的解决方案,从而能够更广泛地访问这些强大的模型进行研究和开发。作为未来的工作,计划根据推测性的专家预测探索进一步的卸载策略。
评论