新しいAmazon SageMakerコンテナでLLMの推論パフォーマンスを強化する

Amazon SageMakerコンテナの新機能により、LLMの推論パフォーマンスが大幅に向上する

今日は、Amazon SageMakerが、Large Model Inference (LMI) Deep Learning Containers (DLCs)の新しいバージョン(0.25.0)をリリースし、NVIDIAのTensorRT-LLMライブラリにも対応しました。これらのアップグレードにより、SageMaker上で最先端のツールを活用して大規模言語モデル(LLMs)を最適化し、価格パフォーマンスの利点を得ることができます – Amazon SageMaker LMI TensorRT-LLM DLCは、前のバージョンと比較して、Llama2-70B、Falcon-40B、CodeLlama-34Bモデルにおいて、平均でレイテンシを33%削減し、スループットを平均で60%向上させます。

LLMsは、さまざまなアプリケーションで非常に人気があります。しかし、これらのモデルはしばしば1つのアクセラレータやGPUデバイスに収まりきらず、低レイテンシの推論とスケーリングを実現することが難しくなります。SageMakerは、LMI DLCsを提供して、利用可能なリソースの利用効率を最大化し、パフォーマンスを向上させるお手伝いをします。最新のLMI DLCsは、スループットを向上させるための推論リクエストの連続バッチングサポート、レイテンシを改善する効率的な推論集合演算、長いシーケンス長のワークロードのパフォーマンスを向上させるPaged Attention V2、およびNVIDIAの最新のTensorRT-LLMライブラリを提供します。 LMI DLCsでは、モデルIDとオプションのモデルパラメーターのみを要求するTensorRT-LLMとの簡単なコンパイルを実現した、ローコードインターフェースが提供されています。TensorRT-LLMに最適化されたモデルとモデルリポジトリの作成に必要な重い作業は、LMI DLCによって管理されます。さらに、LMI DLCsで利用可能な最新の量子化技術(GPTQ、AWQ、SmoothQuant)を使用することもできます。その結果、SageMakerのLMI DLCsを使用することで、生成AIアプリケーションの価値を迅速に向上させ、選択したハードウェアに最適なLLMsを最適化することで、最高クラスの価格パフォーマンスを実現できます。

この記事では、最新のLMI DLCsのリリースでの新機能について詳しく説明し、パフォーマンスのベンチマークを示し、パフォーマンスを最大化しコストを削減するためにLMI DLCsを使用してLLMsを展開するために必要な手順について説明します。

SageMaker LMI DLCsの新機能

このセクションでは、SageMaker LMI DLCsの3つの新機能について説明します。

SageMaker LMIはTensorRT-LLMをサポート

SageMakerは、最新のLMI DLCリリース(0.25.0)の一環として、NVIDIAのTensorRT-LLMを提供しています。これにより、SmoothQuant、FP8などの最新の最適化手法やNVIDIA GPUを使用したLLMsの連続バッチングなどが可能になります。 TensorRT-LLMは、テンソル並列処理などの技術を併用することで、超低レイテンシの体験を実現できます。TensorRT-LLM SDKは、シングルGPUからマルチGPU構成までの展開をサポートしており、テンソル並列処理などの技術によりさらなるパフォーマンス向上が可能です。TensorRT-LLMライブラリを使用するには、利用可能なLMI DLCsからTensorRT-LLM DLCを選択し、engine=MPIなどの設定を行います。以下の図は、TensorRT-LLMのテックスタックを示しています。

効率的な推論集合演算

LLMの典型的な展開では、モデルパラメーターは複数のアクセラレータに分散されます。これにより、単一のアクセラレータに収まりきらない大規模なモデルの要件を満たすことができます。これにより、各アクセラレータが並列で部分的な計算を実行することで推論速度が向上します。その後、集合演算を導入して、これらの部分的な結果をまとめ、アクセラレータ間で再分配します。

P4Dインスタンスタイプでは、SageMakerはGPU間の通信を高速化する新しい集合演算を実装しています。その結果、最新のLMI DLCsを使用すると、前のバージョンと比較してより低いレイテンシと高いスループットを実現できます。さらに、この機能はLMI DLCsとともに使うために追加の設定が必要なく、Amazon SageMakerで独占的に利用できます。

