SageMaker / Client / update_model_package

update_model_package#

SageMaker.Client.update_model_package(**kwargs)#

Updates a versioned model.

See also: AWS API Documentation

Request Syntax

response = client.update_model_package(
    ModelPackageArn='string',
    ModelApprovalStatus='Approved'|'Rejected'|'PendingManualApproval',
    ApprovalDescription='string',
    CustomerMetadataProperties={
        'string': 'string'
    },
    CustomerMetadataPropertiesToRemove=[
        'string',
    ],
    AdditionalInferenceSpecificationsToAdd=[
        {
            'Name': 'string',
            'Description': 'string',
            'Containers': [
                {
                    'ContainerHostname': 'string',
                    'Image': 'string',
                    'ImageDigest': 'string',
                    'ModelDataUrl': 'string',
                    'ModelDataSource': {
                        'S3DataSource': {
                            'S3Uri': 'string',
                            'S3DataType': 'S3Prefix'|'S3Object',
                            'CompressionType': 'None'|'Gzip',
                            'ModelAccessConfig': {
                                'AcceptEula': True|False
                            },
                            'HubAccessConfig': {
                                'HubContentArn': 'string'
                            },
                            'ManifestS3Uri': 'string'
                        }
                    },
                    'ProductId': 'string',
                    'Environment': {
                        'string': 'string'
                    },
                    'ModelInput': {
                        'DataInputConfig': 'string'
                    },
                    'Framework': 'string',
                    'FrameworkVersion': 'string',
                    'NearestModelName': 'string',
                    'AdditionalS3DataSource': {
                        'S3DataType': 'S3Object'|'S3Prefix',
                        'S3Uri': 'string',
                        'CompressionType': 'None'|'Gzip'
                    }
                },
            ],
            'SupportedTransformInstanceTypes': [
                'ml.m4.xlarge'|'ml.m4.2xlarge'|'ml.m4.4xlarge'|'ml.m4.10xlarge'|'ml.m4.16xlarge'|'ml.c4.xlarge'|'ml.c4.2xlarge'|'ml.c4.4xlarge'|'ml.c4.8xlarge'|'ml.p2.xlarge'|'ml.p2.8xlarge'|'ml.p2.16xlarge'|'ml.p3.2xlarge'|'ml.p3.8xlarge'|'ml.p3.16xlarge'|'ml.c5.xlarge'|'ml.c5.2xlarge'|'ml.c5.4xlarge'|'ml.c5.9xlarge'|'ml.c5.18xlarge'|'ml.m5.large'|'ml.m5.xlarge'|'ml.m5.2xlarge'|'ml.m5.4xlarge'|'ml.m5.12xlarge'|'ml.m5.24xlarge'|'ml.m6i.large'|'ml.m6i.xlarge'|'ml.m6i.2xlarge'|'ml.m6i.4xlarge'|'ml.m6i.8xlarge'|'ml.m6i.12xlarge'|'ml.m6i.16xlarge'|'ml.m6i.24xlarge'|'ml.m6i.32xlarge'|'ml.c6i.large'|'ml.c6i.xlarge'|'ml.c6i.2xlarge'|'ml.c6i.4xlarge'|'ml.c6i.8xlarge'|'ml.c6i.12xlarge'|'ml.c6i.16xlarge'|'ml.c6i.24xlarge'|'ml.c6i.32xlarge'|'ml.r6i.large'|'ml.r6i.xlarge'|'ml.r6i.2xlarge'|'ml.r6i.4xlarge'|'ml.r6i.8xlarge'|'ml.r6i.12xlarge'|'ml.r6i.16xlarge'|'ml.r6i.24xlarge'|'ml.r6i.32xlarge'|'ml.m7i.large'|'ml.m7i.xlarge'|'ml.m7i.2xlarge'|'ml.m7i.4xlarge'|'ml.m7i.8xlarge'|'ml.m7i.12xlarge'|'ml.m7i.16xlarge'|'ml.m7i.24xlarge'|'ml.m7i.48xlarge'|'ml.c7i.large'|'ml.c7i.xlarge'|'ml.c7i.2xlarge'|'ml.c7i.4xlarge'|'ml.c7i.8xlarge'|'ml.c7i.12xlarge'|'ml.c7i.16xlarge'|'ml.c7i.24xlarge'|'ml.c7i.48xlarge'|'ml.r7i.large'|'ml.r7i.xlarge'|'ml.r7i.2xlarge'|'ml.r7i.4xlarge'|'ml.r7i.8xlarge'|'ml.r7i.12xlarge'|'ml.r7i.16xlarge'|'ml.r7i.24xlarge'|'ml.r7i.48xlarge'|'ml.g4dn.xlarge'|'ml.g4dn.2xlarge'|'ml.g4dn.4xlarge'|'ml.g4dn.8xlarge'|'ml.g4dn.12xlarge'|'ml.g4dn.16xlarge'|'ml.g5.xlarge'|'ml.g5.2xlarge'|'ml.g5.4xlarge'|'ml.g5.8xlarge'|'ml.g5.12xlarge'|'ml.g5.16xlarge'|'ml.g5.24xlarge'|'ml.g5.48xlarge',
            ],
            'SupportedRealtimeInferenceInstanceTypes': [
                'ml.t2.medium'|'ml.t2.large'|'ml.t2.xlarge'|'ml.t2.2xlarge'|'ml.m4.xlarge'|'ml.m4.2xlarge'|'ml.m4.4xlarge'|'ml.m4.10xlarge'|'ml.m4.16xlarge'|'ml.m5.large'|'ml.m5.xlarge'|'ml.m5.2xlarge'|'ml.m5.4xlarge'|'ml.m5.12xlarge'|'ml.m5.24xlarge'|'ml.m5d.large'|'ml.m5d.xlarge'|'ml.m5d.2xlarge'|'ml.m5d.4xlarge'|'ml.m5d.12xlarge'|'ml.m5d.24xlarge'|'ml.c4.large'|'ml.c4.xlarge'|'ml.c4.2xlarge'|'ml.c4.4xlarge'|'ml.c4.8xlarge'|'ml.p2.xlarge'|'ml.p2.8xlarge'|'ml.p2.16xlarge'|'ml.p3.2xlarge'|'ml.p3.8xlarge'|'ml.p3.16xlarge'|'ml.c5.large'|'ml.c5.xlarge'|'ml.c5.2xlarge'|'ml.c5.4xlarge'|'ml.c5.9xlarge'|'ml.c5.18xlarge'|'ml.c5d.large'|'ml.c5d.xlarge'|'ml.c5d.2xlarge'|'ml.c5d.4xlarge'|'ml.c5d.9xlarge'|'ml.c5d.18xlarge'|'ml.g4dn.xlarge'|'ml.g4dn.2xlarge'|'ml.g4dn.4xlarge'|'ml.g4dn.8xlarge'|'ml.g4dn.12xlarge'|'ml.g4dn.16xlarge'|'ml.r5.large'|'ml.r5.xlarge'|'ml.r5.2xlarge'|'ml.r5.4xlarge'|'ml.r5.12xlarge'|'ml.r5.24xlarge'|'ml.r5d.large'|'ml.r5d.xlarge'|'ml.r5d.2xlarge'|'ml.r5d.4xlarge'|'ml.r5d.12xlarge'|'ml.r5d.24xlarge'|'ml.inf1.xlarge'|'ml.inf1.2xlarge'|'ml.inf1.6xlarge'|'ml.inf1.24xlarge'|'ml.dl1.24xlarge'|'ml.c6i.large'|'ml.c6i.xlarge'|'ml.c6i.2xlarge'|'ml.c6i.4xlarge'|'ml.c6i.8xlarge'|'ml.c6i.12xlarge'|'ml.c6i.16xlarge'|'ml.c6i.24xlarge'|'ml.c6i.32xlarge'|'ml.g5.xlarge'|'ml.g5.2xlarge'|'ml.g5.4xlarge'|'ml.g5.8xlarge'|'ml.g5.12xlarge'|'ml.g5.16xlarge'|'ml.g5.24xlarge'|'ml.g5.48xlarge'|'ml.g6.xlarge'|'ml.g6.2xlarge'|'ml.g6.4xlarge'|'ml.g6.8xlarge'|'ml.g6.12xlarge'|'ml.g6.16xlarge'|'ml.g6.24xlarge'|'ml.g6.48xlarge'|'ml.p4d.24xlarge'|'ml.c7g.large'|'ml.c7g.xlarge'|'ml.c7g.2xlarge'|'ml.c7g.4xlarge'|'ml.c7g.8xlarge'|'ml.c7g.12xlarge'|'ml.c7g.16xlarge'|'ml.m6g.large'|'ml.m6g.xlarge'|'ml.m6g.2xlarge'|'ml.m6g.4xlarge'|'ml.m6g.8xlarge'|'ml.m6g.12xlarge'|'ml.m6g.16xlarge'|'ml.m6gd.large'|'ml.m6gd.xlarge'|'ml.m6gd.2xlarge'|'ml.m6gd.4xlarge'|'ml.m6gd.8xlarge'|'ml.m6gd.12xlarge'|'ml.m6gd.16xlarge'|'ml.c6g.large'|'ml.c6g.xlarge'|'ml.c6g.2xlarge'|'ml.c6g.4xlarge'|'ml.c6g.8xlarge'|'ml.c6g.12xlarge'|'ml.c6g.16xlarge'|'ml.c6gd.large'|'ml.c6gd.xlarge'|'ml.c6gd.2xlarge'|'ml.c6gd.4xlarge'|'ml.c6gd.8xlarge'|'ml.c6gd.12xlarge'|'ml.c6gd.16xlarge'|'ml.c6gn.large'|'ml.c6gn.xlarge'|'ml.c6gn.2xlarge'|'ml.c6gn.4xlarge'|'ml.c6gn.8xlarge'|'ml.c6gn.12xlarge'|'ml.c6gn.16xlarge'|'ml.r6g.large'|'ml.r6g.xlarge'|'ml.r6g.2xlarge'|'ml.r6g.4xlarge'|'ml.r6g.8xlarge'|'ml.r6g.12xlarge'|'ml.r6g.16xlarge'|'ml.r6gd.large'|'ml.r6gd.xlarge'|'ml.r6gd.2xlarge'|'ml.r6gd.4xlarge'|'ml.r6gd.8xlarge'|'ml.r6gd.12xlarge'|'ml.r6gd.16xlarge'|'ml.p4de.24xlarge'|'ml.trn1.2xlarge'|'ml.trn1.32xlarge'|'ml.trn1n.32xlarge'|'ml.inf2.xlarge'|'ml.inf2.8xlarge'|'ml.inf2.24xlarge'|'ml.inf2.48xlarge'|'ml.p5.48xlarge'|'ml.m7i.large'|'ml.m7i.xlarge'|'ml.m7i.2xlarge'|'ml.m7i.4xlarge'|'ml.m7i.8xlarge'|'ml.m7i.12xlarge'|'ml.m7i.16xlarge'|'ml.m7i.24xlarge'|'ml.m7i.48xlarge'|'ml.c7i.large'|'ml.c7i.xlarge'|'ml.c7i.2xlarge'|'ml.c7i.4xlarge'|'ml.c7i.8xlarge'|'ml.c7i.12xlarge'|'ml.c7i.16xlarge'|'ml.c7i.24xlarge'|'ml.c7i.48xlarge'|'ml.r7i.large'|'ml.r7i.xlarge'|'ml.r7i.2xlarge'|'ml.r7i.4xlarge'|'ml.r7i.8xlarge'|'ml.r7i.12xlarge'|'ml.r7i.16xlarge'|'ml.r7i.24xlarge'|'ml.r7i.48xlarge',
            ],
            'SupportedContentTypes': [
                'string',
            ],
            'SupportedResponseMIMETypes': [
                'string',
            ]
        },
    ],
    InferenceSpecification={
        'Containers': [
            {
                'ContainerHostname': 'string',
                'Image': 'string',
                'ImageDigest': 'string',
                'ModelDataUrl': 'string',
                'ModelDataSource': {
                    'S3DataSource': {
                        'S3Uri': 'string',
                        'S3DataType': 'S3Prefix'|'S3Object',
                        'CompressionType': 'None'|'Gzip',
                        'ModelAccessConfig': {
                            'AcceptEula': True|False
                        },
                        'HubAccessConfig': {
                            'HubContentArn': 'string'
                        },
                        'ManifestS3Uri': 'string'
                    }
                },
                'ProductId': 'string',
                'Environment': {
                    'string': 'string'
                },
                'ModelInput': {
                    'DataInputConfig': 'string'
                },
                'Framework': 'string',
                'FrameworkVersion': 'string',
                'NearestModelName': 'string',
                'AdditionalS3DataSource': {
                    'S3DataType': 'S3Object'|'S3Prefix',
                    'S3Uri': 'string',
                    'CompressionType': 'None'|'Gzip'
                }
            },
        ],
        'SupportedTransformInstanceTypes': [
            'ml.m4.xlarge'|'ml.m4.2xlarge'|'ml.m4.4xlarge'|'ml.m4.10xlarge'|'ml.m4.16xlarge'|'ml.c4.xlarge'|'ml.c4.2xlarge'|'ml.c4.4xlarge'|'ml.c4.8xlarge'|'ml.p2.xlarge'|'ml.p2.8xlarge'|'ml.p2.16xlarge'|'ml.p3.2xlarge'|'ml.p3.8xlarge'|'ml.p3.16xlarge'|'ml.c5.xlarge'|'ml.c5.2xlarge'|'ml.c5.4xlarge'|'ml.c5.9xlarge'|'ml.c5.18xlarge'|'ml.m5.large'|'ml.m5.xlarge'|'ml.m5.2xlarge'|'ml.m5.4xlarge'|'ml.m5.12xlarge'|'ml.m5.24xlarge'|'ml.m6i.large'|'ml.m6i.xlarge'|'ml.m6i.2xlarge'|'ml.m6i.4xlarge'|'ml.m6i.8xlarge'|'ml.m6i.12xlarge'|'ml.m6i.16xlarge'|'ml.m6i.24xlarge'|'ml.m6i.32xlarge'|'ml.c6i.large'|'ml.c6i.xlarge'|'ml.c6i.2xlarge'|'ml.c6i.4xlarge'|'ml.c6i.8xlarge'|'ml.c6i.12xlarge'|'ml.c6i.16xlarge'|'ml.c6i.24xlarge'|'ml.c6i.32xlarge'|'ml.r6i.large'|'ml.r6i.xlarge'|'ml.r6i.2xlarge'|'ml.r6i.4xlarge'|'ml.r6i.8xlarge'|'ml.r6i.12xlarge'|'ml.r6i.16xlarge'|'ml.r6i.24xlarge'|'ml.r6i.32xlarge'|'ml.m7i.large'|'ml.m7i.xlarge'|'ml.m7i.2xlarge'|'ml.m7i.4xlarge'|'ml.m7i.8xlarge'|'ml.m7i.12xlarge'|'ml.m7i.16xlarge'|'ml.m7i.24xlarge'|'ml.m7i.48xlarge'|'ml.c7i.large'|'ml.c7i.xlarge'|'ml.c7i.2xlarge'|'ml.c7i.4xlarge'|'ml.c7i.8xlarge'|'ml.c7i.12xlarge'|'ml.c7i.16xlarge'|'ml.c7i.24xlarge'|'ml.c7i.48xlarge'|'ml.r7i.large'|'ml.r7i.xlarge'|'ml.r7i.2xlarge'|'ml.r7i.4xlarge'|'ml.r7i.8xlarge'|'ml.r7i.12xlarge'|'ml.r7i.16xlarge'|'ml.r7i.24xlarge'|'ml.r7i.48xlarge'|'ml.g4dn.xlarge'|'ml.g4dn.2xlarge'|'ml.g4dn.4xlarge'|'ml.g4dn.8xlarge'|'ml.g4dn.12xlarge'|'ml.g4dn.16xlarge'|'ml.g5.xlarge'|'ml.g5.2xlarge'|'ml.g5.4xlarge'|'ml.g5.8xlarge'|'ml.g5.12xlarge'|'ml.g5.16xlarge'|'ml.g5.24xlarge'|'ml.g5.48xlarge',
        ],
        'SupportedRealtimeInferenceInstanceTypes': [
            'ml.t2.medium'|'ml.t2.large'|'ml.t2.xlarge'|'ml.t2.2xlarge'|'ml.m4.xlarge'|'ml.m4.2xlarge'|'ml.m4.4xlarge'|'ml.m4.10xlarge'|'ml.m4.16xlarge'|'ml.m5.large'|'ml.m5.xlarge'|'ml.m5.2xlarge'|'ml.m5.4xlarge'|'ml.m5.12xlarge'|'ml.m5.24xlarge'|'ml.m5d.large'|'ml.m5d.xlarge'|'ml.m5d.2xlarge'|'ml.m5d.4xlarge'|'ml.m5d.12xlarge'|'ml.m5d.24xlarge'|'ml.c4.large'|'ml.c4.xlarge'|'ml.c4.2xlarge'|'ml.c4.4xlarge'|'ml.c4.8xlarge'|'ml.p2.xlarge'|'ml.p2.8xlarge'|'ml.p2.16xlarge'|'ml.p3.2xlarge'|'ml.p3.8xlarge'|'ml.p3.16xlarge'|'ml.c5.large'|'ml.c5.xlarge'|'ml.c5.2xlarge'|'ml.c5.4xlarge'|'ml.c5.9xlarge'|'ml.c5.18xlarge'|'ml.c5d.large'|'ml.c5d.xlarge'|'ml.c5d.2xlarge'|'ml.c5d.4xlarge'|'ml.c5d.9xlarge'|'ml.c5d.18xlarge'|'ml.g4dn.xlarge'|'ml.g4dn.2xlarge'|'ml.g4dn.4xlarge'|'ml.g4dn.8xlarge'|'ml.g4dn.12xlarge'|'ml.g4dn.16xlarge'|'ml.r5.large'|'ml.r5.xlarge'|'ml.r5.2xlarge'|'ml.r5.4xlarge'|'ml.r5.12xlarge'|'ml.r5.24xlarge'|'ml.r5d.large'|'ml.r5d.xlarge'|'ml.r5d.2xlarge'|'ml.r5d.4xlarge'|'ml.r5d.12xlarge'|'ml.r5d.24xlarge'|'ml.inf1.xlarge'|'ml.inf1.2xlarge'|'ml.inf1.6xlarge'|'ml.inf1.24xlarge'|'ml.dl1.24xlarge'|'ml.c6i.large'|'ml.c6i.xlarge'|'ml.c6i.2xlarge'|'ml.c6i.4xlarge'|'ml.c6i.8xlarge'|'ml.c6i.12xlarge'|'ml.c6i.16xlarge'|'ml.c6i.24xlarge'|'ml.c6i.32xlarge'|'ml.g5.xlarge'|'ml.g5.2xlarge'|'ml.g5.4xlarge'|'ml.g5.8xlarge'|'ml.g5.12xlarge'|'ml.g5.16xlarge'|'ml.g5.24xlarge'|'ml.g5.48xlarge'|'ml.g6.xlarge'|'ml.g6.2xlarge'|'ml.g6.4xlarge'|'ml.g6.8xlarge'|'ml.g6.12xlarge'|'ml.g6.16xlarge'|'ml.g6.24xlarge'|'ml.g6.48xlarge'|'ml.p4d.24xlarge'|'ml.c7g.large'|'ml.c7g.xlarge'|'ml.c7g.2xlarge'|'ml.c7g.4xlarge'|'ml.c7g.8xlarge'|'ml.c7g.12xlarge'|'ml.c7g.16xlarge'|'ml.m6g.large'|'ml.m6g.xlarge'|'ml.m6g.2xlarge'|'ml.m6g.4xlarge'|'ml.m6g.8xlarge'|'ml.m6g.12xlarge'|'ml.m6g.16xlarge'|'ml.m6gd.large'|'ml.m6gd.xlarge'|'ml.m6gd.2xlarge'|'ml.m6gd.4xlarge'|'ml.m6gd.8xlarge'|'ml.m6gd.12xlarge'|'ml.m6gd.16xlarge'|'ml.c6g.large'|'ml.c6g.xlarge'|'ml.c6g.2xlarge'|'ml.c6g.4xlarge'|'ml.c6g.8xlarge'|'ml.c6g.12xlarge'|'ml.c6g.16xlarge'|'ml.c6gd.large'|'ml.c6gd.xlarge'|'ml.c6gd.2xlarge'|'ml.c6gd.4xlarge'|'ml.c6gd.8xlarge'|'ml.c6gd.12xlarge'|'ml.c6gd.16xlarge'|'ml.c6gn.large'|'ml.c6gn.xlarge'|'ml.c6gn.2xlarge'|'ml.c6gn.4xlarge'|'ml.c6gn.8xlarge'|'ml.c6gn.12xlarge'|'ml.c6gn.16xlarge'|'ml.r6g.large'|'ml.r6g.xlarge'|'ml.r6g.2xlarge'|'ml.r6g.4xlarge'|'ml.r6g.8xlarge'|'ml.r6g.12xlarge'|'ml.r6g.16xlarge'|'ml.r6gd.large'|'ml.r6gd.xlarge'|'ml.r6gd.2xlarge'|'ml.r6gd.4xlarge'|'ml.r6gd.8xlarge'|'ml.r6gd.12xlarge'|'ml.r6gd.16xlarge'|'ml.p4de.24xlarge'|'ml.trn1.2xlarge'|'ml.trn1.32xlarge'|'ml.trn1n.32xlarge'|'ml.inf2.xlarge'|'ml.inf2.8xlarge'|'ml.inf2.24xlarge'|'ml.inf2.48xlarge'|'ml.p5.48xlarge'|'ml.m7i.large'|'ml.m7i.xlarge'|'ml.m7i.2xlarge'|'ml.m7i.4xlarge'|'ml.m7i.8xlarge'|'ml.m7i.12xlarge'|'ml.m7i.16xlarge'|'ml.m7i.24xlarge'|'ml.m7i.48xlarge'|'ml.c7i.large'|'ml.c7i.xlarge'|'ml.c7i.2xlarge'|'ml.c7i.4xlarge'|'ml.c7i.8xlarge'|'ml.c7i.12xlarge'|'ml.c7i.16xlarge'|'ml.c7i.24xlarge'|'ml.c7i.48xlarge'|'ml.r7i.large'|'ml.r7i.xlarge'|'ml.r7i.2xlarge'|'ml.r7i.4xlarge'|'ml.r7i.8xlarge'|'ml.r7i.12xlarge'|'ml.r7i.16xlarge'|'ml.r7i.24xlarge'|'ml.r7i.48xlarge',
        ],
        'SupportedContentTypes': [
            'string',
        ],
        'SupportedResponseMIMETypes': [
            'string',
        ]
    },
    SourceUri='string',
    ModelCard={
        'ModelCardContent': 'string',
        'ModelCardStatus': 'Draft'|'PendingReview'|'Approved'|'Archived'
    }
)
Parameters:
  • ModelPackageArn (string) –

    [REQUIRED]

    The Amazon Resource Name (ARN) of the model package.

  • ModelApprovalStatus (string) – The approval status of the model.

  • ApprovalDescription (string) – A description for the approval status of the model.

  • CustomerMetadataProperties (dict) –

    The metadata properties associated with the model package versions.

    • (string) –

      • (string) –

  • CustomerMetadataPropertiesToRemove (list) –

    The metadata properties associated with the model package versions to remove.

    • (string) –

  • AdditionalInferenceSpecificationsToAdd (list) –

    An array of additional Inference Specification objects to be added to the existing array additional Inference Specification. Total number of additional Inference Specifications can not exceed 15. Each additional Inference Specification specifies artifacts based on this model package that can be used on inference endpoints. Generally used with SageMaker Neo to store the compiled artifacts.

    • (dict) –

      A structure of additional Inference Specification. Additional Inference Specification specifies details about inference jobs that can be run with models based on this model package

      • Name (string) – [REQUIRED]

        A unique name to identify the additional inference specification. The name must be unique within the list of your additional inference specifications for a particular model package.

      • Description (string) –

        A description of the additional Inference specification

      • Containers (list) – [REQUIRED]

        The Amazon ECR registry path of the Docker image that contains the inference code.

        • (dict) –

          Describes the Docker container for the model package.

          • ContainerHostname (string) –

            The DNS host name for the Docker container.

          • Image (string) – [REQUIRED]

            The Amazon EC2 Container Registry (Amazon ECR) path where inference code is stored.

            If you are using your own custom algorithm instead of an algorithm provided by SageMaker, the inference code must meet SageMaker requirements. SageMaker supports both registry/repository[:tag] and registry/repository[@digest] image path formats. For more information, see Using Your Own Algorithms with Amazon SageMaker.

          • ImageDigest (string) –

            An MD5 hash of the training algorithm that identifies the Docker image used for training.

          • ModelDataUrl (string) –

            The Amazon S3 path where the model artifacts, which result from model training, are stored. This path must point to a single gzip compressed tar archive ( .tar.gz suffix).

            Note

            The model artifacts must be in an S3 bucket that is in the same region as the model package.

          • ModelDataSource (dict) –

            Specifies the location of ML model data to deploy during endpoint creation.

            • S3DataSource (dict) –

              Specifies the S3 location of ML model data to deploy.

              • S3Uri (string) – [REQUIRED]

                Specifies the S3 path of ML model data to deploy.

              • S3DataType (string) – [REQUIRED]

                Specifies the type of ML model data to deploy.

                If you choose S3Prefix, S3Uri identifies a key name prefix. SageMaker uses all objects that match the specified key name prefix as part of the ML model data to deploy. A valid key name prefix identified by S3Uri always ends with a forward slash (/).

                If you choose S3Object, S3Uri identifies an object that is the ML model data to deploy.

              • CompressionType (string) – [REQUIRED]

                Specifies how the ML model data is prepared.

                If you choose Gzip and choose S3Object as the value of S3DataType, S3Uri identifies an object that is a gzip-compressed TAR archive. SageMaker will attempt to decompress and untar the object during model deployment.

                If you choose None and chooose S3Object as the value of S3DataType, S3Uri identifies an object that represents an uncompressed ML model to deploy.

                If you choose None and choose S3Prefix as the value of S3DataType, S3Uri identifies a key name prefix, under which all objects represents the uncompressed ML model to deploy.

                If you choose None, then SageMaker will follow rules below when creating model data files under /opt/ml/model directory for use by your inference code:

                • If you choose S3Object as the value of S3DataType, then SageMaker will split the key of the S3 object referenced by S3Uri by slash (/), and use the last part as the filename of the file holding the content of the S3 object.

                • If you choose S3Prefix as the value of S3DataType, then for each S3 object under the key name pefix referenced by S3Uri, SageMaker will trim its key by the prefix, and use the remainder as the path (relative to /opt/ml/model) of the file holding the content of the S3 object. SageMaker will split the remainder by slash (/), using intermediate parts as directory names and the last part as filename of the file holding the content of the S3 object.

                • Do not use any of the following as file names or directory names:

                  • An empty or blank string

                  • A string which contains null bytes

                  • A string longer than 255 bytes

                  • A single dot ( .)

                  • A double dot ( ..)

                • Ambiguous file names will result in model deployment failure. For example, if your uncompressed ML model consists of two S3 objects s3://mybucket/model/weights and s3://mybucket/model/weights/part1 and you specify s3://mybucket/model/ as the value of S3Uri and S3Prefix as the value of S3DataType, then it will result in name clash between /opt/ml/model/weights (a regular file) and /opt/ml/model/weights/ (a directory).

                • Do not organize the model artifacts in S3 console using folders. When you create a folder in S3 console, S3 creates a 0-byte object with a key set to the folder name you provide. They key of the 0-byte object ends with a slash (/) which violates SageMaker restrictions on model artifact file names, leading to model deployment failure.

              • ModelAccessConfig (dict) –

                Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the ModelAccessConfig. You are responsible for reviewing and complying with any applicable license terms and making sure they are acceptable for your use case before downloading or using a model.

                • AcceptEula (boolean) – [REQUIRED]

                  Specifies agreement to the model end-user license agreement (EULA). The AcceptEula value must be explicitly defined as True in order to accept the EULA that this model requires. You are responsible for reviewing and complying with any applicable license terms and making sure they are acceptable for your use case before downloading or using a model.

              • HubAccessConfig (dict) –

                Configuration information for hub access.

                • HubContentArn (string) – [REQUIRED]

                  The ARN of the hub content for which deployment access is allowed.

              • ManifestS3Uri (string) –

                The Amazon S3 URI of the manifest file. The manifest file is a CSV file that stores the artifact locations.

          • ProductId (string) –

            The Amazon Web Services Marketplace product ID of the model package.

          • Environment (dict) –

            The environment variables to set in the Docker container. Each key and value in the Environment string to string map can have length of up to 1024. We support up to 16 entries in the map.

            • (string) –

              • (string) –

          • ModelInput (dict) –

            A structure with Model Input details.

            • DataInputConfig (string) – [REQUIRED]

              The input configuration object for the model.

          • Framework (string) –

            The machine learning framework of the model package container image.

          • FrameworkVersion (string) –

            The framework version of the Model Package Container Image.

          • NearestModelName (string) –

            The name of a pre-trained machine learning benchmarked by Amazon SageMaker Inference Recommender model that matches your model. You can find a list of benchmarked models by calling ListModelMetadata.

          • AdditionalS3DataSource (dict) –

            The additional data source that is used during inference in the Docker container for your model package.

            • S3DataType (string) – [REQUIRED]

              The data type of the additional data source that you specify for use in inference or training.

            • S3Uri (string) – [REQUIRED]

              The uniform resource identifier (URI) used to identify an additional data source used in inference or training.

            • CompressionType (string) –

              The type of compression used for an additional data source used in inference or training. Specify None if your additional data source is not compressed.

      • SupportedTransformInstanceTypes (list) –

        A list of the instance types on which a transformation job can be run or on which an endpoint can be deployed.

        • (string) –

      • SupportedRealtimeInferenceInstanceTypes (list) –

        A list of the instance types that are used to generate inferences in real-time.

        • (string) –

      • SupportedContentTypes (list) –

        The supported MIME types for the input data.

        • (string) –

      • SupportedResponseMIMETypes (list) –

        The supported MIME types for the output data.

        • (string) –

  • InferenceSpecification (dict) –

    Specifies details about inference jobs that you can run with models based on this model package, including the following information:

    • The Amazon ECR paths of containers that contain the inference code and model artifacts.

    • The instance types that the model package supports for transform jobs and real-time endpoints used for inference.

    • The input and output content formats that the model package supports for inference.

    • Containers (list) – [REQUIRED]

      The Amazon ECR registry path of the Docker image that contains the inference code.

      • (dict) –

        Describes the Docker container for the model package.

        • ContainerHostname (string) –

          The DNS host name for the Docker container.

        • Image (string) – [REQUIRED]

          The Amazon EC2 Container Registry (Amazon ECR) path where inference code is stored.

          If you are using your own custom algorithm instead of an algorithm provided by SageMaker, the inference code must meet SageMaker requirements. SageMaker supports both registry/repository[:tag] and registry/repository[@digest] image path formats. For more information, see Using Your Own Algorithms with Amazon SageMaker.

        • ImageDigest (string) –

          An MD5 hash of the training algorithm that identifies the Docker image used for training.

        • ModelDataUrl (string) –

          The Amazon S3 path where the model artifacts, which result from model training, are stored. This path must point to a single gzip compressed tar archive ( .tar.gz suffix).

          Note

          The model artifacts must be in an S3 bucket that is in the same region as the model package.

        • ModelDataSource (dict) –

          Specifies the location of ML model data to deploy during endpoint creation.

          • S3DataSource (dict) –

            Specifies the S3 location of ML model data to deploy.

            • S3Uri (string) – [REQUIRED]

              Specifies the S3 path of ML model data to deploy.

            • S3DataType (string) – [REQUIRED]

              Specifies the type of ML model data to deploy.

              If you choose S3Prefix, S3Uri identifies a key name prefix. SageMaker uses all objects that match the specified key name prefix as part of the ML model data to deploy. A valid key name prefix identified by S3Uri always ends with a forward slash (/).

              If you choose S3Object, S3Uri identifies an object that is the ML model data to deploy.

            • CompressionType (string) – [REQUIRED]

              Specifies how the ML model data is prepared.

              If you choose Gzip and choose S3Object as the value of S3DataType, S3Uri identifies an object that is a gzip-compressed TAR archive. SageMaker will attempt to decompress and untar the object during model deployment.

              If you choose None and chooose S3Object as the value of S3DataType, S3Uri identifies an object that represents an uncompressed ML model to deploy.

              If you choose None and choose S3Prefix as the value of S3DataType, S3Uri identifies a key name prefix, under which all objects represents the uncompressed ML model to deploy.

              If you choose None, then SageMaker will follow rules below when creating model data files under /opt/ml/model directory for use by your inference code:

              • If you choose S3Object as the value of S3DataType, then SageMaker will split the key of the S3 object referenced by S3Uri by slash (/), and use the last part as the filename of the file holding the content of the S3 object.

              • If you choose S3Prefix as the value of S3DataType, then for each S3 object under the key name pefix referenced by S3Uri, SageMaker will trim its key by the prefix, and use the remainder as the path (relative to /opt/ml/model) of the file holding the content of the S3 object. SageMaker will split the remainder by slash (/), using intermediate parts as directory names and the last part as filename of the file holding the content of the S3 object.

              • Do not use any of the following as file names or directory names:

                • An empty or blank string

                • A string which contains null bytes

                • A string longer than 255 bytes

                • A single dot ( .)

                • A double dot ( ..)

              • Ambiguous file names will result in model deployment failure. For example, if your uncompressed ML model consists of two S3 objects s3://mybucket/model/weights and s3://mybucket/model/weights/part1 and you specify s3://mybucket/model/ as the value of S3Uri and S3Prefix as the value of S3DataType, then it will result in name clash between /opt/ml/model/weights (a regular file) and /opt/ml/model/weights/ (a directory).

              • Do not organize the model artifacts in S3 console using folders. When you create a folder in S3 console, S3 creates a 0-byte object with a key set to the folder name you provide. They key of the 0-byte object ends with a slash (/) which violates SageMaker restrictions on model artifact file names, leading to model deployment failure.

            • ModelAccessConfig (dict) –

              Specifies the access configuration file for the ML model. You can explicitly accept the model end-user license agreement (EULA) within the ModelAccessConfig. You are responsible for reviewing and complying with any applicable license terms and making sure they are acceptable for your use case before downloading or using a model.

              • AcceptEula (boolean) – [REQUIRED]

                Specifies agreement to the model end-user license agreement (EULA). The AcceptEula value must be explicitly defined as True in order to accept the EULA that this model requires. You are responsible for reviewing and complying with any applicable license terms and making sure they are acceptable for your use case before downloading or using a model.

            • HubAccessConfig (dict) –

              Configuration information for hub access.

              • HubContentArn (string) – [REQUIRED]

                The ARN of the hub content for which deployment access is allowed.

            • ManifestS3Uri (string) –

              The Amazon S3 URI of the manifest file. The manifest file is a CSV file that stores the artifact locations.

        • ProductId (string) –

          The Amazon Web Services Marketplace product ID of the model package.

        • Environment (dict) –

          The environment variables to set in the Docker container. Each key and value in the Environment string to string map can have length of up to 1024. We support up to 16 entries in the map.

          • (string) –

            • (string) –

        • ModelInput (dict) –

          A structure with Model Input details.

          • DataInputConfig (string) – [REQUIRED]

            The input configuration object for the model.

        • Framework (string) –

          The machine learning framework of the model package container image.

        • FrameworkVersion (string) –

          The framework version of the Model Package Container Image.

        • NearestModelName (string) –

          The name of a pre-trained machine learning benchmarked by Amazon SageMaker Inference Recommender model that matches your model. You can find a list of benchmarked models by calling ListModelMetadata.

        • AdditionalS3DataSource (dict) –

          The additional data source that is used during inference in the Docker container for your model package.

          • S3DataType (string) – [REQUIRED]

            The data type of the additional data source that you specify for use in inference or training.

          • S3Uri (string) – [REQUIRED]

            The uniform resource identifier (URI) used to identify an additional data source used in inference or training.

          • CompressionType (string) –

            The type of compression used for an additional data source used in inference or training. Specify None if your additional data source is not compressed.

    • SupportedTransformInstanceTypes (list) –

      A list of the instance types on which a transformation job can be run or on which an endpoint can be deployed.

      This parameter is required for unversioned models, and optional for versioned models.

      • (string) –

    • SupportedRealtimeInferenceInstanceTypes (list) –

      A list of the instance types that are used to generate inferences in real-time.

      This parameter is required for unversioned models, and optional for versioned models.

      • (string) –

    • SupportedContentTypes (list) –

      The supported MIME types for the input data.

      • (string) –

    • SupportedResponseMIMETypes (list) –

      The supported MIME types for the output data.

      • (string) –

  • SourceUri (string) – The URI of the source for the model package.

  • ModelCard (dict) –

    The model card associated with the model package. Since ModelPackageModelCard is tied to a model package, it is a specific usage of a model card and its schema is simplified compared to the schema of ModelCard. The ModelPackageModelCard schema does not include model_package_details, and model_overview is composed of the model_creator and model_artifact properties. For more information about the model package model card schema, see Model package model card schema. For more information about the model card associated with the model package, see View the Details of a Model Version.

    • ModelCardContent (string) –

      The content of the model card. The content must follow the schema described in Model Package Model Card Schema.

    • ModelCardStatus (string) –

      The approval status of the model card within your organization. Different organizations might have different criteria for model card review and approval.

      • Draft: The model card is a work in progress.

      • PendingReview: The model card is pending review.

      • Approved: The model card is approved.

      • Archived: The model card is archived. No more updates can be made to the model card content. If you try to update the model card content, you will receive the message Model Card is in Archived state.

Return type:

dict

Returns:

Response Syntax

{
    'ModelPackageArn': 'string'
}

Response Structure

  • (dict) –

    • ModelPackageArn (string) –

      The Amazon Resource Name (ARN) of the model.

Exceptions

  • SageMaker.Client.exceptions.ConflictException