利用SageMaker多模型端点托管数百个NLP模型,支持GPU实例

使用SageMaker托管多个NLP模型,支持GPU实例

将Triton推理服务器与Amazon SageMaker集成

Unsplash上的图片

过去,我们已经探索了SageMaker多模型端点(MME)作为一个成本效益的选项,以在一个端点后面托管多个模型。虽然在MME上使用基于CPU的实例可以托管较小的模型,但是随着这些模型变得越来越大且越来越复杂,有时可能需要使用GPU计算。

在本文中,我们将利用由GPU实例支持的MME作为SageMaker推理功能的一个特定功能,展示如何在单个端点上高效地托管数百个NLP模型。请注意,在本文撰写时,SageMaker上的MME GPU目前支持以下基于单个GPU的实例族:p2、p3、g4dn和g5。

MME GPU目前还由两个模型服务堆栈提供支持:

  1. Nvidia Triton推理服务器
  2. TorchServe

在本文中,我们将使用Triton推理服务器和PyTorch后端来托管基于BERT的模型在我们的GPU实例上。如果您对Triton还不熟悉,我们将提供一些基本介绍,但我建议参考我的起始文章。

注意:本文假设读者对SageMaker部署和实时推理有一定的了解。我建议您参考这篇文章,以更深入地了解部署/推理。我们还将概述多模型端点,但要进一步了解,请参考此文档。

免责声明:我是AWS的机器学习架构师,我的观点属于个人观点。

什么是MME?解决方案概述

为什么需要使用多模型端点,以及何时使用它们?MME是一种成本和管理效益的托管选项。传统的SageMaker端点设置如下所示:

作者提供的图片

当您拥有成百甚至成千上万个模型时,管理这么多不同的端点变得困难,而且您需要付费…