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.
Batch-Transformationen mit Inferenz-Pipelines
Um Inferenzen für einen gesamten Datensatz zu erhalten, führen Sie eine Batch-Transformation für ein trainiertes Modell aus. Zur Ausführung von Inferenzen für einen vollständigen Datensatz können Sie dasselbe Inferenz-Pipeline-Modell verwenden, das für einen Endpunkt zur Echtzeitverarbeitung in einem Stapelumwandlungsauftrag erstellt und bereitgestellt wurde. Für einen Stapeltransformationsauftrag in einer Pipeline werden die Eingaben von Amazon S3 heruntergeladen und in einer oder mehreren HTTP-Anfragen an ein Inferenz-Pipeline-Modell gesendet. Ein Beispiel, das zeigt, wie Daten für eine Batch-Transformation vorbereitet werden, finden Sie im Beispielnotizbuch Amazon SageMaker Multi-Model Endpoints using Linear
Anmerkung
Um benutzerdefinierte Docker-Images in einer Pipeline zu verwenden, die in Amazon SageMaker AI integrierte Algorithmen enthält, benötigen Sie eine Amazon Elastic Container Registry (ECR) -Richtlinie. Ihr Amazon ECR-Repository muss SageMaker KI die Erlaubnis erteilen, das Bild abzurufen. Weitere Informationen finden Sie unter Beheben von Problemen mit Amazon ECR-Berechtigungen für Inferenz-Pipelines.
Das folgende Beispiel zeigt, wie ein Transformationsjob mit dem Amazon SageMaker Python SDKmodel_name
handelt es sich um die Inferenz-Pipeline, die SparkML und XGBoost Modelle kombiniert (die in den vorherigen Beispielen erstellt wurden). Die von input_data_path
angegebene Amazon-S3-Position enthält die Eingabedaten im CSV-Format zum Herunterladen und Senden an das Spark ML-Modell. Nach Abschluss des Transformationsauftrags output_data_path
enthält der von angegebene Amazon S3 S3-Speicherort die vom XGBoost Modell zurückgegebenen Ausgabedaten im CSV-Format.
import sagemaker input_data_path = 's3://{}/{}/{}'.format(default_bucket, 'key', 'file_name') output_data_path = 's3://{}/{}'.format(default_bucket, 'key') transform_job = sagemaker.transformer.Transformer( model_name = model_name, instance_count = 1, instance_type = 'ml.m4.xlarge', strategy = 'SingleRecord', assemble_with = 'Line', output_path = output_data_path, base_transform_job_name='inference-pipelines-batch', sagemaker_session=sagemaker.Session(), accept = CONTENT_TYPE_CSV) transform_job.transform(data = input_data_path, content_type = CONTENT_TYPE_CSV, split_type = 'Line')