量子化のサポート

SageMaker LMI DLCは、最新の量子化技術をサポートしています。GPTQを使用した事前量子化モデル、Activation-aware Weight Quantization(AWQ)、およびSmoothQuantなどのジャストインタイム量子化を含みます。

GPTQを使用すると、LMIはHugging Faceから人気のあるINT3およびINT4モデルを実行できます。これにより、シングルGPU/マルチGPUに収まる可能な限り最小のモデルウェイトを提供します。また、LMI DLCはAWQ推論もサポートしており、より高速な推論速度を実現します。さらに、LMI DLCはSmoothQuantもサポートしており、INT8量子化によりモデルのメモリ使用量と計算コストを最小限に抑えることができます。現在、SmoothQuantモデルのジャストインタイム変換には追加の手順は必要ありません。ただし、GPTQおよびAWQはLMI DLCと使用するためにデータセットで量子化する必要があります。また、LMI DLCで使用するために人気のある事前量子化されたGPTQおよびAWQモデルを選択することもできます。SmoothQuantを使用するには、option.quantize=smoothquanengine=DeepSpeedserving.propertiesで設定します。ml.g5.12xlargeでGPT-NeoxをホストするためのSmoothQuantの使用例ノートブックは、GitHubにあります。

SageMaker LMI DLCの使用方法

コードに変更を加えることなく、SageMakerの新しいLMI DLC 0.25.0を使用してLLMを展開することができます。SageMaker LMI DLCは、DJLサービングを使用してモデルを推論に使用します。始めるには、モデルの並列化や推論の最適化ライブラリなどを指定する設定ファイルを作成するだけです。SageMaker LMI DLCの使用方法やチュートリアルについては、モデルの並列化と大規模モデルの推論および使用可能なSageMaker LMI DLCのリストを参照してください。

DeepSpeedコンテナには、LMI Distributed Inference Library(LMI-Dist)というライブラリが含まれています。LMI-Distは、さまざまなオープンソースライブラリで使用される最適化された推論ライブラリであり、vLLM、Text-Generation-Inference(バージョン0.9.4まで)、FasterTransformer、およびDeepSpeedフレームワークに対応しています。このライブラリには、FlashAttention、PagedAttention、FusedKernel、効率的なGPU通信カーネルなど、一般的なオープンソース技術が組み込まれており、モデルの実行を高速化しメモリ消費を削減します。

TensorRT LLMは、2023年10月にNVIDIAがリリースしたオープンソースライブラリです。TensorRT-LLMライブラリを最適化して推論速度を向上させ、ジャストインタイムモデル変換をサポートするツールキットを作成しました。このツールキットを使用すると、Hugging FaceモデルIDを指定してモデルをエンドツーエンドで展開できます。また、ストリーミングでの連続バッチ処理にも対応しています。Llama-2 7Bおよび13Bモデルのコンパイルには約1〜2分、70Bモデルのコンパイルには約7分かかります。SageMakerエンドポイントのセットアップやインスタンスのスケーリング時のこのコンパイルのオーバーヘッドを回避したい場合は、モデルを事前に(AOT)コンパイルすることを推奨します。また、LMI DLCで使用できるTriton Serverに対応したTensorRT LLMモデルも受け入れています。

パフォーマンスベンチマーク結果

最新のSageMaker LMI DLCsバージョン(0.25.0)と以前のバージョン(0.23.0)のパフォーマンスを比較しました。Llama-2 70B、Falcon 40B、CodeLlama 34Bのモデルについて、TensorRT-LLMおよび効率的な推論集合操作(SageMakerで利用可能)によるパフォーマンスの向上を実証する実験を行いました。

SageMaker LMIコンテナには、モデルをロードしてホストするためのデフォルトのハンドラスクリプトが付属しており、低コードオプションを提供しています。モデルのロード手順にカスタマイズが必要な場合は、独自のスクリプトを使用するオプションもあります。必要なパラメータをserving.propertiesファイルに渡す必要があります。このファイルには、Deep Java Library(DJL)モデルサーバーのダウンロードとホストに必要な設定が含まれています。以下のコードは、デプロイメントとベンチマークのために使用したserving.propertiesです。

