Mise en réseau personnalisée

Créez un déploiement de modèle dans Data Science avec l'option de mise en réseau personnalisée.

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

Pour utiliser la sortie personnalisée, vous devez ajouter une stratégie permettant à Data Science d'accéder au sous-réseau :

allow service datascience to use virtual-network-family in compartment <subnet_compartment>

Pour la sortie personnalisée, le sous-réseau doit disposer d'au moins 127 adresses IP.

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

    1. Sur la page de liste Projets, sélectionnez le projet contenant les déploiements de modèle que vous voulez utiliser. Si vous avez besoin d'aide pour trouver la page de liste ou le projet, reportez-vous à la rubrique Liste des projets.
    2. Sur la page de détails du projet, sélectionnez Déploiements de modèle.
    3. Sélectionnez Créer un déploiement de modèle.
    4. Sur la page Créer un déploiement de modèle, entrez les informations suivantes.
      • Compartiment
      • Nom (Facultatif) : entrez un nom unique pour le déploiement de modèle (limite de 255 caractères). Si vous n'indiquez pas de nom, un nom est automatiquement généré. Exemple : modeldeployment20200108222435
      • Description (facultatif) : entrez une description (limite de 400 caractères) pour le déploiement de modèle.
      • Clé de variable d'environnement personnalisée (facultatif) : entrez une clé de variable d'environnement personnalisée.
      • Valeur (facultatif) : entrez la valeur de la clé.
      • Modèles : sélectionnez Sélectionner pour ouvrir le panneau Sélectionner des modèles, sélectionnez l'option appropriée, puis Soumettre pour fermer le panneau.
        Important

        Les artefacts de modèle dépassant 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.
        • Modèle unique : recherchez le modèle avec Sélectionner un compartiment de modèle (spécifier un compartiment et un projet) ou Utiliser l'OCID, puis sélectionnez le modèle dans la liste.
        • Groupes de modèles : indiquez le compartiment et le projet, puis sélectionnez le groupe de modèles dans la liste.
      • Modifiez la forme de calcul en sélectionnant Modifier la forme. Ensuite, suivez ces étapes dans le panneau Sélectionner une forme de calcul.
        • Sélectionner un type d'instance.
        • Sélectionnez une série de formes.
        • Sélectionnez l'une des formes de calcul prises en charge de la série. Sélectionnez la forme qui convient Le mieux à l'utilisation de la ressource.
        • Développez la forme sélectionnée pour configurer les OCPU et la mémoire.
          • Nombre d'OCPU
          • Montant de mémoire (Go) : 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 1 Go ou une valeur correspondant au nombre d'OCPU, la valeur la plus élevée étant retenue.
          • Activer la forme éclatable : sélectionnez cette option si vous utilisez des machines virtuelles éclatables, puis, pour Utilisation de référence par OCPU, sélectionnez le pourcentage d'OCPU que vous souhaitez généralement utiliser. Les valeurs prises en charge sont 12,5 % et 50 %. (Pour les déploiements de modèle, seule la valeur de 50 % est prise en charge.)
        • Sélectionnez Sélectionner une forme.
      • Nombre d'instances : entrez le nombre d'instances sur lesquels répliquer le modèle pour le déploiement de modèle.
      • Configuration du redimensionnement automatique (facultatif) : sélectionnez Activer le redimensionnement automatique et entrez les informations suivantes.
        • Nombre minimal d'instances
        • Nombre maximal d'instances
        • Temps de refroidissement en secondes
        • Type de mesure de redimensionnement

          Pour utiliser l'option de mesure de redimensionnement personnalisé, sélectionnez Personnalisé, puis indiquez les requêtes de redimensionnement et d'augmentation.

          Important

          Incluez le texte suivant dans chaque requête MQL pour référencer l'OCID de ressource : {resourceId = "MODEL_DEPLOYMENT_OCID"}
        • Seuil de réduction en pourcentage
        • Seuil d'augmentation en pourcentage
        • Options avancées (facultatif) : redimensionnement automatique de l'équilibreur de charge. Définissez la valeur de bande passante maximale sur une valeur supérieure à la valeur de bande passante minimale et pas plus de deux fois la valeur de bande passante minimale.
          • Etape du nombre d'instances pour la réduction
          • Etape du nombre d'instances pour l'augmentation
      • Ressources réseau : sélectionnez l'option suivante pour les fonctions de réseau personnalisées.
        • Mise en réseau personnalisée : sélectionnez le VCN et le sous-réseau (par compartiment) à utiliser.

          Pour l'accès sortant au réseau Internet public, utilisez un sous-réseau privé doté d'un routage vers une passerelle NAT.

          Remarque

          • La mise en réseau personnalisée doit être utilisée pour utiliser un montage de stockage de fichiers.
          • Le passage d'un réseau personnalisé à un réseau géré n'est pas pris en charge après sa création.
          • Si la bannière The specified subnet is not accessible. Select a different subnet. apparaît, créez une stratégie qui permet à Data Science d'utiliser des fonctions de réseau personnalisées. Reportez-vous à Stratégies.
      • Type d'adresse : sélectionnez l'option appropriée.
        • Adresse publique : permet d'accéder aux données d'une instance gérée à partir de l'extérieur d'un réseau cloud virtuel (VCN).
        • Adresse privée : indique l'adresse privée à utiliser pour le déploiement de modèle. Les déploiements qui utilisent des réseaux privés ou des adresses privées ne peuvent pas activer l'accès Internet public géré par le service.
          • Compartiment de l'adresse privée
          • Adresse privée
      • Journalisation (facultatif) : sélectionnez Sélectionner pour ouvrir le panneau Sélectionner la journalisation, entrez les informations suivantes, puis sélectionnez Soumettre pour fermer le panneau.
        Remarque

        La journalisation nécessite un accès configuré ou une journalisation de prédiction.
        • Pour les journaux d'accès, sélectionnez un compartiment, un groupe de journaux et le nom de journal.
        • Pour les journaux de prédiction, sélectionnez un compartiment, un groupe de journaux et le nom de journal.
      • Définir votre environnement BYOC (sous Utiliser une image de conteneur personnalisée) (facultatif) : sélectionnez Sélectionner pour ouvrir le panneau Définir votre environnement BYOC, entrez les informations suivantes et sélectionnez à nouveau Sélectionner pour fermer le panneau.
        • Compartiment de référentiel
        • Référentiel : entrez le référentiel qui contient l'image personnalisée.
        • Image : entrez l'image personnalisée à utiliser lors de l'exécution.
        • Digest : entrez la synthèse de l'image. Par exemple : sha256:<digest>. La synthèse doit correspondre à l'image exacte que vous déployez.
        • Point d'entrée : entrez 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 de serveur : entrez le port du serveur Web d'inférence. La valeur par défaut est 8080. Plage valide : 1024–65535, sauf 24224, 8446, 8447.
        • Port de vérification de l'état : entrez le port de la vérification de l'état du conteneur. La valeur par défaut est le port du serveur. Plage valide : 1024–65535, sauf 24224, 8446, 8447.
      • Mode de déploiement (sous Options avancées) (facultatif) : sélectionnez la bande passante d'équilibrage de charge en Mbps ou utilisez la valeur par défaut 10 Mbps.

        Conseils à propos de l'équilibrage de charge :

        Si vous connaissez la taille courante de la charge utile et la fréquence des demandes par seconde, vous pouvez appliquer la formule suivante pour estimer la bande passante d'équilibreur de charge dont vous avez besoin. Nous vous recommandons d'ajouter 20 % de marge pour les erreurs d'estimation et le trafic de pointe sporadique.

        (Taille de la charge utile en ko) * (Demandes estimées par seconde) * 8 / 1 024

        Par exemple, si la charge utile est de 1 024 ko et que vous estimez 120 demandes par seconde, la bande passante d'équilibreur de charge recommandée serait (1024 * 120 * 8 / 1024) * 1,2 = 1152 Mbps.

        N'oubliez pas que la taille maximale de charge utile prise en charge est de 10 Mo pour les charges utiles des images.

        Si la taille de charge utile de demande est supérieure à la bande passante allouée de l'équilibreur de charge défini, la demande est rejetée avec le code de statut 429.

      • Balises (sous Options avancées) (facultatif) : ajoutez des balises au déploiement de modèle. Si vous disposez des droits d'accès nécessaires pour créer une ressource, vous disposez également de droits d'accès permettant d'appliquer des balises à format libre à cette ressource. Pour appliquer une balise defined, vous devez disposer des droits d'accès permettant d'utiliser l'espace de noms de balise. Pour plus d'informations sur le balisage, reportez-vous à Balises de ressource. Si vous n'êtes pas certain d'appliquer des balises, ignorez cette option ou demandez à un administrateur. Vous pouvez appliquer des balises ultérieurement.
    5. 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 :
      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 le fichier de configuration JSON de déploiement de modèle suivant :
      {
            "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 indiquez 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",
            "imageDigest": "sha256:a9c8468cb671929aec7ad947b9dccd6fe8e6d77f7bcecfe2e10e1c935a88c2a5",
            "imageSignatureId": "ocid1.containerimagesignature.oc1.iad.0.ociodscprod.aaaaaaaavkjvrldo4etdpdas3o5vuom3t6anoixneey737cr57if7jhkh6nq",
            "entrypoint": [
              "python",
              "/opt/entrypoint.py"
            ],
            "serverPort": "5000",
            "healthCheckPort": "5000"
          },
          "streamConfigurationDetails": {
            "inputStreamIds": null,
            "outputStreamIds": null
          }
        }
      }
      Remarque

      Le champ imageSignatureId est facultatif.
    3. (Facultatif) Utilisez le fichier de configuration JSON de journalisation suivant :
      {
          "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 des fonctions de réseau personnalisées. Définissez l'ID de sous-réseau comme décrit dans la documentation de l'API Instance Configuration.