关键要点:在这篇文章中,我们介绍了 Amazon SageMaker 最新版0250的大型模型推理LMI深度学习容器DLC,并增加了对 NVIDIA TensorRTLLM 库的支持。通过这些升级,Amazon SageMaker LMI TensorRTLLM DLC 在 Llama270B、Falcon40B 和 CodeLlama34B 模型上平均减少了 33 的延迟,平均提高了 60 的吞吐量,使得大语言模型LLMs的优化、更高的性能表现和更好的性价比触手可及。
今天,Amazon SageMaker 推出了大型模型推理深度学习容器DLC新版本0250,并增加了对 NVIDIA TensorRTLLM 库 的支持。借助这些改进,用户可以轻松访问最先进的工具,来优化 SageMaker 上的大语言模型并实现价格性能优势Amazon SageMaker LMI TensorRTLLM DLC 在与公开的前一版本比较时,平均减少 33 的延迟,同时提高 60 的吞吐量,特别适用于 Llama270B、Falcon40B 和 CodeLlama34B 模型。
大语言模型在各种应用中得到了空前的关注。然而,由于这些模型通常过大,无法完全适配单个加速器或 GPU 设备,因此实现低延迟推理和规模化变得相对困难。SageMaker 提供 LMI DLC 以帮助用户最大化利用可用资源并提升性能。最新的 LMI DLC 支持持续批处理推理请求以提高吞吐量、有效的推理集合操作以改善延迟、以及 NVIDIA 最新的 TensorRTLLM 库以优化 GPU 性能。LMI DLC 提供低代码接口,仅需模型 ID 和可选的模型参数,便可快速完成 TensorRTLLM 的编译工作,所有构建 TensorRTLLM 优化模型和创建模型库的繁琐工作都由 LMI DLC 处理。此外,用户还可使用 LMI DLC 中最新的量化技术,如 GPTQ、AWQ 和 SmoothQuant。因此,借助 SageMaker 上的 LMI DLC,您可以加快对生成式 AI 应用的价值实现,并根据需要优化 LLM 达成顶级的性价比。
在本文中,我们将深入探讨最新 LMI DLC 的新功能、性能基准,并概述使用 LMI DLC 部署 LLM 所需的步骤,以实现最佳性能并降低成本。
小熊加速器vnp下面我们讨论 SageMaker LMI DLC 的三个新功能。
SageMaker 在最新的 LMI DLC 版本0250中提供了 NVIDIA 的 TensorRTLLM,支持针对大语言模型的最先进优化,如 SmoothQuant、FP8 和持续批处理。TensorRTLLM 能够实现超低延迟体验,显著提升性能。TensorRTLLM SDK 支持从单 GPU 部署到多 GPU 配置,采用张量并行等技术可进一步提升性能。要使用 TensorRTLLM 库,可以选择可用的 LMI DLCs,并在诸如 optionmodelid 和 engine=MPI 等其他 设置 中进行配置。以下图表展示了 TensorRTLLM 的技术栈。
在典型的 LLM 部署中,模型参数分布在多个加速器上,以满足大型模型的需求,这些模型无法在单个加速器上运行。这种方式提高了推理速度,使每个加速器可以并行进行部分计算。之后,引入集合操作以整合这些部分结果,并重新分配到各个加速器。
对于 P4D 实例类型,SageMaker 实施了一种新的集合操作,加快了 GPU 之间的通信。因此,与之前的版本相比,最新的 LMI DLC 可获得更低的延迟和更高的吞吐量。此外,此功能在 LMI DLC 中已开箱即用,用户无需额外配置即可使用。
SageMaker LMI DLC 现在支持最新的量化技术,包括使用 GPTQ 的预量化模型、激活感知权重量化AWQ,以及就地量化SmoothQuant。GPTQ 允许 LMI 运行 Hugging Face 中流行的 INT3 和 INT4 模型,提供在单一 / 多 GPU 中可适配的最小模型权重。LMI DLC 还支持 AWQ 推理,提升推理速度。最后,LMI DLC 现已支持 SmoothQuant,允许在尽量减少精度损失的情况下进行 INT8 量化,从而减少模型的内存占用和计算成本。目前,对 SmoothQuant 模型的就地转换已无需额外步骤。GPTQ 和 AWQ 需使用数据集进行量化方可与 LMI DLC 一起使用。您也可根据需要选择流行的预量化 GPTQ 和 AWQ 模型用于 LMI DLC。使用 SmoothQuant 时,只需在 servingproperties 中将 optionquantize=smoothquant 与 engine=DeepSpeed 组合设置即可。有关使用 SmoothQuant 托管 GPTNeox 的示例笔记本,请参见 GitHub。
您可以在 SageMaker 上使用新的 LMI DLC 0250 部署 LLM,而无需修改代码。SageMaker LMI DLC 使用 DJL 服务为您的模型提供推理服务。首先,您只需创建一个配置文件,指定 设置,例如模型并行化和推理优化库。有关使用 SageMaker LMI DLC 的说明和教程,请参考 模型并行化和大型模型推理 及我们的 SageMaker LMI DLC 可用列表。
DeepSpeed 容器包括一个名为 LMI 分布式推理库LMIDist的库。LMIDist 是一个推理库,用于运行大型模型推理,并使用在 vLLM、TextGenerationInference高达 094 版本、FasterTransformer 和 DeepSpeed 框架中使用的最佳优化。本库整合了流行的开源技术,如 FlashAttention、PagedAttention、FusedKernel 和高效的 GPU 通信内核,以加速模型并减少内存消耗。
TensorRT LLM 是 NVIDIA 于 2023 年 10 月发布的开源库。我们对 TensorRTLLM 库进行优化,以加速推理并创建工具包以简化用户体验,支持即时模型转换。该工具包使用户能够提供 Hugging Face 模型 ID,并执行从头到尾的模型部署。这一工具包支持流式的持续批处理。预计编译 Llama2 7B 和 13B 模型大约需 12 分钟,而 70B 模型则需要大约 7 分钟。如果您希望在 SageMaker 终端设置和实例扩展期间避免此编译开销,我们建议使用 我们的教程 进行提前AOT编译。我们也支持任何为 Triton Server 构建的 TensorRT LLM 模型,可以与 LMI DLC 一起使用。
我们比较了最新版本 SageMaker LMI DLC0250与先前版本0230的性能。我们针对 Llama2 70B、Falcon 40B 和 CodeLlama 34B 模型进行了实验,以展示使用 TensorRTLLM 和高效推理集合操作可在 SageMaker 上使用的性能提升。
SageMaker LMI 容器配备默认处理脚本来加载和托管模型,提供低代码选项。您也可以根据需要提供自己的脚本,以对模型加载步骤进行自定义。您需要在 servingproperties 文件中传递所需的参数。该文件包含 Deep Java LibraryDJL模型服务器下载和托管模型所需的配置。以下代码为我们进行部署和基准测试时使用的 servingproperties 文件:
propertiesengine=MPIoptionusecustomallreduce=true optionmodelid={{s3url}}optiontensorparalleldegree=8optionoutputformatter=jsonoptionmaxrollingbatchsize=64optionmodelloadingtimeout=3600
engine 参数用于定义 DJL 模型服务器的运行时引擎。我们可以通过 modelid 参数指定 Hugging Face 模型 ID 或 Amazon Simple Storage ServiceAmazon S3上模型的位置。task 参数用于定义自然语言处理NLP任务。tensorparalleldegree 参数则设置张量并行模块分布的设备数量。usecustomallreduce 参数在启用 NVLink 的 GPU 实例中设置为 true,以加速模型推理。您可以在 P4D、P4de、P5 和其他连接 NVLink 的 GPU 上设置此选项。outputformatter 参数设置输出格式。maxrollingbatchsize 参数定义最大并发请求数的限制。modelloadingtimeout 设置下载和加载模型以服务推理的超时值。有关配置选项的更多详细信息,请参考 配置和设置。
以下是 Llama2 70B 的性能比较结果,使用新 LMI TensorRT LLM DLC 后,延迟减少了 28,吞吐量在并发 16 时增长了 44。

