作者:Kyle Ulrich Joao Moura Ashish Khetan 和 Vivek Madan 于2024年1月29日发表在高级 (300),亚马逊机器学习,亚马逊SageMaker JumpStart,技术指南
永久链接评论 分享
在部署大型语言模型LLM时,机器学习ML从业者关注模型服务性能的两个重要指标:延迟生成单个标记所需的时间和吞吐量每秒生成的标记数量。通过对Amazon SageMaker JumpStart中可用的LLM进行全面基准测试,本文探讨了这些指标之间的关系,并提供了针对延迟、吞吐量、成本和实例类型限制的实际优化建议。
super加速器官网入口本文展示了不同模型配置下的最低延迟左和最高吞吐量右值。每种模型部署均使用SageMaker JumpStart提供的默认配置。这些延迟和吞吐量值是基于256个输入标记和256个输出标记的负载。
模型类型延迟 (ms/token)吞吐量 (tokens/sec)mlg52xlarge3330mlg512xlarge1759mlp4d24xlarge2049增加并发请求可以单调增加吞吐量,但对于大规模并发请求,增益会递减。本文还指出,使用的实例类型及其硬件配置对模型性能有显著影响。
通过绘制延迟与吞吐量的关系图,我们能够确定最佳设置。例如,Llama 2 7B端点在mlg512xlarge实例上,随着并发请求的增加,吞吐量和延迟均呈单调增加趋势。在达到某个特定点后,额外的并发请求可能会导致延迟增加,因此需要根据具体应用找到理想配置。

选择合适的硬件进行LLM推理通常依赖于特定的用例、用户体验目标和所选LLM。加速器的规格会极大影响延迟和吞吐量的表现,我们需要通过实际基准测试来验证理论。
大多数现代ML服务器将注意力键和值缓存到设备内存中DRAM以避免重复计算。通常情况下,当KV矩阵的内存耗尽时,后续的请求会被排队。通过了解KV缓存的大小和批处理大小,我们可以推测出相关的延迟和吞吐量曲线的“拐点”。
如果单个端点无法满足并发请求的需求,可以通过水平扩展来解决。SageMaker会自动在多实例之间进行负载平衡,以此来提高整体吞吐量。这一步骤对于需要处理大量查询的应用特别重要。
本文通过对Amazon SageMaker JumpStart中的LLM进行基准测试,展示了如何优化端点部署配置以实现最佳延迟、吞吐量和成本的平衡。有关更多信息和实践,请参考链接的笔记本以进行个性化基准测试。
全国咨询热线
Super加速器(中国)官方网站|Super加速器
联系电话:13594780123
联系人:李总
邮箱:sworn@mac.com
公司地址:邵武市清塑囚牢483号
微信扫一扫
手机官网