论文
LLM 野外服务:框架、方法和系统设计的实证研究
LLM Serving in the Wild: An Empirical Study of Frameworks, Methods, and System Designs
摘要
大语言模型(LLM)集成到软件系统和AI服务中,使高效的LLM服务成为软件工程关注的问题。为 LLM 提供服务具有挑战性,因为推理需要计算、内存、GPU 资源和执行,同时保持延迟和吞吐量。尽管先前的研究提出了 LLM 推理、优化和服务技术和框架,但人们对它们在实践中如何采用知之甚少。在本研究中,我们研究了 LLM 服务框架和服务方法在开源软件系统中的使用。我们识别并分析了五个 LLM 特定框架:vLLM、SGLang、TensorRT-LLM、LMDeploy 和 FlashInfer。我们研究如何单独和组合采用这些框架和技术,不同 LLM 类别的采用情况有何不同,以及存储库在意图、焦点、用例和架构设计方面有何不同。我们的结果表明,vLLM 是最流行和采用的框架,而并行计算、内存管理和网络修剪是最常用的服务方法类别。多框架使用受到限制,这表明开发人员依赖于单一服务框架;然而,组合框架连接了整个服务堆栈的互补功能。框架的采用因模型系列、模式、模型大小、领域专业化和部署设置而异。存储库级分析表明,LLM 服务框架支持应用程序和架构,包括基于强化学习 (RL) 的推理、多模式生成和理解、微服务和云基础设施。总体而言,本研究提供了 LLM 服务框架在实践中采用的大规模实证特征,并为从事 LLM 系统工作的研究人员、框架维护者和从业者提供了见解。