Utiliser un réseau personnalisé

Créez un déploiement de modèle avec l'option de réseau personnalisé.

La charge de travail est attachée à l'aide d'une carte VNIC secondaire à un VCN et à un sous-réseau gérés par le client. Le sous-réseau peut être configuré pour le trafic sortant vers l'Internet public au moyen d'une passerelle NAT/Internet.

Pour utiliser le trafic sortant personnalisé, vous devez ajouter une politique pour permettre au service de science des données d'accéder au sous-réseau :
allow service datascience to use virtual-network-family in compartment <subnet_compartment>

Pour le trafic sortant personnalisé, le sous-réseau doit avoir au moins 127 adresses IP disponibles.

Vous pouvez créer et exécuter des déploiements de modèle de réseau personnalisés à l'aide de la console, de la trousse SDK Python pour OCI, de l'interface de ligne de commande OCI ou de l'API du service de science des données.

    1. Utilisez la console pour vous connecter à une location avec les politiques nécessaires.
    2. Ouvrez le menu de navigation et sélectionnez Analyse et intelligence artificielle. Sous Apprentissage automatique, sélectionnez Science des données.
    3. Sélectionnez le compartiment qui contient le projet dans lequel vous voulez créer le déploiement de modèle.

      Tous les projets du compartiment sont listés.

    4. Sélectionnez le nom du projet.

      La page des détails du projet s'ouvre et répertorie les sessions de carnet.

    5. Sous Ressources, sélectionnez Déploiements de modèle.

      Une liste tabulaire des déploiements de modèle dans le projet s'affiche.

    6. Sélectionnez Créer un déploiement de modèle.
    7. (Facultatif) Entrez un nom unique pour le modèle (255 caractères au maximum). Si vous ne fournissez pas de nom, un nom est automatiquement généré.

      Par exemple modeldeployment20200108222435.

    8. (Facultatif) Entrez une description (limite de 400 caractères) pour le déploiement de modèle.
    9. (Facultatif) Sous Configuration par défaut, entrez une clé de variable d'environnement personnalisée et la valeur correspondante. Sélectionnez + Clé d'environnement personnalisée supplémentaire pour ajouter d'autres variables d'environnement.
    10. Dans la section Modèles, sélectionnez Sélectionner pour sélectionner un modèle actif à déployer dans le catalogue de modèles.
      1. Recherchez un modèle en utilisant le compartiment et le projet par défaut, ou en sélectionnant Utilisation de l'OCID et en recherchant le modèle en entrant son OCID.
      2. Sélectionnez le modèle.
      3. Sélectionnez Soumettre.
      Important

      Les artefacts de modèle qui dépassent 400 Go ne sont pas pris en charge pour le déploiement. Sélectionnez un artefact de modèle plus petit pour le déploiement.
    11. (Facultatif) Modifiez la forme du service de calcul en sélectionnant Modifier la forme. Suivez ensuite ces étapes dans le panneau Sélectionner le service de calcul.
      1. Sélectionner un type d'instance.
      2. Sélectionnez une série de formes.
      3. Sélectionnez une des formes de calcul prises en charge dans la série.
      4. Sélectionnez la forme qui convient le mieux à l'utilisation souhaitée de la ressource.

        Pour chaque OCPU, sélectionnez jusqu'à 64 Go de mémoire et un total maximal de 512 Go. La quantité minimale de mémoire autorisée est de 1 Go ou une valeur correspondant au nombre d'OCPU, selon la valeur la plus élevée.

      5. Si vous utilisez des machines virtuelles à capacité extensible, activez/désactivez Burstable.
        Dans Utilisation de référence par OCPU, sélectionnez le pourcentage d'OCPU que vous voulez généralement utiliser. Les valeurs prises en charge sont 12,5 % et 50 %.
      6. Sélectionnez Sélectionner une forme.
    12. Entrez le nombre d'instances sur lesquelles le déploiement réplique le modèle.
    13. Sélectionnez Réseau personnalisé pour configurer le type de réseau.

      Sélectionnez le VCN et le sous-réseau à utiliser pour la ressource (session de carnet ou tâche).

      Si vous ne voyez pas le VCN ou le sous-réseau que vous voulez utiliser, sélectionnez Changer de compartiment, puis sélectionnez le compartiment qui contient le VCN ou le sous-réseau.
      Note

      Le passage d'un réseau par défaut à un réseau personnalisé est autorisé. Si le réseau personnalisé est sélectionné, il ne peut pas être remplacé par le réseau par défaut.
    14. Sélectionnez l'une des options suivantes pour configurer le type de point d'extrémité :
      • Public endpoint : Accès aux données dans une instance gérée à partir d'un VCN externe.
      • Private endpoint : Point d'extrémité privé à utiliser pour le déploiement de modèle.
      Si vous avez sélectionné Private endpoint, sélectionnez Private Endpoint dans Point d'extrémité privé dans le service de science des données.

      Sélectionnez Changer de compartiment pour sélectionner le compartiment contenant le point d'extrémité privé.

    15. (Facultatif) Si vous configurez la journalisation des accès ou des prédictions, dans la section Journalisation, sélectionnez Sélectionner, puis suivez les étapes suivantes :
      1. Pour les journaux d'accès, sélectionner un compartiment, un groupe de journaux et un nom de journal.
      2. Pour les journaux de prédiction, sélectionner un compartiment, un groupe de journaux et un nom de journal.
      3. Sélectionnez Soumettre.
    16. (Facultatif) Sélectionnez Afficher les options avancées pour ajouter des marqueurs.
      1. (Facultatif) Sélectionnez le mode de service pour le déploiement de modèle, en tant que point d'extrémité HTTPS ou à l'aide d'un flux de service de diffusion en continu.
      2. (Facultatif) Sélectionnez la bande passante d'équilibrage de charge en Mbps ou utilisez la valeur par défaut de 10 Mbps.

        Conseils pour l'équilibrage de charge

        Si vous connaissez la taille commune des données utiles et la fréquence des demandes par seconde, vous pouvez utiliser la formule suivante pour évaluer la bande passante de l'équilibreur de charge dont vous avez besoin. Nous vous recommandons d'ajouter un supplément de 20 % pour prendre en compte les erreurs d'estimation et le trafic de pointe sporadique.

        (Taille des données utiles en Ko) * (Demandes estimées par seconde) * 8 / 1 024

        Par exemple, si les données utiles sont de 1 024 Ko et que vous estimez 120 demandes par seconde, la bande passante recommandée pour l'équilibreur de charge serait (1024 * 120 * 8 / 1024) * 1,2 = 1152 Mbps.

        N'oubliez pas que la taille maximale des données utiles prise en charge est de 10 Mo lors du traitement des données utiles d'image.

        Si la taille des données utiles de la demande est supérieure à la bande passante affectée de l'équilibreur de charge défini, la demande est rejetée avec un code de statut 429.

      3. (Facultatif) Sélectionnez Utiliser une image de conteneur personnalisée et entrez les informations suivantes :
        • Référentiel dans <tenancy> : Référentiel qui contient l'image personnalisée.

        • Image : Image personnalisée à utiliser dans le déploiement de modèle lors de l'exécution.

        • CMD : Commandes supplémentaires à exécuter au démarrage du conteneur. Ajoutez une instruction par zone de texte. Par exemple, si CMD est ["--host", "0.0.0.0"], transmettez --host dans une zone de texte et 0.0.0.0 dans une autre. N'utilisez pas de guillemets à la fin.

        • Point d'entrée : Un ou plusieurs fichiers de point d'entrée à exécuter au démarrage du conteneur. Par exemple /opt/script/entrypoint.sh. N'utilisez pas de guillemets à la fin.

        • Port du serveur : Port sur lequel s'exécute le serveur Web servant l'inférence. La valeur par défaut est 8080. Le port peut être n'importe quoi entre 1024 et 65535. N'utilisez pas les ports 24224, 8446, 8447.

        • Port de vérification de l'état : Port sur lequel le conteneur HEALTHCHECK écoute. Valeur par défaut du port du serveur. Le port peut être n'importe quoi entre 1024 et 65535. N'utilisez pas les ports 24224, 8446, 8447.

      4. (Facultatif) Dans la section Marqueurs, ajoutez un ou plusieurs marqueurs à <resourceType>. Si vous êtes autorisé à créer une ressource, vous disposez également des autorisations nécessaires pour appliquer des marqueurs de formulaire libre à cette ressource. Pour appliquer un marqueur défini, vous devez être autorisé à utiliser l'espace de noms de marqueur. Pour plus d'informations sur le marquage, voir Marqueurs de ressource. Si vous ne savez pas si vous devez appliquer des marqueurs, ignorez cette option ou demandez à un administrateur. Vous pouvez appliquer des marqueurs plus tard.
    17. Sélectionnez Créer.
  • Vous pouvez utiliser l'interface de ligne de commande OCI pour créer un déploiement de modèle comme dans cet exemple.

    1. Déployez le modèle avec :
      oci data-science model-deployment create \
      --compartment-id <MODEL_DEPLOYMENT_COMPARTMENT_OCID> \
      --model-deployment-configuration-details file://<MODEL_DEPLOYMENT_CONFIGURATION_FILE> \
      --project-id <PROJECT_OCID> \
      --category-log-details file://<OPTIONAL_LOGGING_CONFIGURATION_FILE> \
      --display-name <MODEL_DEPLOYMENT_NAME>
    2. Utilisez ce fichier de configuration JSON de déploiement de modèle :
      {
            "deploymentType": "SINGLE_MODEL",
            "modelConfigurationDetails": {
              "bandwidthMbps": <YOUR_BANDWIDTH_SELECTION>,
              "instanceConfiguration": {
                "subnetId": <YOUR_SUBNET_ID>,
                "instanceShapeName": "<YOUR_VM_SHAPE>"
              },
              "modelId": "<YOUR_MODEL_OCID>",
              "scalingPolicy": {
                  "instanceCount": <YOUR_INSTANCE_COUNT>,
                  "policyType": "FIXED_SIZE"
               }
           }
       }

      Si vous spécifiez une configuration d'environnement, vous devez inclure l'objet environmentConfigurationDetails comme dans cet exemple :

      
      {
        "modelDeploymentConfigurationDetails": {
          "deploymentType": "SINGLE_MODEL",
          "modelConfigurationDetails": {
            "modelId": "ocid1.datasciencemodel.oc1.iad........",
            "instanceConfiguration": {
              "subnetId": <YOUR_SUBNET_ID>,
              "instanceShapeName": "VM.Standard.E4.Flex",
              "modelDeploymentInstanceShapeConfigDetails": {
                "ocpus": 1,
                "memoryInGBs": 16
              }
            },
            "scalingPolicy": {
              "policyType": "FIXED_SIZE",
              "instanceCount": 1
            },
            "bandwidthMbps": 10
          },
          "environmentConfigurationDetails" : {
            "environmentConfigurationType": "OCIR_CONTAINER",
            "image": "iad.ocir.io/testtenancy/image_name:1.0.0",
            "entrypoint": [
              "python",
              "/opt/entrypoint.py"
            ],
            "serverPort": "5000",
            "healthCheckPort": "5000"
          },
          "streamConfigurationDetails": {
            "inputStreamIds": null,
            "outputStreamIds": null
          }
        }
      }
    3. (Facultatif) Utilisez ce fichier de configuration JSON de journalisation :
      {
          "access": {
            "logGroupId": "<YOUR_LOG_GROUP_OCID>",
            "logId": "<YOUR_LOG_OCID>"
          },
          "predict": {
            "logGroupId": "<YOUR_LOG_GROUP_OCID>",
            "logId": "<YOUR_LOG_OCID>"
          }
      }
    4. (Facultatif) Utilisez cette option pour utiliser un conteneur personnalisé :
      oci data-science model-deployment create \
      --compartment-id <MODEL_DEPLOYMENT_COMPARTMENT_OCID> \
      --model-deployment-configuration-details file://<MODEL_DEPLOYMENT_CONFIGURATION_FILE> \
      --project-id <PROJECT_OCID> \
      --category-log-details file://<OPTIONAL_LOGGING_CONFIGURATION_FILE> \
      --display-name <MODEL_DEPLOYMENT_NAME>
  • Utilisez l'opération CreateModelDeployment pour créer un déploiement de modèle avec un réseau personnalisé. Définissez l'ID sous-réseau comme décrit dans la documentation sur l'API Configuration d'instance.