

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.

# Hubs privés sélectionnés pour le contrôle d'accès aux modèles de fondation dans JumpStart
<a name="jumpstart-curated-hubs"></a>

Créez des modèles de JumpStart base préformés pour votre organisation avec des hubs privés. Utilisez les derniers modèles de fondation propriétaires et accessibles au public tout en appliquant des barrières de protection de la gouvernance et en veillant à ce que votre organisation ne puisse accéder qu’aux modèles approuvés.

Utilisez des hubs de modèles privés pour partager des modèles et des blocs-notes, centraliser les artefacts, améliorer la visibilité et rationaliser l’utilisation des modèles au sein de votre organisation. Les administrateurs peuvent créer des hubs privés qui incluent des sous-ensembles de modèles adaptés aux différentes équipes, aux différents cas d’utilisation ou aux exigences de sécurité. Les administrateurs peuvent créer un hub de modèles JumpStart privé à l'aide du SDK SageMaker Python. Les utilisateurs peuvent ensuite parcourir, entraîner et déployer l'ensemble de modèles sélectionnés à l'aide d'Amazon SageMaker Studio ou du SDK SageMaker Python.

Pour plus d’informations sur la création d’un hub de modèles privé, consultez [Guide d'administration pour les hubs de mannequins privés sur Amazon SageMaker JumpStart](jumpstart-curated-hubs-admin-guide.md).

Pour plus d’informations sur le partage de hubs de modèles privés entre comptes, consultez [Partage entre comptes pour les hubs de mannequins privés avec AWS Resource Access Manager](jumpstart-curated-hubs-ram.md).

Pour plus d’informations sur l’accession à un hub de modèles privé, consultez [Guide de l’utilisateur](jumpstart-curated-hubs-user-guide.md).

# Guide d'administration pour les hubs de mannequins privés sur Amazon SageMaker JumpStart
<a name="jumpstart-curated-hubs-admin-guide"></a>

Les administrateurs peuvent effectuer certaines actions liées à des hubs de modèles sélectionnés auxquels les utilisateurs de votre organisation peuvent accéder. Cela inclut la création, l’ajout, la suppression et la gestion des accès aux hubs privés. Cette page inclut également les informations concernant les régions AWS prises en charge pour les hubs privés organisés, ainsi que les prérequis pour utiliser ces derniers. 

## AWS Régions prises en charge
<a name="jumpstart-curated-hubs-admin-guide-regions"></a>

Des hubs privés sélectionnés sont actuellement généralement disponibles dans les régions AWS commerciales suivantes :
+ us-east-1
+ us-east-2
+ us-west-2
+ eu-west-1
+ eu-central-1
+ ap-northeast-1
+ ap-northeast-2
+ ap-south-1
+ ap-southeast-1
+ ap-southeast-2
+ il-central-1 (kit SDK uniquement)

Le nombre maximum de hubs autorisés par défaut dans une région est 50.

## Conditions préalables
<a name="jumpstart-curated-hubs-admin-guide-prerequisites"></a>

Pour pouvoir utiliser un hub privé organisé dans Studio, vous devez avoir rempli les prérequis suivants :
+ Un AWS compte avec accès administrateur
+ Un rôle Gestion des identités et des accès AWS (IAM) avec accès à Amazon Studio SageMaker 
+ Un domaine Amazon SageMaker AI JumpStart activé
+ Si vos utilisateurs essaient d'utiliser des modèles propriétaires, ils doivent être abonnés à ces modèles AWS sur Marketplace.
+ AWS les comptes qui déploient des modèles propriétaires doivent être abonnés à ces modèles AWS sur Marketplace.

Pour plus d’informations sur la façon de commencer à utiliser Studio, consultez [Amazon SageMaker Studio](studio-updated.md).

# Création d’un hub de modèle privé
<a name="jumpstart-curated-hubs-admin-guide-create"></a>

Suivez les étapes ci-dessous pour créer un hub privé afin de gérer le contrôle d'accès pour les modèles de JumpStart base préformés pour votre organisation. Vous devez installer le SDK SageMaker Python et configurer les autorisations IAM nécessaires avant de créer un hub de modèles.

**Création d’un hub privé**

1. Installez le SDK SageMaker Python et importez les packages Python nécessaires.

   ```
   # Install the SageMaker Python SDK
   !pip3 install sagemaker --force-reinstall --quiet
   
   # Import the necessary Python packages
   import boto3
   from sagemaker import Session
   from sagemaker.jumpstart.hub.hub import Hub
   ```

1. Initialisez une session SageMaker AI.

   ```
   sm_client = boto3.client('sagemaker')
   session = Session(sagemaker_client=sm_client)
   session.get_caller_identity_arn()
   ```

1. Configurez les détails de votre hub privé, tels que son nom interne ainsi que son nom d’affichage et sa description dans l’interface utilisateur.
**Note**  
Si vous ne spécifiez pas de nom de compartiment Amazon S3 lors de la création de votre hub, le service du SageMaker hub crée un nouveau compartiment en votre nom. Le nouveau compartiment a la structure de dénomination suivante : `sagemaker-hubs-REGION-ACCOUNT_ID`.

   ```
   HUB_NAME="Example-Hub"
   HUB_DISPLAY_NAME="Example Hub UI Name"
   HUB_DESCRIPTION="A description of the example private curated hub."
   REGION="us-west-2"
   ```

1. Vérifiez que votre rôle d’**administrateur** IAM dispose des autorisations Amazon S3 nécessaires pour créer un hub privé. Si ce n’est pas le cas, accédez à la page **Rôles** de la console IAM. Choisissez le rôle **Administrateur**, puis choisissez **Ajouter des autorisations** dans le panneau **Politiques d’autorisations** pour créer une politique en ligne avec les autorisations suivantes à l’aide de l’éditeur JSON :

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Action": [
                   "s3:ListBucket",
                   "s3:GetObject",
                   "s3:GetObjectTagging"
               ],
               "Resource": [
                   "arn:aws:s3:::jumpstart-cache-prod-REGION",
                   "arn:aws:s3:::jumpstart-cache-prod-REGION/*"
               ],
               "Effect": "Allow"
           }
       ]
   }
   ```

------

1. Créez un hub de modèles privé à l’aide de vos configurations de l’**étape 3** avec `hub.create()`. 

   ```
   hub = Hub(hub_name=HUB_NAME, sagemaker_session=session)
   
   try:
   # Create the private hub
     hub.create(
         description=HUB_DESCRIPTION,
         display_name=HUB_DISPLAY_NAME
     )
     print(f"Successfully created Hub with name {HUB_NAME} in {REGION}")
   # Check that no other hubs with this internal name exist
   except Exception as e:
     if "ResourceInUse" in str(e):
       print(f"A hub with the name {HUB_NAME} already exists in your account.")
     else:
       raise e
   ```

1. Vérifiez la configuration de votre nouveau hub privé ave la commande suivante `describe` :

   ```
   hub.describe()
   ```

# Ajout de modèles à un hub privé
<a name="jumpstart-curated-hubs-admin-guide-add-models"></a>

Après avoir créé un hub privé, vous pouvez ajouter les modèles d’une liste d’autorisations. Pour obtenir la liste complète des JumpStart modèles disponibles, consultez le [tableau des algorithmes intégrés avec modèles préentraînés](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html) dans la référence du SDK SageMaker Python.

1. Vous pouvez filtrer les modèles disponibles par programmation à l’aide de la méthode `hub.list_sagemaker_public_hub_models()`. Vous pouvez éventuellement filtrer par catégories telles que le cadre (`"framework == pytorch"`), par tâches telles que la classification d’images (`"task == ic"`), etc. Pour plus d’informations sur les filtres, consultez [https://github.com/aws/sagemaker-python-sdk/blob/master/src/sagemaker/jumpstart/notebook_utils.py](https://github.com/aws/sagemaker-python-sdk/blob/master/src/sagemaker/jumpstart/notebook_utils.py). La méthode de filtrage est facultative dans la méthode `hub.list_sagemaker_public_hub_models()`. 

   ```
   filter_value = "framework == meta"
   response = hub.list_sagemaker_public_hub_models(filter=filter_value)
   models = response["hub_content_summaries"]
   while response["next_token"]:
       response = hub.list_sagemaker_public_hub_models(filter=filter_value, next_token=response["next_token"])
       models.extend(response["hub_content_summaries"])
   
   print(models)
   ```

1. Vous pouvez ensuite ajouter les modèles filtrés en spécifiant l’ARN d’un modèle dans la méthode `hub.create_model_reference()`.

   ```
   for model in models:
       print(f"Adding {model.get('hub_content_name')} to Hub")
       hub.create_model_reference(model_arn=model.get("hub_content_arn"), model_name=model.get("hub_content_name"))
   ```

# Mettre à jour les ressources dans un hub privé
<a name="jumpstart-curated-hubs-update"></a>

Vous pouvez mettre à jour les ressources de votre hub privé pour modifier ses métadonnées. Les ressources que vous pouvez mettre à jour incluent des références de modèles à des SageMaker JumpStart modèles Amazon, des modèles personnalisés, des carnets de notes, des ensembles de données et. JsonDoc

Lorsque vous mettez à jour un modèle, un bloc-notes, des ensembles de données ou JsonDoc des ressources, vous pouvez mettre à jour la description du contenu, le nom d'affichage, les mots clés et le statut du support. Lorsque vous mettez à jour les références de JumpStart modèles vers des modèles, vous pouvez uniquement mettre à jour le champ en spécifiant la version minimale du modèle que vous souhaitez utiliser.
+ « Mettre à jour les ressources du modèle ou du bloc-notes » pour inclure DataSet/JsonDoc. Dans la commande CLI, DataSets/JsonDocs doit être ajouté à l' hub-content-typeargument.

Suivez la section spécifique à la ressource que vous souhaitez mettre à jour.

## Mettre à jour les ressources d’un modèle ou d’un carnet
<a name="jumpstart-curated-hubs-update-model-notebook"></a>

Pour mettre à jour un modèle ou une ressource de bloc-notes, utilisez l'[UpdateHubContent](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateHubContent.html)API.

Les champs de métadonnées valides que vous pouvez mettre à jour avec cette API sont les suivants :
+ `HubContentDescription` : description de la ressource.
+ `HubContentDisplayName` : nom d’affichage de la ressource.
+ `HubContentMarkdown` : description de la ressource, au format Markdown.
+ `HubContentSearchKeywords` : mots clés de la ressource pouvant faire l’objet d’une recherche.
+ `SupportStatus` : statut actuel de la ressource.

Dans votre demande, incluez une modification pour un ou plusieurs des champs précédents. Quand vous tentez de mettre à jour d’autres champs, tels que le type de contenu du hub, vous recevez un message d’erreur.

------
#### [ AWS SDK pour Python (Boto3) ]

L'exemple suivant montre comment vous pouvez utiliser le AWS SDK pour Python (Boto3) pour envoyer une [ UpdateHubContent](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateHubContent.html)demande.

**Note**  
La valeur `HubContentVersion` que vous spécifiez dans la demande signifie que les métadonnées de cette version spécifique sont mises à jour. Pour trouver toutes les versions disponibles du contenu de votre hub, vous pouvez utiliser l'[ ListHubContentVersions](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListHubContentVersions.html)API.

```
import boto3
sagemaker_client = boto3.Session(region_name=<AWS-region>).client("sagemaker")

