介绍:
基于 Transformer 架构的大型语言模型 (LLM) 已变得越来越普遍。例如,Mistral AI 团队推出了Mistral 7B 模型。了解其推理、微调和训练的内存需求对于高效部署和利用至关重要。
总结:
- 推理内存估算:对于 70 亿参数模型 (7B),估计内存需求如下:
— 浮点精度 28 GB、BF16 精度 14 GB、int8 精度 7 GB。此估算可相应应用于其他版本。
- 训练所需内存:保守估计,在参数数量和类型相同的情况下,推理所需内存约为其四倍。例如,训练具有浮点精度的 7B 模型大约需要 112 GB(28 GB * 4)。
训练大型语言模型的内存要求:
- 梯度:梯度所需的内存等于参数的数量。
- 优化器状态:优化器状态所需的内存取决于所使用的优化器的类型。
— 使用 AdamW 优化器,需要两倍的参数数量。
— 使用 SGD 优化器时,需要与参数数量相当的内存。
采用 LoRA/QloRA 技术的内存使用情况,以 LoRA 为例:
- LoRA涉及在原始模型上运行