以下数据为 Falcon 40B 的性能比较。在并发 16 的情况下,使用新 LMI TensorRT LLM DLC 后,延迟减少 36,吞吐量提高 59。
以下数据为 CodeLlama 34B 的性能比较。在并发 16 的情况下,使用新 LMI TensorRT LLM DLC 后,延迟减少 36,吞吐量提高 77。
随着最新发布,SageMaker 提供了两个容器:0250deepspeed 和 0250tensorrtllm。DeepSpeed 容器包含 LMI 分布式推理库。TensorRTLLM 容器则包括 NVIDIA 的 TensorRTLLM 库,用于加速 LLM 推理。
我们推荐的部署配置如以下图所示:
开始使用时,可以参考以下示例笔记本:
使用 TRTLLM 0250 LMI 容器部署 Llama2 70B使用 DeepSpeed 0250 LMI 容器部署 Llama2 70B在本文中,我们展示了如何利用 SageMaker LMI DLC 优化 LLM 以满足您的业务需求并实现价格性能优势。如需了解有关 LMI DLC 能力的更多信息,敬请参阅 模型并行化和大型模型推理。我们期待与您一起探索这些来自 Amazon SageMaker 的新功能。
Michael Nguyen 是 AWS 的高级初创解决方案架构师,专注于利用 AI/ML 驱动创新并在 AWS 上开发商业解决方案。Michael 拥有 12 项 AWS 认证,拥有电气/计算机工程学士/硕士学位,以及宾州州立大学、宾汉姆顿大学和特拉华大学的 MBA 学位。
Rishabh Ray Chaudhury 是 Amazon SageMaker 的高级产品经理,专注于机器学习推理。他热衷于为 AWS 上的机器学习客户创新并构建新体验,以帮助扩展其工作负载。闲暇时,他享受旅行和烹饪。您可以在 LinkedIn 上找到他。
Qing Lan 是 AWS 的软件开发工程师。他曾在 Amazon 开展多项挑战性产品的工作,包括高性能机器学习推理解决方案和高性能日志系统。Qing 的团队成功推出了 Amazon Advertising 中第一个十亿参数模型,并满足低延迟的要求。Qing 对基础设施优化和深度学习加速有深入的知识。
Jian Sheng 是 Amazon Web Services 的软件开发工程师,
从 DC2 迁移到 RA3 的 Amazon Redshift 以应对数据量和分析需求的增长关键要点数据生成和分析需求持续增长,Dafiti 选择从 DC2 迁移到 RA3 节点以满足需求。Amazon Redshift 的新功能如独立存储和数据共享极大地提升了数据处理能力。迁移过程顺畅,整体性能提...
Orangetheory Fitness:通过数据卓越转变锻炼方式关键要点Orangetheory Fitness利用庞大的会员数据和实时心率监测,优化锻炼体验。通过AWS的技术,Orangetheory能够实时处理心率数据,提供个性化的锻炼方案。公司即将推出新型锻炼课程,以满足不断增长的客户需求。...