sagemaker_client.update_hub_contents(
    HubName=<hub-name>,
    HubContentName=<resource-content-name>,
    HubContentType=<"Model"|"Notebook">,
    HubContentVersion='1.0.0', # specify the correct version that you want to update
    HubContentDescription=<updated-description-string>
)
```

------
#### [ AWS CLI ]

L'exemple suivant montre comment vous pouvez utiliser le AWS CLI pour envoyer une [ update-hub-content](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-hub-content.html)demande.

```
aws sagemaker update-hub-content \
--hub-name <hub-name> \
--hub-content-name <resource-content-name> \
--hub-content-type <"Model"|"Notebook"> \
--hub-content-version "1.0.0" \
--hub-content-description <updated-description-string>
```

------

## Mise à jour des références de modèle
<a name="jumpstart-curated-hubs-update-model-reference"></a>

Pour mettre à jour une référence de modèle vers un JumpStart modèle, utilisez l'[ UpdateHubContentReference](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateHubContentReference.html)API.

Vous ne pouvez mettre à jour le champ `MinVersion` que pour les références de modèles.

------
#### [ AWS SDK pour Python (Boto3) ]

L'exemple suivant montre comment vous pouvez utiliser le AWS SDK pour Python (Boto3) pour envoyer une [ UpdateHubContentReference](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateHubContentReference.html)demande.

```
import boto3
sagemaker_client = boto3.Session(region_name=<AWS-region>).client("sagemaker")

