

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
<a name="sagemaker-hyperpod-ray-deploy-jumpstart-model"></a>

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 ](https://pypi.org/project/toolkit-for-ray-on-sagemaker-ai/) toolkit-for-ray-on-sagemaker-ai sur le site Web de PyPI fournit une fonctionnalité `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
<a name="sagemaker-hyperpod-ray-deploy-jumpstart-model-prereq"></a>
+ Un cluster Ray en cours d'exécution ou un cluster `RayService` que vous déployez en suivant les étapes suivantes. Pour de plus amples informations, veuillez consulter [Déploiement d'un modèle avec Ray Serve](sagemaker-hyperpod-ray-deploy-model.md).
+ L' KubeRay opérateur a installé. Pour de plus amples informations, veuillez consulter [Installation KubeRay sur HyperPod Amazon EKS](sagemaker-hyperpod-ray-install-kuberay.md).
+ 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 ](https://docs.aws.amazon.com/eks/latest/userguide/pod-id-agent-setup.html) dans le guide de l'utilisateur * Amazon EKS*.

## Configuration des autorisations IAM
<a name="sagemaker-hyperpod-ray-deploy-jumpstart-model-iam"></a>

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 ](https://docs.aws.amazon.com/eks/latest/userguide/pod-id-association.html) dans le guide de l'utilisateur * Amazon EKS. *

```
aws eks create-pod-identity-association \
  --cluster-name {{eks-cluster-name}} \
  --namespace {{namespace}} \
  --service-account {{jumpstart-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
<a name="sagemaker-hyperpod-ray-deploy-jumpstart-model-deploy"></a>

L'exemple suivant déploie un JumpStart modèle utilisant celui de Ray Serve `LLMConfig` avec le`JumpStartModelLoaderCallback`. 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]})
```

`app`Référez-vous `import_path` au contenu de votre `RayService` manifeste, puis déployez-le comme décrit dans[Déploiement d'un modèle avec Ray Serve](sagemaker-hyperpod-ray-deploy-model.md). 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 ](https://docs.aws.amazon.com/sagemaker/latest/dg/jumpstart-foundation-models-choose.html) de base.

## Atteindre le point final
<a name="sagemaker-hyperpod-ray-deploy-jumpstart-model-endpoint"></a>

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-svc}} 8000: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?"}]
  }'
```