Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Déploiement d'un JumpStart modèle avec Ray Serve
Vous pouvez déployer JumpStart des modèles dans Ray Serve sur HyperPod sans télécharger manuellement les poids des modèles, écrire du code de chargement des modèles ou configurer un conteneur de diffusion. La bibliothèque JumpStartModelLoaderCallback qui s'intègre à l'API LLM de Ray Serve pour gérer le téléchargement des artefacts du modèle au moment du déploiement. JumpStart
Conditions préalables
-
Un cluster Ray en cours d'exécution ou un cluster
RayServiceque vous déployez en suivant les étapes suivantes. Pour de plus amples informations, veuillez consulter Déploiement d'un modèle avec Ray Serve. -
L' KubeRay opérateur a installé. Pour de plus amples informations, veuillez consulter Installation KubeRay sur HyperPod Amazon EKS.
-
Le module complémentaire Amazon EKS Pod Identity Agent est installé sur votre cluster. Pour plus d'informations, consultez la section Configuration de l'agent d'identité EKS Pod dans le guide de l'utilisateur Amazon EKS.
Configuration des autorisations IAM
Il JumpStartModelLoaderCallback appelle l'API SageMaker AI pour récupérer des URL présignées afin de télécharger les artefacts du modèle. Vos pods Ray Serve ont besoin d'un rôle IAM doté des autorisations suivantes.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "sagemaker:CreateHubContentPresignedUrls", "Resource": "*" } ] }
Créez une association Pod Identity qui associe un compte de service Kubernetes à ce rôle IAM. Pour plus d'informations, consultez Configuration d'un compte de service Kubernetes pour qu'il assume un rôle IAM avec EKS Pod Identity dans le guide de l'utilisateur Amazon EKS.
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
Faites référence à ce compte de service dans votre RayService manifeste à l'aide du serviceAccountName champ (illustré dans l'exemple suivant).
Déploiement du modèle
L'exemple suivant déploie un JumpStart modèle utilisant celui de Ray Serve LLMConfig avec leJumpStartModelLoaderCallback. Le rappel télécharge les artefacts du modèle à JumpStart partir d'URL présignées lorsque la réplique du service démarre et les charge dans le moteur de diffusion (vLLM), exposant ainsi une API. OpenAI-compatible
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]})
appRéférez-vous import_path au contenu de votre RayService manifeste, puis déployez-le comme décrit dansDéploiement d'un modèle avec Ray Serve. Assurez-vous des deux headGroupSpec et workerGroupSpecs configurez serviceAccountName le compte de service associé au rôle IAM créé à l'étape précédente.
Note
Pour plus d'informations sur les licences modèles et les exigences du CLUF, voir Choisir un modèle de base.
Atteindre le point final
Le déploiement expose une API de complétion des OpenAI-compatible discussions sur le port 8000 via le KubeRay service créé pour le. RayService Pour des tests rapides, utilisez kubectl port-forward :
kubectl port-forward svc/ray-service-head-svc8000:8000
Envoyez ensuite vos demandes à 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?"}] }'