update_response = sagemaker_client.update_hub_content_reference(
    HubName=<hub-name>,
    HubContentName=<model-reference-content-name>,
    HubContentType='ModelReference',
    MinVersion='1.0.0'
)
```

------
#### [ AWS CLI ]

L'exemple suivant montre comment vous pouvez utiliser le AWS CLI pour envoyer une [ update-hub-content-reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/sagemaker/update-hub-content-reference.html)demande.

```
aws sagemaker update-hub-content-reference \
 --hub-name <hub-name> \
 --hub-content-name <model-reference-content-name> \
 --hub-content-type "ModelReference" \
 --min-version "1.0.0"
```

------

# Partage entre comptes pour les hubs de mannequins privés avec AWS Resource Access Manager
<a name="jumpstart-curated-hubs-ram"></a>

Après avoir créé un hub de modèles privé, vous pouvez partager le hub avec les comptes nécessaires à l'aide de AWS Resource Access Manager (AWS RAM). Pour plus d’informations sur la création d’un hub privé, consultez [Création d’un hub de modèle privé](jumpstart-curated-hubs-admin-guide-create.md). La page suivante fournit des informations détaillées sur les autorisations gérées liées aux hubs privés dans AWS RAM. Pour plus d'informations sur la création d'un partage de ressources au sein AWS RAM de[Configuration du partage de hubs entre comptes](jumpstart-curated-hubs-ram-setup.md).

## Autorisations gérées pour les hubs privés organisés
<a name="jumpstart-curated-hubs-ram-permissions"></a>

Les autorisations d’accès disponibles sont celles de lecture, de lecture et d’utilisation, ainsi que les autorisations d’accès complet. Le nom de l'autorisation, la description et la liste des informations spécifiques APIs disponibles pour chaque autorisation sont répertoriés ci-dessous :
+ Autorisation de lecture (`AWS RAMPermissionSageMaker AIHubRead`) : ce privilège autorise les comptes consommateurs de ressources à lire les contenus figurant dans les hubs partagés et à afficher les informations et les métadonnées. 
  + `DescribeHub` : extrait les informations relatives à un hub et à sa configuration
  + `DescribeHubContent` : extrait les informations d’un modèle disponible dans un hub spécifique
  + `ListHubContent` : répertorie tous les modèles disponibles dans un hub
  + `ListHubContentVersions` : répertorie la version de tous les modèles disponibles dans un hub
+ Autorisation de lecture et d’utilisation (`AWS RAMPermissionSageMaker AIHubReadAndUse`) : ce privilège autorise les comptes consommateurs de ressources à lire les contenus figurant dans les hubs partagés et à déployer les modèles disponibles à des fins d’inférence. 
  + `DescribeHub` : extrait les informations relatives à un hub et à sa configuration
  + `DescribeHubContent` : extrait les informations d’un modèle disponible dans un hub spécifique
  + `ListHubContent` : répertorie tous les modèles disponibles dans un hub
  + `ListHubContentVersions` : répertorie la version de tous les modèles disponibles dans un hub
  + `DeployHubModel` : permet de déployer les modèles de hub à poids ouvert disponibles à des fins d’inférence
+ Autorisation d’accès complet (`AWS RAMPermissionSageMaker AIHubFullAccessPolicy`) : ce privilège autorise les comptes consommateurs de ressources à lire les contenus figurant dans les hubs partagés, à ajouter et supprimer le contenu des hubs, et à déployer les modèles disponibles à des fins d’inférence. 
  + `DescribeHub` : extrait les informations relatives à un hub et à sa configuration
  + `DescribeHubContent` : extrait les informations d’un modèle disponible dans un hub spécifique
  + `ListHubContent` : répertorie tous les modèles disponibles dans un hub
  + `ListHubContentVersions` : répertorie la version de tous les modèles disponibles dans un hub
  + `ImportHubContent` : importe le contenu du hub 
  + `DeleteHubContent` : supprime le contenu du hub
  + `CreateHubContentReference`: crée une référence de contenu de hub qui partage un modèle entre le hub de **modèles publics** d' SageMaker IA et un hub privé 
  + `DeleteHubContentReference`: Supprimer une référence de contenu de hub qui partage un modèle du hub de **modèles publics SageMaker ** AI vers un hub privé 
  + `DeployHubModel` : permet de déployer les modèles de hub à poids ouvert disponibles à des fins d’inférence

Les autorisations `DeployHubModel` ne sont pas requises pour les modèles propriétaires.

# Configuration du partage de hubs entre comptes
<a name="jumpstart-curated-hubs-ram-setup"></a>

SageMaker utilise [AWS Resource Access Manager (AWS RAM)](https://docs.aws.amazon.com/ram/latest/userguide/what-is.html) pour vous aider à partager en toute sécurité vos hubs privés entre différents comptes. Configurez le partage de hub entre comptes en suivant les instructions suivantes ainsi que les instructions relatives au [partage de vos AWS ressources](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html#getting-started-sharing-create) du *guide de l'AWS RAM utilisateur*.

**Création d’un partage de ressources**

1. Sélectionnez **Créer un partage de ressources** via la [console AWS RAM](https://console.aws.amazon.com/ram/home).

1. Lorsque vous spécifiez les détails du partage des ressources, choisissez le type de ressource **SageMaker Hubs** et sélectionnez un autre hub privé que vous souhaitez partager. Lorsque vous partagez un hub avec un autre compte, l’ensemble de son contenu est également partagé implicitement. 

1. Associez des autorisations à votre partage de ressources. Pour plus d’informations sur les autorisations gérées, consultez [Autorisations gérées pour les hubs privés organisés](jumpstart-curated-hubs-ram.md#jumpstart-curated-hubs-ram-permissions).

1. Utilisez AWS compte IDs pour spécifier les comptes auxquels vous souhaitez accorder l'accès à vos ressources partagées.

1. Vérifiez la configuration de votre partage de ressources et sélectionnez **Create resource share** (Créer un partage de ressources). Les associations entre le partage de ressources et le principal peuvent prendre quelques minutes.

Pour plus d'informations, consultez la section [Partage de vos AWS ressources](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-sharing.html) dans le *guide de AWS Resource Access Manager l'utilisateur*.

Une fois que les associations entre le partage de ressources et le principal ont été définies, les comptes AWS spécifiés reçoivent une invitation à rejoindre le partage de ressources. Les AWS comptes doivent accepter l'invitation pour accéder à toutes les ressources partagées.

Pour plus d'informations sur l'acceptation d'une invitation au partage de ressources AWS RAM, consultez la section [Utilisation de AWS ressources partagées](https://docs.aws.amazon.com/ram/latest/userguide/getting-started-shared.html) dans le *guide de AWS Resource Access Manager l'utilisateur*.

# Suppression de modèles d’un hub privé
<a name="jumpstart-curated-hubs-admin-guide-delete-models"></a>

Vous pouvez supprimer des modèles d’un hub privé utilisé par votre organisation en spécifiant l’ARN du modèle dans la méthode `hub.delete_model_reference()`. Cela supprime l’accès au modèle depuis le hub privé.

```
hub.delete_model_reference(model-name)
```

# Restreindre l'accès JumpStart aux modèles sécurisés
<a name="jumpstart-curated-hubs-gated-model-access"></a>

Amazon SageMaker JumpStart fournit un accès à la fois à des modèles de fondation accessibles au public et à des modèles propriétaires. Certains modèles à accès contrôlé placés dans des compartiments Amazon S3 privés nécessitent que vous ayez accepté le CLUF (contrat de licence d’utilisateur final) du modèle pour y accéder. Pour de plus amples informations, veuillez consulter [Acceptation du CLUF avec le SDK SageMaker Python](jumpstart-foundation-models-choose.md#jumpstart-foundation-models-choose-eula-python-sdk).

Le comportement par défaut actuel est que si un utilisateur accepte le CLUF d’un modèle, il peut accéder au modèle et créer des tâches d’[entraînement de peaufinage](jumpstart-foundation-models-use-python-sdk-estimator-class.md). Toutefois, si vous êtes administrateur et que vous souhaitez restreindre l’accès de peaufinage à ces modèles à accès contrôlé, vous pouvez définir une politique qui refuse l’autorisation d’utiliser l’action `CreateTrainingJob` chaque fois que la demande concerne un modèle à accès contrôlé.

Voici un exemple de politique Gestion des identités et des accès AWS (IAM) qu'un administrateur peut ajouter au rôle IAM d'un utilisateur :

```
{
    "Effect": "Deny",
    "Action": "sagemaker:CreateTrainingJob",
    "Resource": "*",
    "Condition": {
        "Bool": {
            "sagemaker:DirectGatedModelAccess": "true"
        }
    }
}
```

Si vous souhaitez accorder aux utilisateurs l’accès à des modèles spécifiques sans fournir un accès illimité aux modèles à accès contrôlé, configurez un hub organisé et ajoutez-y les modèles spécifiques. Pour de plus amples informations, veuillez consulter [Hubs privés sélectionnés pour le contrôle d'accès aux modèles de fondation dans JumpStart](jumpstart-curated-hubs.md).

# Supprimer l'accès au hub **des modèles SageMaker publics**
<a name="jumpstart-curated-hubs-admin-guide-remove-public-hub"></a>

Outre l'ajout d'un hub privé organisé JumpStart dans Studio, vous pouvez également supprimer l'accès au hub des **modèles SageMaker publics** pour vos utilisateurs. Le hub de **modèles SageMaker publics** a accès à tous les modèles de JumpStart base disponibles. 

Si vous supprimez l'accès au hub des **modèles SageMaker publics** et qu'un utilisateur n'a accès qu'à un seul hub privé, l'utilisateur est dirigé directement vers ce hub privé lorsqu'il le souhaite **JumpStart**dans le volet de navigation de gauche de Studio. Si un utilisateur a accès à plusieurs hubs privés, il est redirigé vers une page de menu **Hubs** lorsqu'il le souhaite **JumpStart**dans le volet de navigation de gauche de Studio.

Supprimez l'accès au hub **des modèles SageMaker publics** pour vos utilisateurs en appliquant la politique intégrée suivante : 

**Note**  
Vous pouvez spécifier tout compartiment Amazon S3 supplémentaire auquel votre hub doit accéder dans la politique ci-dessous. N’oubliez pas de remplacer *`REGION`* par la région de votre hub.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Action": "s3:*",
            "Effect": "Deny",
            "NotResource": [
                "arn:aws:s3:::jumpstart-cache-prod-us-east-1/*.ipynb",
                "arn:aws:s3:::jumpstart-cache-prod-us-east-1/*eula*",
                "arn:aws:s3:::amzn-s3-demo-bucket/*"
            ]
        },
        {
            "Action": "sagemaker:*",
            "Effect": "Deny",
            "Resource": [
                "arn:aws:sagemaker:us-east-1:aws:hub/SageMakerPublicHub",
                "arn:aws:sagemaker:us-east-1:aws:hub-content/SageMakerPublicHub/*/*"
            ]
        }
    ]
}
```