engine=MPIoption.use_custom_all_reduce=true option.model_id={{s3url}}option.tensor_parallel_degree=8option.output_formatter=jsonoption.max_rolling_batch_size=64option.model_loading_timeout=3600

engineパラメータは、DJLモデルサーバーの実行エンジンを定義するために使用されます。モデルのHugging FaceモデルIDまたはAmazon Simple Storage Service(Amazon S3)の場所をmodel_idパラメータを使用して指定することができます。タスクパラメータは、自然言語処理(NLP)タスクを定義するために使用されます。 tensor_parallel_degreeパラメータは、テンソル並列モジュールが分散されるデバイスの数を設定します。use_custom_all_reduceパラメータは、NVLinkが有効になっているGPUインスタンスの場合にtrueに設定され、モデルの推論を高速化します。これは、NVLink接続されたP4D、P4de、P5などのGPUに対して設定できます。 output_formatterパラメータは出力形式を設定します。 max_rolling_batch_sizeパラメータは、最大同時リクエスト数の制限を設定します。model_loading_timeoutは、モデルのダウンロードとロードに対するタイムアウト値を設定します。構成オプションの詳細については、設定を参照してください。

Llama-2 70B

以下は、Llama-2 70Bのパフォーマンス比較結果です。16の同時処理でレイテンシが28%低下し、スループットが44%増加しました。新しいLMI TensorRT LLM DLCを使用しています。

Falcon 40B

以下はFalcon 40Bの比較結果です。16の同時処理でレイテンシが36%低下し、スループットが59%増加しました。新しいLMI TensorRT LLM DLCを使用しています。

CodeLlama 34B

以下はCodeLlama 34Bの比較結果です。16の同時処理でレイテンシが36%低下し、スループットが77%増加しました。新しいLMI TensorRT LLM DLCを使用しています。

最新リリースでは、SageMakerは2つのコンテナを提供しています:0.25.0-deepspeedおよび0.25.0-tensorrtllmです。DeepSpeedコンテナには、LMI Distributed Inference LibraryであるDeepSpeedが含まれています。TensorRT-LLMコンテナには、LLM推論を高速化するためのNVIDIAのTensorRT-LLMライブラリが含まれています。

以下の図に示すデプロイメント設定を推奨します。

始めるには、次のサンプルノートブックを参照してください:

結論

この記事では、SageMaker LMI DLCを使用して、ビジネスユースケースに最適なLLMを最適化し、価格パフォーマンスの利点を得る方法を紹介しました。LMI DLCの機能については、モデル並列処理と大規模なモデルの推論を参照してください。Amazon SageMakerから提供されるこれらの新機能をどのように活用するかを楽しみにしています。

We will continue to update VoAGI; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

機械学習

「機械学習が間違いを comitte たとき、それはどういう意味ですか?」

「ML/AIに関する議論で、私たちの通常の「ミステイク(間違い)」の定義は意味をなすでしょうか?もしそうでない場合、なぜで...

機械学習

コンピュータービジョンによる車両損傷検出の構築方法

「2つのモデルを使用したコンピュータビジョンソリューションの設計原則を探求し、Mask R-CNNとU-Net AIアルゴリズムの能力を...

データサイエンス

データのアルトリズム:企業エンジンのデジタル燃料

デジタル経済は、知識と情報への均等で迅速かつ無料のアクセスという素晴らしい約束に基づいて構築されてきましたそれから長...

データサイエンス

「AIコントロールを手にして、サイバーセキュリティシステムに挑戦しましょう」

あなたの組織のデータは、サイバー犯罪者の悪意のある行為に対して免疫を持っていますか?そうでなければ、弱い防御システム...

AIニュース

「先進的なマルチモーダル生成AIの探求」

イントロダクション テクノロジーの進歩する現代において、興奮すべき展開が現れています – 高度なマルチモーダルジェ...