Benutzerdefiniertes Netzwerk
Erstellen Sie ein Modell-Deployment in Data Science mit der benutzerdefinierten Networkingoption.
Die Workload wird mit einer sekundären VNIC an ein vom Kunden verwaltetes VCN und Subnetz angehängt. Das Subnetz kann für Egress-Traffic zum öffentlichen Internet über ein NAT-/Internetgateway konfiguriert werden.
Um benutzerdefinierten Egress zu verwenden, müssen Sie eine Policy hinzufügen, um Data Science Zugriff auf das Subnetz zu erteilen:
allow service datascience to use virtual-network-family in compartment <subnet_compartment>Für benutzerdefinierten Egress-Traffic muss das Subnetz über mindestens 127 IP-Adressen verfügen.
Sie können benutzerdefinierte Networkingmodell-Deployments mit der Konsole, dem OCI-Python-SDK, der OCI-CLI oder der Data Science-API erstellen und ausführen.
- Wählen Sie auf der Listenseite Projekte das Projekt aus, das die Modell-Deployments enthält, mit denen Sie arbeiten möchten. Wenn Sie Hilfe beim Suchen der Listenseite oder des Projekts benötigen, finden Sie weitere Informationen unter Projekte auflisten.
- Wählen Sie auf der Seite mit den Projektdetails Modell-Deployments aus.
- Wählen Sie Modell-Deployment erstellen aus.
-
Geben Sie auf der Seite Modell-Deployment erstellen die folgenden Informationen ein.
- Compartment
- Name (optional): Geben Sie einen eindeutigen Namen für das Modell-Deployment ein (maximal 255 Zeichen). Wenn Sie keinen Namen angeben, wird automatisch ein Name generiert. Beispiel:
modeldeployment20200108222435 - Beschreibung (optional): Geben Sie eine Beschreibung (max. 400 Zeichen) für das Modell-Deployment ein.
- Benutzerdefinierter Umgebungsvariablenschlüssel (optional): Geben Sie einen benutzerdefinierten Umgebungsvariablenschlüssel ein.
- Wert (optional): Geben Sie den Wert für den Schlüssel ein.
- Modelle: Wählen Sie Auswählen aus, um den Bereich Modelle auswählen zu öffnen, die entsprechende Option auszuwählen, und wählen Sie Weiterleiten aus, um den Bereich zu schließen.Wichtig
Modellartefakte, die mehr als 400 GB umfassen, werden für das Deployment nicht unterstützt. Wählen Sie ein kleineres Modellartefakt für das Deployment aus.- Einzelne Modelle: Suchen Sie das Modell mit Modell-Compartment auswählen (Compartment und Projekt angeben) oder OCID verwenden, und wählen Sie dann das Modell aus der Liste aus.
- Modellgruppen: Geben Sie Compartment und Projekt an, und wählen Sie die Modellgruppe aus der Liste aus.
- Ändern Sie die Compute-Ausprägung, indem Sie Ausprägung ändern auswählen. Führen Sie anschließend die folgenden Schritte im Bereich Compute-Ausprägung auswählen aus.
- Wählen Sie einen Instanztyp aus.
- Wählen Sie eine Ausprägungsreihe aus.
- Wählen Sie eine der unterstützten Compute-Ausprägungen in der Reihe aus. Wählen Sie die Ausprägung, die am besten zur gewünschten Verwendung der Ressource passt.
- Blenden Sie die ausgewählte Ausprägung ein, um OCPUs und Arbeitsspeicher zu konfigurieren.
- Anzahl OCPUs
- Arbeitsspeicher (GB): Wählen Sie für jede OCPU bis zu 64 GB Arbeitsspeicher und maximal 512 GB Arbeitsspeicher aus. Der zulässige Mindestarbeitsspeicher ist entweder 1 GB oder ein Wert, der mit der Anzahl der OCPUs übereinstimmt, je nachdem, welcher Wert größer ist.
- Burstfähige Ausprägung aktivieren: Wählen Sie diese Option aus, wenn Sie burstfähige VMs verwenden, und wählen Sie unter Baselineauslastung pro OCPU den Prozentsatz der OCPUs aus, den Sie normalerweise verwenden möchten. Die unterstützten Werte lauten 12,5% und 50%. (Bei Modell-Deployments wird nur der Wert von 50% unterstützt.)
- Wählen Sie Ausprägung auswählen aus.
- Anzahl der Instanzen: Geben Sie die Anzahl der Instanzen für das Modell-Deployment ein, auf denen das Modell repliziert werden soll.
- Autoscaling-Konfiguration (optional): Wählen Sie Autoscaling aktivieren aus, und geben Sie die folgenden Informationen ein.
- Mindestanzahl Instanzen
- Höchstanzahl von Instanzen
- Ruhephase in Sekunden
- Skalierungsmetriktyp
Um die benutzerdefinierte Skalierungsmetrikoption zu verwenden, wählen Sie Benutzerdefiniert aus, und geben Sie die Scale-in- und Scale-out-Abfragen an.
Wichtig
Fügen Sie den folgenden Text in jede MQL-Abfrage ein, um die Ressourcen-OCID zu referenzieren:{resourceId = "MODEL_DEPLOYMENT_OCID"} - Scale-in-Schwellenwert in Prozent
- Scale-out-Schwellenwert in Prozent
- Erweiterte Optionen (optional): Der Load Balancer wird automatisch skaliert. Setzen Sie den Wert der maximalen Bandbreite auf mehr als den minimalen Bandbreitenwert und nicht mehr als das Doppelte des minimalen Bandbreitenwerts.
- Scale-in-Instanzanzahl
- Scale-out-Instanzanzahl
- Netzwerkressourcen: Wählen Sie die folgende Option für benutzerdefiniertes Networking aus.
- Benutzerdefiniertes Netzwerk: Wählen sie das VCN und Subnetz (nach Compartment) aus, das Sie verwenden möchten.
Verwenden Sie für den Egress-Zugriff auf das öffentliche Internet ein privates Subnetz mit einer Route zu einem NAT-Gateway.
Hinweis
- Benutzerdefiniertes Networking muss verwendet werden, um einen Dateispeichermount zu verwenden.
- Das Wechseln von benutzerdefiniertem Networking zu verwaltetem Networking wird nach dem Erstellen nicht unterstützt.
- Wenn das Banner
The specified subnet is not accessible. Select a different subnet.angezeigt wird, erstellen Sie eine Policy, mit der Data Science benutzerdefiniertes Networking verwenden kann. Siehe Policys.
- Benutzerdefiniertes Netzwerk: Wählen sie das VCN und Subnetz (nach Compartment) aus, das Sie verwenden möchten.
- Endpunkttyp: Wählen Sie die entsprechende Option aus.
- Öffentlicher Endpunkt: Ermöglicht den Datenzugriff auf eine verwaltete Instanz von außerhalb eines virtuellen Cloud-Netzwerks (VCN).
- Privater Endpunkt: Gibt den privaten Endpunkt an, der für das Modell-Deployment verwendet werden soll. Deployments, die private Netzwerke oder private Endpunkte verwenden, können keinen serviceverwalteten öffentlichen Internetzugriff aktivieren.
- Compartment des privaten Endpunkts
- Privater Endpunkt
- Logging (optional): Wählen Sie Auswählen aus, um den Bereich Logging auswählen zu öffnen. Geben Sie die folgenden Informationen ein, und wählen Sie Weiterleiten aus, um den Bereich zu schließen.
- Wählen Sie für Zugriffslogs ein Compartment, eine Loggruppe und ein Logname aus.
- Wählen Sie für Vorhersagelogs ein Compartment, eine Loggruppe und ein Logname aus.
- Legen Sie Ihre BYOC-Umgebung fest (unter Benutzerdefiniertes Containerimage verwenden) (Optional): Wählen Sie Auswählen aus, um den Bereich BYOC-Umgebung festlegen zu öffnen, geben Sie die folgenden Informationen ein, und wählen Sie erneut Auswählen aus, um den Bereich zu schließen.
- Repository Compartment
- Repository: Geben Sie das Repository ein, das das benutzerdefinierte Image enthält.
- Image: Geben Sie das benutzerdefinierte Image ein, das zur Laufzeit verwendet werden soll.
- Digest: Geben Sie den Imagedigest ein. Beispiel:
sha256:<digest>. Der Digest muss mit dem genauen Image übereinstimmen, das Sie bereitstellen. - Entrypoint: Geben Sie eine oder mehrere Einstiegspunktdateien ein, die beim Start des Containers ausgeführt werden sollen, wie
/opt/script/entrypoint.sh. Verwenden Sie keine Anführungszeichen am Ende. - Serverport: Geben Sie den Port für den Inferenz-Webserver ein. Der Standardwert ist 8080. Gültiger Bereich: 1024-65535, außer 24224, 8446, 8447.
- Health-Check-Port: Geben Sie den Port für den Container-Health-Check ein. Der Standardwert ist der Serverport. Gültiger Bereich: 1024-65535, außer 24224, 8446, 8447.
- Deployment-Modus (unter Erweiterte Optionen) (Optional): Wählen Sie die Load Balancing-Bandbreite in Mbps aus, oder verwenden Sie den 10-Mbps-Standardwert.
Tipps für Load Balancing:
Wenn Sie die allgemeine Payload-Größe und die Häufigkeit der Anforderungen pro Sekunde wissen, können Sie mit der folgenden Formel die erforderliche Bandbreite des Load Balancers schätzen. Wir empfehlen, zusätzlich 20% hinzuzufügen, um Schätzungsfehler und sporadischen Spitzentraffic zu berücksichtigen.
(Payload-Größe in KB) * (Geschätzte Anforderungen pro Sekunde) * 8 / 1024
Beispiel: Wenn die Payload 1.024 KB beträgt und Sie 120 Anforderungen pro Sekunde schätzen, ist die empfohlene Load-Balancer-Bandbreite (1024 * 120 * 8 / 1024) * 1,2 = 1152 Mbps).
Beachten Sie, dass die maximal unterstützte Payload-Größe 10 MB beträgt, wenn Sie mit Image-Payloads arbeiten.
Wenn die Anforderungs-Payload-Größe die zugewiesene Bandbreite des definierten Load Balancers überschreitet, wird die Anforderung mit dem Statuscode 429 abgelehnt.
- Tags (unter Erweiterte Optionen) (optional): Fügen Sie dem Modell-Deployment Tags hinzu. Wenn Sie über Berechtigungen zum Erstellen von Ressourcen verfügt, sind Sie auch berechtigt: Freiformtags auf diese Ressource anwenden. Um ein definiertes Tag anzuwenden, müssen Sie über Berechtigungen zum Verwenden des Tag-Namespace verfügen. Weitere Informationen zu Tagging finden Sie unter Ressourcentags. Wenn Sie nicht sicher sind, ob Tags angewendet werden sollen, überspringen Sie diese Option, oder fragen Sie einen Administrator. Sie können Tags später anwenden.
- Klicken Sie auf Erstellen.
Mit der OCI-CLI können Sie ein Modell-Deployment wie in diesem Beispiel erstellen.
-
Stellen Sie das Modell wie folgt bereit:
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> -
Verwenden Sie diese JSON-Konfigurationsdatei für das Modell-Deployment:
{ "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" } } }Wenn Sie eine Umgebungskonfiguration angeben, müssen Sie das Objekt
environmentConfigurationDetailswie in diesem Beispiel aufnehmen:{ "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 } } }Hinweis
Das FeldimageSignatureIdist optional. - (Optional) Verwenden Sie diese JSON-Loggingkonfigurationsdatei:
{ "access": { "logGroupId": "<YOUR_LOG_GROUP_OCID>", "logId": "<YOUR_LOG_OCID>" }, "predict": { "logGroupId": "<YOUR_LOG_GROUP_OCID>", "logId": "<YOUR_LOG_OCID>" } } - (Optional) Verwenden Sie diese Option, um einen benutzerdefinierten Container zu verwenden:
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>
-
Stellen Sie das Modell wie folgt bereit:
Verwenden Sie den Vorgang CreateModelDeployment, um ein Modell-Deployment mit benutzerdefiniertem Networking zu erstellen. Legen Sie die Subnetz-ID wie in der API-Dokumentation zur Instanzkonfiguration beschrieben fest.