------

# Suppression d’un hub privé
<a name="jumpstart-curated-hubs-admin-guide-delete"></a>

Vous pouvez supprimer un hub privé de votre compte administrateur. Avant de supprimer un hub privé, vous devez d’abord supprimer tout son contenu. Supprimez le contenu des hubs et les hubs à l’aide des commandes suivantes : 

```
# List the model references in the private hub
response = hub.list_models()
models = response["hub_content_summaries"]
while response["next_token"]:
    response = hub.list_models(next_token=response["next_token"])
    models.extend(response["hub_content_summaries"])

# Delete all model references in the hub
for model in models:
    hub.delete_model_reference(model_name=model.get('HubContentName'))

# Delete the private hub
hub.delete()
```

# Résolution des problèmes
<a name="jumpstart-curated-hubs-admin-guide-troubleshooting"></a>

Les sections suivantes fournissent des informations sur les problèmes d’autorisations IAM susceptibles de survenir lors de la création d’un hub de modèles privé, ainsi que des informations sur la façon de les résoudre.

**Erreur `ValidationException` lors de l’appel de l’opération `CreateModel` : Could not access model data**

Cette exception survient lorsque vous ne disposez pas des autorisations Amazon S3 appropriées configurées pour votre rôle d’**administrateur**. Pour plus d’informations sur les autorisations Amazon S3 nécessaires pour créer un hub privé, consultez l’**étape 3** dans [Création d’un hub de modèle privé](jumpstart-curated-hubs-admin-guide-create.md).

