翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Ray Serve を使用した JumpStart モデルのデプロイ
JumpStart モデルは、モデルの重みを手動でダウンロードしたり、モデルロードコードを記述したり、サービングコンテナを設定したりすることなく、HyperPod で Ray Serve にデプロイできます。PyPI ウェブサイトの toolkit-for-ray-on-sagemaker-aiJumpStartModelLoaderCallbackする が用意されています。
前提条件
-
実行中の Ray クラスター、または次のステップでデプロイ
RayServiceする 。詳細については、「Ray Serve を使用したモデルのデプロイ」を参照してください。 -
KubeRay 演算子がインストールされました。詳細については、「HyperPod Amazon EKS への KubeRay のインストール」を参照してください。
-
クラスターにインストールされている Amazon EKS Pod Identity Agent アドオン。詳細については、「Amazon EKS ユーザーガイド」の「EKS Pod Identity Agent のセットアップ」を参照してください。
IAM 許可を設定する
は SageMaker AI API をJumpStartModelLoaderCallback呼び出して、モデルアーティファクトをダウンロードするための署名付き URLs を取得します。Ray Serve ポッドには、次のアクセス許可を持つ IAM ロールが必要です。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sagemaker:CreateHubContentPresignedUrls", "Resource": "*" } ] }
Kubernetes サービスアカウントをこの IAM ロールにマッピングする Pod Identity 関連付けを作成します。詳細については、「Amazon EKS ユーザーガイド」の「EKS Pod Identity で IAM ロールを引き受けるように Kubernetes サービスアカウントを設定する」を参照してください。
aws eks create-pod-identity-association \ --cluster-nameeks-cluster-name\ --namespacenamespace\ --service-accountjumpstart-ray-serve\ --role-arn arn:aws:iam::account-id:role/role-name
serviceAccountName フィールドを使用して、RayServiceマニフェストでこのサービスアカウントを参照します (次の例を参照)。
モデルをデプロイする
次の例では、 LLMConfigで Ray Serve の を使用して JumpStart モデルをデプロイしますJumpStartModelLoaderCallback。コールバックは、サーブレプリカの起動時に署名付き URLs を使用して JumpStart からモデルアーティファクトをダウンロードし、それをサービングエンジン (vLLM) にロードして、OpenAI 互換 API を公開します。
from ray.serve.llm import LLMConfig, build_openai_app from ray.llm._internal.common.callbacks.base import CallbackConfig from toolkit_for_ray_on_sagemaker_ai import JumpStartModelLoaderCallback llm_config = LLMConfig( model_loading_config={ "model_id": "my-llm", "model_source": "placeholder", }, callback_config=CallbackConfig( callback_class=JumpStartModelLoaderCallback, callback_kwargs={ "jumpstart_model_id": "huggingface-reasoning-qwen3-4b", "region": "us-east-1", "accept_eula": False, # Set to True after reviewing the model's EULA }, ), accelerator_type="A10G", ) app = build_openai_app({"llm_configs": [llm_config]})
RayService マニフェストimport_pathの appから参照し、「」の説明に従ってデプロイしますRay Serve を使用したモデルのデプロイ。headGroupSpec と の両方serviceAccountNameを、前のステップで作成した IAM ロールに関連付けられたサービスアカウントworkerGroupSpecsに設定します。
注記
モデルのライセンスと EULA 要件の詳細については、「基盤モデルの選択」を参照してください。
エンドポイントに到達する
デプロイでは、 用に作成された KubeRay サービスを通じて、ポート 8000 で OpenAI 互換のチャット完了 API が公開されますRayService。クイックテストには、 を使用しますkubectl port-forward。
kubectl port-forward svc/ray-service-head-svc8000:8000
次に、 にリクエストを送信しますhttp://localhost:8000。
curl http://localhost:8000/v1/chat/completions \ -H "Content-Type: application/json" \ -d '{ "model": "my-llm", "messages": [{"role": "user", "content": "What is Ray Serve?"}] }'