Amazon SageMaker AI に HuggingFace モデルをデプロイしたいです。
解決策
注: 始める前に、SageMaker ノートブックインスタンスまたは SageMaker AI Studio ドメインを準備してください。
HuggingFace モデルを SageMaker AI にデプロイするには、SageMaker AI Jumpstart または SageMaker AI SDK for Python を使用してください。
SageMaker Studio で SageMaker AI Jumpstart を使用する
次の手順を実行します。
- SageMaker Studio を起動します。
- ナビゲーションペインで [JumpStart] を選択します。
- プロバイダーには [HuggingFace] を選択します。
- モデルを選択し、[デプロイ] を選択します。
- エンドポイントの設定を行った後、[デプロイ] を選択します。
SageMaker AI SDK for Python を使用して HuggingFace ハブからモデルをデプロイする
次の手順を実行します。
-
お使いの機械学習環境を開きます。
-
SageMaker AI をインストール、アップグレードします。
!pip install --upgrade sagemaker --quiet
-
SageMaker AI セッションを開始し、ランタイムロールを設定します。
import sagemaker
sess = sagemaker.Session()
role = sagemaker.get_execution_role()
-
モデルパラメータを定義します。
from sagemaker.huggingface.model import HuggingFaceModel
hub = {
'example-hf-model-id':'distilbert-base-uncased-distilled-squad', # model_id from hf.co/models
'example-hf-task':'question-answering'
}
注: example-hf-model-id は、Hugging Face のウェブサイトにある HuggingFace モデルリストを参照し、実際のモデル ID に置き換えます。example-hf-task は、予測に使用するタスクに置き換えます。HF_TASK 値のリストについては、Hugging Face のウェブサイトで「パイプライン」を参照してください。
-
クラスを作成し、そのクラスを SageMaker AI にデプロイします。
huggingface_model = HuggingFaceModel(
env=hub,
role=role,
transformers_version="4.26",
pytorch_version="1.13",
py_version='py39',
)
predictor = huggingface_model.deploy(
initial_instance_count=1,
instance_type="ml.m5.xlarge"
)
関連情報
Hugging Face (Amazon SageMaker Python SDK のウェブサイト)
Amazon SageMaker AI で Hugging Face を使用するためのリソース
ハブからモデルをデプロイする (Hugging Face のウェブサイト)
推論用のトランスフォーマーをデプロイする (GitHub のウェブサイト)