**Erreur `Access Denied` ou `Forbidden` lors de l’appel `create()`**

L'accès vous est refusé lors de la création d'un hub privé si vous ne disposez pas des autorisations appropriées pour accéder au compartiment Amazon S3 associé au hub de **modèles SageMaker publics**. Pour plus d’informations sur les autorisations Amazon S3 nécessaires pour créer un hub privé, consultez l’**étape 3** dans [Création d’un hub de modèle privé](jumpstart-curated-hubs-admin-guide-create.md).

# Guide de l’utilisateur
<a name="jumpstart-curated-hubs-user-guide"></a>

Les rubriques suivantes traitent de l'accès et de l'utilisation des modèles dans vos hubs de modèles SageMaker JumpStart sélectionnés par Amazon. Découvrez comment accéder à vos modèles de hub sélectionnés via l'interface Amazon SageMaker Studio ou par programmation avec le SDK Python SageMaker . Découvrez également comment optimiser les modèles dans des hub organisés pour les adapter à vos cas d’utilisation spécifiques et aux besoins de votre entreprise.

**Topics**
+ [Accédez à des hubs de modèles sélectionnés sur Amazon SageMaker JumpStart](jumpstart-curated-hubs-access-hubs.md)
+ [Peaufinage de modèles dans un hub organisé](jumpstart-curated-hubs-fine-tune.md)

