Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
So führt Amazon SageMaker Processing Ihr Prozesscontainer-Image aus
Amazon SageMaker Processing führt Ihr Verarbeitungscontainer-Image auf ähnliche Weise wie den folgenden Befehl aus, wobei AppSpecification.ImageUri
es sich um den Amazon ECR-Image-URI handelt, den Sie in einem CreateProcessingJob
Vorgang angeben.
docker run [AppSpecification.ImageUri]
Mit diesem Befehl wird der im Docker-Image konfigurierte ENTRYPOINT
-Befehl ausgeführt.
Sie können auch den Eintrittspunktbefehl im Image überschreiben oder ihm Befehlszeilenargumente mit den Parametern AppSpecification.ContainerEntrypoint
und AppSpecification.ContainerArgument
in Ihrer CreateProcessingJob
-Anforderung übergeben. Durch die Angabe dieser Parameter wird Amazon SageMaker Processing so konfiguriert, dass der Container ähnlich wie der folgende Befehl ausgeführt wird.
docker run --entry-point [AppSpecification.ContainerEntrypoint] [AppSpecification.ImageUri] [AppSpecification.ContainerArguments]
Wenn Sie beispielsweise angeben, dass [python3, -v, /processing_script.py]
in Ihrer CreateProcessingJob
Anfrage sein und ContainerArguments
sein sein[data-format, csv]
, führt Amazon SageMaker Processing Ihren Container mit dem folgenden Befehl aus. ContainerEntrypoint
python3 -v /processing_script.py data-format csv
Beachten Sie beim Erstellen Ihres Verarbeitungscontainers die folgenden Details:
-
Amazon SageMaker Processing entscheidet je nach Exit-Code der Befehlsausführung, ob der Job abgeschlossen wird oder fehlschlägt. Ein Verarbeitungsauftrag wird ausgeführt, wenn alle Verarbeitungscontainer erfolgreich mit dem Beendigungscode 0 beendet werden, und schlägt fehl, wenn einer der Container mit einem Beendigungscode ungleich Null beendet wird.
-
Mit Amazon SageMaker Processing können Sie den Einstiegspunkt des Verarbeitungscontainers überschreiben und Befehlszeilenargumente festlegen, genau wie Sie es mit der Docker-API tun können. Docker-Images können die Eintrittspunkt und die Befehlszeilenargumente auch unter Verwendung des
ENTRYPOINT
und der CMD-Anweisungen konfigurieren. Die Art und Weise, wie die ParameterContainerEntrypoint
undContainerArgument
desCreateProcessingJob
den Eintrittspunkt und die Argumente eines Docker-Image konfigurieren, spiegelt wider, wie Docker den Eintrittspunkt und die Argumente über die Docker-API überschreibt:-
Wenn weder
ContainerEntrypoint
nochContainerArguments
angegeben werden, verwendet Processing den StandardENTRYPOINT
oder CMD im image. -
Wenn
ContainerEntrypoint
angegeben wird, aber nichtContainerArguments
, führt die Verarbeitung das Bild mit dem angegebenen Eintrittspunkt aus und ignoriertENTRYPOINT
und CMD im Bild. -
Wenn
ContainerArguments
, aber nichtContainerEntrypoint
angegeben wird, führt Processing das Abbild mit dem Standard-ENTRYPOINT
im Abbild und mit den angegebenen Argumenten aus. -
Wenn sowohl
ContainerEntrypoint
als auchContainerArguments
angegeben sind, führt die Verarbeitung das Bild mit dem angegebenen Eintrittspunkt und den Argumenten aus und ignoriertENTRYPOINT
und CMD im Bild.
-
-
Sie müssen die exec-Form der
ENTRYPOINT
-Anweisung in Ihrem Dockerfile verwenden (ENTRYPOINT
["executable", "param1", "param2"])
anstelle der Shell-Form (ENTRYPOINT
command param1 param2
). Dadurch kann Ihr Verarbeitungscontainer –SIGINT
undSIGKILL
-Signale empfangen, die von der Verarbeitung zum Stoppen von Verarbeitungsaufträgen über dieStopProcessingJob
-API verwendet werden. -
/opt/ml
und all seine Unterverzeichnisse sind von AI reserviert. SageMaker Wenn Sie Ihr Processing-Docker-Image erstellen, sollten Sie keine Daten, die für Ihren Processing-Container erforderlich sind, in diesen Verzeichnissen ablegen. -
Wenn Sie GPU-Geräte verwenden möchten, stellen Sie sicher, dass Ihre Container nvidia-docker-kompatibel sind. Fügen Sie nur das CUDA-Toolkit in die Container ein. Bündeln Sie NVIDIA-Treiber nicht mit dem Abbild. Mehr Informationen über nvidia-docker finden Sie unter NVIDIA/nvidia-docker
.