大模型常见推理框架简介:vLLM、Tensorrt-LLM、DeepSpeed、Text Generation Inference
大模型推理面临的挑战
大模型(Large Language Model)如GPT-3、PaLM等,因其强大的自然语言处理能力和广泛的应用前景,受到学术界和工业界的高度关注。然而,大模型动辄上百亿甚至上千亿参数,在推理阶段面临显存占用大、计算效率低等问题,给实际应用带来挑战。为此,业界提出了多种大模型推理加速框架。
vLLM
vLLM全称Virtual Large Language Model,由Nvidia开源,旨在降低大模型推理的显存占用。其核心思想是将模型的一部分保存在CPU内存或硬盘上,只将当前计算所需的部分加载到GPU显存中,从而打破GPU显存限制。
vLLM支持PyTorch和FasterTransformer后端,可无缝适配现有模型。使用vLLM,在配备96GB内存+440GB A100的服务器上可运行1750亿参数模型,在配备1.5TB内存+880GB A100的服务器上可运行6万亿参数模型。
Tensorrt-LLM
Tensorrt-LLM是Nvidia在TensorRT推理引擎基础上,针对Transformer类大模型推理优化的框架。主要特性包括:
- 支持多种优化技术,如kernel融合、矩阵乘优化、量化感知训练等,可提升推理性能
- 支持多GPU多节点部署,可扩展到万亿规模参数
- 提供Python和C++ API,易于集成和部署
在Nvidia测试中,基于OPT-30B在A100上的推理,Tensorrt-LLM可实现最高32倍加速。
DeepSpeed
DeepSpeed是微软开源的大模型训练加速库,最新的DeepSpeed-Inference也提供了推理加速能力,主要特点包括:
- 通过内存优化、计算优化、通信优化,降低推理延迟和提升吞吐
- 支持多GPU横向扩展,单卡可推理数百亿参数模型
- 提供Transformer、GPT、BERT等模型的推理示例
- 集成Hugging Face transformers库,使用简单
在GPT-NeoX测试中,基于DeepSpeed的推理相比原生PyTorch可实现7.7倍加速。
Text Generation Inference
Text Generation Inference(简称TextGen)是Hugging Face主导的开源推理框架,旨在为自然语言生成模型如GPT、OPT等提供高性能推理。主要特点包括:
- 高度优化的核心代码,支持FP16、int8等多种精度
- 支持多GPU多节点扩展,可推理万亿规模参数
- 良好的用户体验,提供Python高层API,简化开发
- 支持Hugging Face生态中的模型,如GPT2、GPT-Neo、BLOOM等
在OPT-175B基准测试中,TextGen可实现最高17倍推理加速。
总结与展望
针对大模型推理这一热门领域,各大厂商和开源社区都推出了自己的加速框架。这些框架在降低显存占用、提升计算效率、简化开发流程等方面各有侧重,为大模型推理提供了多样化选择。
未来随着大模型参数规模进一步增长,推理优化框架也将不断迭代升级,以满足实际应用需求。同时,软硬件协同设计、定制化推理芯片等也是值得关注的发展方向。大模型推理优化仍大有可为。