# Accédez à des hubs de modèles sélectionnés sur Amazon SageMaker JumpStart
<a name="jumpstart-curated-hubs-access-hubs"></a>

Vous pouvez accéder à un hub de modèles privé via Studio ou via le SDK SageMaker Python.

## Accès à votre hub de modèles privé dans Studio
<a name="jumpstart-curated-hubs-user-guide-studio"></a>

**Important**  
Depuis le 30 novembre 2023, l'expérience Amazon SageMaker Studio précédente s'appelle désormais Amazon SageMaker Studio Classic. La section suivante est spécifique à l’utilisation de l’expérience Studio mise à jour. Pour en savoir plus sur l’utilisation de l’application Studio Classic, consultez [Amazon SageMaker Studio classique](studio.md).

Dans Amazon SageMaker Studio, ouvrez la page de JumpStart destination via la page d'**accueil** ou le menu **principal** sur le panneau de gauche. Cela ouvre la page **SageMaker JumpStart**d'accueil où vous pouvez explorer les hubs de modèles et rechercher des modèles.
+ Sur la page d'**accueil**, choisissez **JumpStart**dans le volet **Solutions prédéfinies et automatisées**. 
+ Dans le **menu** principal du panneau de gauche, accédez au **JumpStart**nœud.

Pour plus d'informations sur la prise en main d'Amazon SageMaker Studio, consultez[Amazon SageMaker Studio](studio-updated.md).

Depuis la page **SageMaker JumpStart**d'accueil de Studio, vous pouvez découvrir tous les hubs de modèles privés qui incluent des modèles autorisés pour votre organisation. Si vous n'avez accès qu'à un seul hub de modèles, la page de **SageMaker JumpStart**destination vous amène directement à ce hub. Si vous avez accès à plusieurs hubs, vous êtes redirigé vers la page **Hubs**. 

Pour plus d’informations sur le peaufinage, le déploiement et l’évaluation des modèles auxquels vous avez accès dans Studio, consultez [Utilisation de modèles de fondation dans Studio](jumpstart-foundation-models-use-studio-updated.md).

## Accédez à votre hub de modèles privé à l'aide du SDK SageMaker Python
<a name="jumpstart-curated-hubs-user-guide-sdk"></a>

Vous pouvez accéder à votre hub de modèles privé à l'aide du SDK SageMaker Python. L’accès pour lire, utiliser ou modifier un hub organisé est fourni par votre administrateur.

**Note**  
Si un hub est partagé entre plusieurs comptes, `HUB_NAME` doit correspondre à l’ARN du hub. Si un hub n’est pas partagé entre plusieurs comptes, `HUB_NAME` peut correspondre au nom du hub.

1. Installez le SDK SageMaker Python et importez les packages Python nécessaires.

   ```
   # Install the SageMaker Python SDK
       !pip3 install sagemaker --force-reinstall --quiet
       
       # Import the necessary Python packages
       import boto3
       from sagemaker import Session
       from sagemaker.jumpstart.hub.hub import Hub
       from sagemaker.jumpstart.model import JumpStartModel
       from sagemaker.jumpstart.estimator import JumpStartEstimator
   ```

1. Initialisez une session d' SageMaker IA et connectez-vous à votre hub privé à l'aide du nom du hub et de la région.

   ```
   # If a hub is shared across accounts, then the HUB_NAME must be the hub ARN
       HUB_NAME="Example-Hub-ARN" 
       REGION="us-west-2" 
       
       # Initialize a SageMaker session
       sm_client = boto3.client('sagemaker') 
       sm_runtime_client = boto3.client('sagemaker-runtime') 
       session = Session(sagemaker_client=sm_client, 
                           sagemaker_runtime_client=sm_runtime_client)
       
       # Initialize the private hub
       hub = Hub(hub_name=HUB_NAME, sagemaker_session=session)
   ```

1. Une fois connecté à un hub privé, vous pouvez répertorier tous les modèles qui y sont disponibles à l’aide des commandes suivantes :

   ```
   response = hub.list_models()
       models = response["hub_content_summaries"]
       while response["next_token"]:
           response = hub.list_models(next_token=response["next_token"])
           models.extend(response["hub_content_summaries"])
           
       print(models)
   ```

1. Vous pouvez obtenir plus d’informations sur un modèle spécifique en utilisant son nom avec la commande suivante :

   ```
   response = hub.describe_model(model_name="example-model")
       print(response)
   ```

Pour plus d'informations sur le réglage précis et le déploiement des modèles auxquels vous avez accès à l'aide du SDK SageMaker Python, consultez. [Utiliser des modèles de base avec le SageMaker Python SDK](jumpstart-foundation-models-use-python-sdk.md)

# Peaufinage de modèles dans un hub organisé
<a name="jumpstart-curated-hubs-fine-tune"></a>

Dans votre hub de modèles privé organisé, vous pouvez exécuter des tâches d’entraînement de peaufinage à l’aide de vos références de modèles. Les références de modèles indiquent un JumpStart modèle accessible au public dans le hub public d' SageMaker IA, mais vous pouvez affiner le modèle sur vos propres données pour votre cas d'utilisation spécifique. Une fois le travail de peaufinage effectué, vous avez accès aux poids du modèle que vous pouvez ensuite utiliser ou déployer sur un point de terminaison.

Vous pouvez affiner des modèles de hub sélectionnés en quelques lignes de code à l'aide du SDK SageMaker Python. Pour des informations plus générales sur le réglage précis des JumpStart modèles accessibles au public, voir[Modèles de fondation et hyperparamètres pour le peaufinage](jumpstart-foundation-models-fine-tuning.md).

## Conditions préalables
<a name="jumpstart-curated-hubs-fine-tune-prereqs"></a>

Pour affiner une référence de JumpStart modèle dans votre hub sélectionné, procédez comme suit :

1. Assurez-vous que l'`TrainHubModel`autorisation SageMaker AI est attachée au rôle IAM de votre utilisateur. Pour plus d’informations, consultez [Ajout et suppression d’autorisations basées sur l’identité IAM](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_manage-attach-detach.html) dans le *Guide de l’utilisateur AWS IAM*.

   Vous pouvez attacher l’exemple de politique suivant à votre rôle IAM :

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "VisualEditor0",
               "Effect": "Allow",
               "Action": "sagemaker:TrainHubModel",
               "Resource": "arn:aws:sagemaker:*:111122223333:hub/*"
           }
       ]
   }
   ```

------
**Note**  
Si votre hub organisé est partagé entre plusieurs comptes et que son contenu appartient à un autre compte, assurez-vous que votre `HubContent` (la ressource de référence du modèle) dispose d’une politique IAM basée sur les ressources, qui accorde également l’autorisation `TrainHubModel` au compte demandeur, comme illustré dans l’exemple suivant.  

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowCrossAccountSageMakerAccess",
               "Effect": "Allow",
               "Principal": {
                   "AWS": "arn:aws:iam::111122223333:root"
               },
               "Action": [
                   "sagemaker:TrainHubModel"
               ],
               "Resource": [
                   "arn:aws:sagemaker:*:111122223333:hub/*"
               ]
           }
       ]
   }
   ```

1. Disposez d'un hub privé organisé avec une référence de modèle à un JumpStart modèle que vous souhaitez peaufiner. Pour plus d’informations sur la création d’un hub privé, consultez [Création d’un hub de modèle privé](jumpstart-curated-hubs-admin-guide-create.md). Pour savoir comment ajouter des JumpStart modèles accessibles au public à votre hub privé, consultez[Ajout de modèles à un hub privé](jumpstart-curated-hubs-admin-guide-add-models.md).
**Note**  
Le JumpStart modèle que vous choisissez doit être paramétrable avec précision. Vous pouvez vérifier si un modèle peut être optimisé en consultant le [tableau des algorithmes intégrés aux modèles pré-entraînés](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html).

1. Disposez du jeu de données d’entraînement que vous souhaitez utiliser pour le peaufinage du modèle. Le jeu de données doit être dans le format d’entraînement approprié pour le modèle que vous souhaitez optimiser.

## Peaufinage d’une référence de modèle dans un hub organisé
<a name="jumpstart-curated-hubs-fine-tune-pysdk"></a>

La procédure suivante explique comment affiner une référence de modèle dans votre hub privé organisé à l'aide du SDK SageMaker Python.

1. Assurez-vous que la dernière version (au moins`2.242.0`) du SDK SageMaker Python est installée. Pour plus d'informations, consultez [Utiliser la version 2.x du SDK SageMaker Python](https://sagemaker.readthedocs.io/en/stable/v2.html).

   ```
   !pip install --upgrade sagemaker
   ```

1. Importez AWS SDK pour Python (Boto3) les modules dont vous aurez besoin à partir du SDK SageMaker Python.

   ```
   import boto3
   from sagemaker.jumpstart.estimator import JumpStartEstimator
   from sagemaker.session import Session
   ```

1. Initialisez une session Boto3, un client SageMaker AI et une session du SDK SageMaker Python.

   ```
   sagemaker_client = boto3.Session(region_name=<AWS-region>).client("sagemaker")
   sm_session = Session(sagemaker_client=sagemaker_client)
   ```

1. Créez un `JumpStartEstimator` et fournissez l'ID du JumpStart modèle, le nom de votre hub contenant la référence du modèle et votre session SDK SageMaker Python. Pour obtenir la liste des modèles IDs, consultez le [tableau des algorithmes intégrés avec des modèles préentraînés](https://sagemaker.readthedocs.io/en/stable/doc_utils/pretrainedmodels.html).

   Vous pouvez éventuellement spécifier les champs `instance_type` et `instance_count` lors de la création de l’estimateur. Si vous ne le faites pas, la tâche d’entraînement utilise le type et le nombre d’instances par défaut pour le modèle que vous utilisez.

   Facultatif : vous pouvez également spécifier le paramètre `output_path` sur l’emplacement Amazon S3 où vous souhaitez stocker les poids des modèles peaufinés. Si vous ne spécifiez pas le`output_path`, utilise un compartiment SageMaker AI Amazon S3 par défaut pour la région de votre compte, nommé au format suivant :`sagemaker-<region>-<account-id>`.

   ```
   estimator = JumpStartEstimator(
       model_id="meta-textgeneration-llama-3-2-1b",
       hub_name=<your-hub-name>,
       sagemaker_session=sm_session, # If you don't specify an existing session, a default one is created for you
       # Optional: specify your desired instance type and count for the training job
       # instance_type = "ml.g5.2xlarge"
       # instance_count = 1
       # Optional: specify a custom S3 location to store the fine-tuned model artifacts
       # output_path: "s3://<output-path-for-model-artifacts>"
   )
   ```

1. Créez un dictionnaire avec la clé `training`, dans lequel vous spécifiez l’emplacement de votre jeu de données de peaufinage. Cet exemple renvoie à un URI Amazon S3. Si vous avez d'autres considérations, telles que l'utilisation du mode local ou de plusieurs canaux de données d'entraînement, consultez [ JumpStartEstimator.fit ()](https://sagemaker.readthedocs.io/en/stable/api/training/estimators.html#sagemaker.jumpstart.estimator.JumpStartEstimator.fit) dans la documentation du SDK SageMaker Python pour plus d'informations.

   ```
   training_input = {
       "training": "s3://<your-fine-tuning-dataset>"
   }
   ```

1. Appelez la méthode `fit()` de l’estimateur, puis transmettez vos données d’entraînement et votre acceptation du CLUF (le cas échéant).
**Note**  
L’exemple suivant définit la valeur sur `accept_eula=False.` Vous devez la modifier sur `True` afin d’accepter le CLUF.

   ```
   estimator.fit(inputs=training_input, accept_eula=False)
   ```

Votre tâche de peaufinage devrait maintenant commencer.

Vous pouvez vérifier votre travail de peaufinage en consultant vos tâches de formation, soit dans la console d' SageMaker IA, soit à l'aide de l'[ListTrainingJobs](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_ListTrainingJobs.html)API.

Vous pouvez accéder à vos artefacts de modèle affinés sur l'Amazon S3 `output_path` spécifié dans l'`JumpStartEstimator`objet (soit le compartiment Amazon S3 SageMaker AI par défaut pour la région, soit un chemin Amazon S3 personnalisé que vous avez spécifié, le cas échéant).