All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.sagemaker.model.CreateModelPackageRequest Maven / Gradle / Ivy

/*
 * Copyright 2019-2024 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 * 
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with
 * the License. A copy of the License is located at
 * 
 * http://aws.amazon.com/apache2.0
 * 
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
 * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.services.sagemaker.model;

import java.io.Serializable;
import javax.annotation.Generated;

import com.amazonaws.AmazonWebServiceRequest;

/**
 * 
 * @see AWS API
 *      Documentation
 */
@Generated("com.amazonaws:aws-java-sdk-code-generator")
public class CreateModelPackageRequest extends com.amazonaws.AmazonWebServiceRequest implements Serializable, Cloneable {

    /**
     * 

* The name of the model package. The name must have 1 to 63 characters. Valid characters are a-z, A-Z, 0-9, and - * (hyphen). *

*

* This parameter is required for unversioned models. It is not applicable to versioned models. *

*/ private String modelPackageName; /** *

* The name or Amazon Resource Name (ARN) of the model package group that this model version belongs to. *

*

* This parameter is required for versioned models, and does not apply to unversioned models. *

*/ private String modelPackageGroupName; /** *

* A description of the model package. *

*/ private String modelPackageDescription; /** *

* 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. *

    *
  • *
*/ private InferenceSpecification inferenceSpecification; /** *

* Specifies configurations for one or more transform jobs that SageMaker runs to test the model package. *

*/ private ModelPackageValidationSpecification validationSpecification; /** *

* Details about the algorithm that was used to create the model package. *

*/ private SourceAlgorithmSpecification sourceAlgorithmSpecification; /** *

* Whether to certify the model package for listing on Amazon Web Services Marketplace. *

*

* This parameter is optional for unversioned models, and does not apply to versioned models. *

*/ private Boolean certifyForMarketplace; /** *

* A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services resources * in the Amazon Web Services General Reference Guide. *

*

* If you supply ModelPackageGroupName, your model package belongs to the model group you specify and * uses the tags associated with the model group. In this case, you cannot supply a tag argument. *

*/ private java.util.List tags; /** *

* Whether the model is approved for deployment. *

*

* This parameter is optional for versioned models, and does not apply to unversioned models. *

*

* For versioned models, the value of this parameter must be set to Approved to deploy the model. *

*/ private String modelApprovalStatus; private MetadataProperties metadataProperties; /** *

* A structure that contains model metrics reports. *

*/ private ModelMetrics modelMetrics; /** *

* A unique token that guarantees that the call to this API is idempotent. *

*/ private String clientToken; /** *

* The machine learning domain of your model package and its components. Common machine learning domains include * computer vision and natural language processing. *

*/ private String domain; /** *

* The machine learning task your model package accomplishes. Common machine learning tasks include object detection * and image classification. The following tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | "TEXT_GENERATION" | * "IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER". *

*

* Specify "OTHER" if none of the tasks listed fit your use case. *

*/ private String task; /** *

* The Amazon Simple Storage Service (Amazon S3) path where the sample payload is stored. This path must point to a * single gzip compressed tar archive (.tar.gz suffix). This archive can hold multiple files that are all equally * used in the load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint call. *

*/ private String samplePayloadUrl; /** *

* The metadata properties associated with the model package versions. *

*/ private java.util.Map customerMetadataProperties; /** *

* Represents the drift check baselines that can be used when the model monitor is set using the model package. For * more information, see the topic on Drift Detection against Previous Baselines in SageMaker Pipelines in the Amazon SageMaker Developer * Guide. *

*/ private DriftCheckBaselines driftCheckBaselines; /** *

* An array of additional Inference Specification objects. 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. *

*/ private java.util.List additionalInferenceSpecifications; /** *

* Indicates if you want to skip model validation. *

*/ private String skipModelValidation; /** *

* The URI of the source for the model package. If you want to clone a model package, set it to the model package * Amazon Resource Name (ARN). If you want to register a model, set it to the model ARN. *

*/ private String sourceUri; /** *

* The KMS Key ID (KMSKeyId) used for encryption of model package information. *

*/ private ModelPackageSecurityConfig securityConfig; /** *

* 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. *

*/ private ModelPackageModelCard modelCard; /** *

* The name of the model package. The name must have 1 to 63 characters. Valid characters are a-z, A-Z, 0-9, and - * (hyphen). *

*

* This parameter is required for unversioned models. It is not applicable to versioned models. *

* * @param modelPackageName * The name of the model package. The name must have 1 to 63 characters. Valid characters are a-z, A-Z, 0-9, * and - (hyphen).

*

* This parameter is required for unversioned models. It is not applicable to versioned models. */ public void setModelPackageName(String modelPackageName) { this.modelPackageName = modelPackageName; } /** *

* The name of the model package. The name must have 1 to 63 characters. Valid characters are a-z, A-Z, 0-9, and - * (hyphen). *

*

* This parameter is required for unversioned models. It is not applicable to versioned models. *

* * @return The name of the model package. The name must have 1 to 63 characters. Valid characters are a-z, A-Z, 0-9, * and - (hyphen).

*

* This parameter is required for unversioned models. It is not applicable to versioned models. */ public String getModelPackageName() { return this.modelPackageName; } /** *

* The name of the model package. The name must have 1 to 63 characters. Valid characters are a-z, A-Z, 0-9, and - * (hyphen). *

*

* This parameter is required for unversioned models. It is not applicable to versioned models. *

* * @param modelPackageName * The name of the model package. The name must have 1 to 63 characters. Valid characters are a-z, A-Z, 0-9, * and - (hyphen).

*

* This parameter is required for unversioned models. It is not applicable to versioned models. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withModelPackageName(String modelPackageName) { setModelPackageName(modelPackageName); return this; } /** *

* The name or Amazon Resource Name (ARN) of the model package group that this model version belongs to. *

*

* This parameter is required for versioned models, and does not apply to unversioned models. *

* * @param modelPackageGroupName * The name or Amazon Resource Name (ARN) of the model package group that this model version belongs to.

*

* This parameter is required for versioned models, and does not apply to unversioned models. */ public void setModelPackageGroupName(String modelPackageGroupName) { this.modelPackageGroupName = modelPackageGroupName; } /** *

* The name or Amazon Resource Name (ARN) of the model package group that this model version belongs to. *

*

* This parameter is required for versioned models, and does not apply to unversioned models. *

* * @return The name or Amazon Resource Name (ARN) of the model package group that this model version belongs to.

*

* This parameter is required for versioned models, and does not apply to unversioned models. */ public String getModelPackageGroupName() { return this.modelPackageGroupName; } /** *

* The name or Amazon Resource Name (ARN) of the model package group that this model version belongs to. *

*

* This parameter is required for versioned models, and does not apply to unversioned models. *

* * @param modelPackageGroupName * The name or Amazon Resource Name (ARN) of the model package group that this model version belongs to.

*

* This parameter is required for versioned models, and does not apply to unversioned models. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withModelPackageGroupName(String modelPackageGroupName) { setModelPackageGroupName(modelPackageGroupName); return this; } /** *

* A description of the model package. *

* * @param modelPackageDescription * A description of the model package. */ public void setModelPackageDescription(String modelPackageDescription) { this.modelPackageDescription = modelPackageDescription; } /** *

* A description of the model package. *

* * @return A description of the model package. */ public String getModelPackageDescription() { return this.modelPackageDescription; } /** *

* A description of the model package. *

* * @param modelPackageDescription * A description of the model package. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withModelPackageDescription(String modelPackageDescription) { setModelPackageDescription(modelPackageDescription); return this; } /** *

* 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. *

    *
  • *
* * @param inferenceSpecification * 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. *

    *
  • */ public void setInferenceSpecification(InferenceSpecification inferenceSpecification) { this.inferenceSpecification = inferenceSpecification; } /** *

    * 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. *

      *
    • *
    * * @return 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. *

      *
    • */ public InferenceSpecification getInferenceSpecification() { return this.inferenceSpecification; } /** *

      * 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. *

        *
      • *
      * * @param inferenceSpecification * 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. *

        *
      • * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withInferenceSpecification(InferenceSpecification inferenceSpecification) { setInferenceSpecification(inferenceSpecification); return this; } /** *

        * Specifies configurations for one or more transform jobs that SageMaker runs to test the model package. *

        * * @param validationSpecification * Specifies configurations for one or more transform jobs that SageMaker runs to test the model package. */ public void setValidationSpecification(ModelPackageValidationSpecification validationSpecification) { this.validationSpecification = validationSpecification; } /** *

        * Specifies configurations for one or more transform jobs that SageMaker runs to test the model package. *

        * * @return Specifies configurations for one or more transform jobs that SageMaker runs to test the model package. */ public ModelPackageValidationSpecification getValidationSpecification() { return this.validationSpecification; } /** *

        * Specifies configurations for one or more transform jobs that SageMaker runs to test the model package. *

        * * @param validationSpecification * Specifies configurations for one or more transform jobs that SageMaker runs to test the model package. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withValidationSpecification(ModelPackageValidationSpecification validationSpecification) { setValidationSpecification(validationSpecification); return this; } /** *

        * Details about the algorithm that was used to create the model package. *

        * * @param sourceAlgorithmSpecification * Details about the algorithm that was used to create the model package. */ public void setSourceAlgorithmSpecification(SourceAlgorithmSpecification sourceAlgorithmSpecification) { this.sourceAlgorithmSpecification = sourceAlgorithmSpecification; } /** *

        * Details about the algorithm that was used to create the model package. *

        * * @return Details about the algorithm that was used to create the model package. */ public SourceAlgorithmSpecification getSourceAlgorithmSpecification() { return this.sourceAlgorithmSpecification; } /** *

        * Details about the algorithm that was used to create the model package. *

        * * @param sourceAlgorithmSpecification * Details about the algorithm that was used to create the model package. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withSourceAlgorithmSpecification(SourceAlgorithmSpecification sourceAlgorithmSpecification) { setSourceAlgorithmSpecification(sourceAlgorithmSpecification); return this; } /** *

        * Whether to certify the model package for listing on Amazon Web Services Marketplace. *

        *

        * This parameter is optional for unversioned models, and does not apply to versioned models. *

        * * @param certifyForMarketplace * Whether to certify the model package for listing on Amazon Web Services Marketplace.

        *

        * This parameter is optional for unversioned models, and does not apply to versioned models. */ public void setCertifyForMarketplace(Boolean certifyForMarketplace) { this.certifyForMarketplace = certifyForMarketplace; } /** *

        * Whether to certify the model package for listing on Amazon Web Services Marketplace. *

        *

        * This parameter is optional for unversioned models, and does not apply to versioned models. *

        * * @return Whether to certify the model package for listing on Amazon Web Services Marketplace.

        *

        * This parameter is optional for unversioned models, and does not apply to versioned models. */ public Boolean getCertifyForMarketplace() { return this.certifyForMarketplace; } /** *

        * Whether to certify the model package for listing on Amazon Web Services Marketplace. *

        *

        * This parameter is optional for unversioned models, and does not apply to versioned models. *

        * * @param certifyForMarketplace * Whether to certify the model package for listing on Amazon Web Services Marketplace.

        *

        * This parameter is optional for unversioned models, and does not apply to versioned models. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withCertifyForMarketplace(Boolean certifyForMarketplace) { setCertifyForMarketplace(certifyForMarketplace); return this; } /** *

        * Whether to certify the model package for listing on Amazon Web Services Marketplace. *

        *

        * This parameter is optional for unversioned models, and does not apply to versioned models. *

        * * @return Whether to certify the model package for listing on Amazon Web Services Marketplace.

        *

        * This parameter is optional for unversioned models, and does not apply to versioned models. */ public Boolean isCertifyForMarketplace() { return this.certifyForMarketplace; } /** *

        * A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services resources * in the Amazon Web Services General Reference Guide. *

        *

        * If you supply ModelPackageGroupName, your model package belongs to the model group you specify and * uses the tags associated with the model group. In this case, you cannot supply a tag argument. *

        * * @return A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services * resources in the Amazon Web Services General Reference Guide.

        *

        * If you supply ModelPackageGroupName, your model package belongs to the model group you * specify and uses the tags associated with the model group. In this case, you cannot supply a * tag argument. */ public java.util.List getTags() { return tags; } /** *

        * A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services resources * in the Amazon Web Services General Reference Guide. *

        *

        * If you supply ModelPackageGroupName, your model package belongs to the model group you specify and * uses the tags associated with the model group. In this case, you cannot supply a tag argument. *

        * * @param tags * A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services * resources in the Amazon Web Services General Reference Guide.

        *

        * If you supply ModelPackageGroupName, your model package belongs to the model group you * specify and uses the tags associated with the model group. In this case, you cannot supply a * tag argument. */ public void setTags(java.util.Collection tags) { if (tags == null) { this.tags = null; return; } this.tags = new java.util.ArrayList(tags); } /** *

        * A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services resources * in the Amazon Web Services General Reference Guide. *

        *

        * If you supply ModelPackageGroupName, your model package belongs to the model group you specify and * uses the tags associated with the model group. In this case, you cannot supply a tag argument. *

        *

        * NOTE: This method appends the values to the existing list (if any). Use * {@link #setTags(java.util.Collection)} or {@link #withTags(java.util.Collection)} if you want to override the * existing values. *

        * * @param tags * A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services * resources in the Amazon Web Services General Reference Guide.

        *

        * If you supply ModelPackageGroupName, your model package belongs to the model group you * specify and uses the tags associated with the model group. In this case, you cannot supply a * tag argument. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withTags(Tag... tags) { if (this.tags == null) { setTags(new java.util.ArrayList(tags.length)); } for (Tag ele : tags) { this.tags.add(ele); } return this; } /** *

        * A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services resources * in the Amazon Web Services General Reference Guide. *

        *

        * If you supply ModelPackageGroupName, your model package belongs to the model group you specify and * uses the tags associated with the model group. In this case, you cannot supply a tag argument. *

        * * @param tags * A list of key value pairs associated with the model. For more information, see Tagging Amazon Web Services * resources in the Amazon Web Services General Reference Guide.

        *

        * If you supply ModelPackageGroupName, your model package belongs to the model group you * specify and uses the tags associated with the model group. In this case, you cannot supply a * tag argument. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withTags(java.util.Collection tags) { setTags(tags); return this; } /** *

        * Whether the model is approved for deployment. *

        *

        * This parameter is optional for versioned models, and does not apply to unversioned models. *

        *

        * For versioned models, the value of this parameter must be set to Approved to deploy the model. *

        * * @param modelApprovalStatus * Whether the model is approved for deployment.

        *

        * This parameter is optional for versioned models, and does not apply to unversioned models. *

        *

        * For versioned models, the value of this parameter must be set to Approved to deploy the * model. * @see ModelApprovalStatus */ public void setModelApprovalStatus(String modelApprovalStatus) { this.modelApprovalStatus = modelApprovalStatus; } /** *

        * Whether the model is approved for deployment. *

        *

        * This parameter is optional for versioned models, and does not apply to unversioned models. *

        *

        * For versioned models, the value of this parameter must be set to Approved to deploy the model. *

        * * @return Whether the model is approved for deployment.

        *

        * This parameter is optional for versioned models, and does not apply to unversioned models. *

        *

        * For versioned models, the value of this parameter must be set to Approved to deploy the * model. * @see ModelApprovalStatus */ public String getModelApprovalStatus() { return this.modelApprovalStatus; } /** *

        * Whether the model is approved for deployment. *

        *

        * This parameter is optional for versioned models, and does not apply to unversioned models. *

        *

        * For versioned models, the value of this parameter must be set to Approved to deploy the model. *

        * * @param modelApprovalStatus * Whether the model is approved for deployment.

        *

        * This parameter is optional for versioned models, and does not apply to unversioned models. *

        *

        * For versioned models, the value of this parameter must be set to Approved to deploy the * model. * @return Returns a reference to this object so that method calls can be chained together. * @see ModelApprovalStatus */ public CreateModelPackageRequest withModelApprovalStatus(String modelApprovalStatus) { setModelApprovalStatus(modelApprovalStatus); return this; } /** *

        * Whether the model is approved for deployment. *

        *

        * This parameter is optional for versioned models, and does not apply to unversioned models. *

        *

        * For versioned models, the value of this parameter must be set to Approved to deploy the model. *

        * * @param modelApprovalStatus * Whether the model is approved for deployment.

        *

        * This parameter is optional for versioned models, and does not apply to unversioned models. *

        *

        * For versioned models, the value of this parameter must be set to Approved to deploy the * model. * @return Returns a reference to this object so that method calls can be chained together. * @see ModelApprovalStatus */ public CreateModelPackageRequest withModelApprovalStatus(ModelApprovalStatus modelApprovalStatus) { this.modelApprovalStatus = modelApprovalStatus.toString(); return this; } /** * @param metadataProperties */ public void setMetadataProperties(MetadataProperties metadataProperties) { this.metadataProperties = metadataProperties; } /** * @return */ public MetadataProperties getMetadataProperties() { return this.metadataProperties; } /** * @param metadataProperties * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withMetadataProperties(MetadataProperties metadataProperties) { setMetadataProperties(metadataProperties); return this; } /** *

        * A structure that contains model metrics reports. *

        * * @param modelMetrics * A structure that contains model metrics reports. */ public void setModelMetrics(ModelMetrics modelMetrics) { this.modelMetrics = modelMetrics; } /** *

        * A structure that contains model metrics reports. *

        * * @return A structure that contains model metrics reports. */ public ModelMetrics getModelMetrics() { return this.modelMetrics; } /** *

        * A structure that contains model metrics reports. *

        * * @param modelMetrics * A structure that contains model metrics reports. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withModelMetrics(ModelMetrics modelMetrics) { setModelMetrics(modelMetrics); return this; } /** *

        * A unique token that guarantees that the call to this API is idempotent. *

        * * @param clientToken * A unique token that guarantees that the call to this API is idempotent. */ public void setClientToken(String clientToken) { this.clientToken = clientToken; } /** *

        * A unique token that guarantees that the call to this API is idempotent. *

        * * @return A unique token that guarantees that the call to this API is idempotent. */ public String getClientToken() { return this.clientToken; } /** *

        * A unique token that guarantees that the call to this API is idempotent. *

        * * @param clientToken * A unique token that guarantees that the call to this API is idempotent. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withClientToken(String clientToken) { setClientToken(clientToken); return this; } /** *

        * The machine learning domain of your model package and its components. Common machine learning domains include * computer vision and natural language processing. *

        * * @param domain * The machine learning domain of your model package and its components. Common machine learning domains * include computer vision and natural language processing. */ public void setDomain(String domain) { this.domain = domain; } /** *

        * The machine learning domain of your model package and its components. Common machine learning domains include * computer vision and natural language processing. *

        * * @return The machine learning domain of your model package and its components. Common machine learning domains * include computer vision and natural language processing. */ public String getDomain() { return this.domain; } /** *

        * The machine learning domain of your model package and its components. Common machine learning domains include * computer vision and natural language processing. *

        * * @param domain * The machine learning domain of your model package and its components. Common machine learning domains * include computer vision and natural language processing. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withDomain(String domain) { setDomain(domain); return this; } /** *

        * The machine learning task your model package accomplishes. Common machine learning tasks include object detection * and image classification. The following tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | "TEXT_GENERATION" | * "IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER". *

        *

        * Specify "OTHER" if none of the tasks listed fit your use case. *

        * * @param task * The machine learning task your model package accomplishes. Common machine learning tasks include object * detection and image classification. The following tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | "TEXT_GENERATION" | * "IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

        *

        * Specify "OTHER" if none of the tasks listed fit your use case. */ public void setTask(String task) { this.task = task; } /** *

        * The machine learning task your model package accomplishes. Common machine learning tasks include object detection * and image classification. The following tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | "TEXT_GENERATION" | * "IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER". *

        *

        * Specify "OTHER" if none of the tasks listed fit your use case. *

        * * @return The machine learning task your model package accomplishes. Common machine learning tasks include object * detection and image classification. The following tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | "TEXT_GENERATION" | * "IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

        *

        * Specify "OTHER" if none of the tasks listed fit your use case. */ public String getTask() { return this.task; } /** *

        * The machine learning task your model package accomplishes. Common machine learning tasks include object detection * and image classification. The following tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | "TEXT_GENERATION" | * "IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER". *

        *

        * Specify "OTHER" if none of the tasks listed fit your use case. *

        * * @param task * The machine learning task your model package accomplishes. Common machine learning tasks include object * detection and image classification. The following tasks are supported by Inference Recommender: * "IMAGE_CLASSIFICATION" | "OBJECT_DETECTION" | "TEXT_GENERATION" | * "IMAGE_SEGMENTATION" | "FILL_MASK" | "CLASSIFICATION" | * "REGRESSION" | "OTHER".

        *

        * Specify "OTHER" if none of the tasks listed fit your use case. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withTask(String task) { setTask(task); return this; } /** *

        * The Amazon Simple Storage Service (Amazon S3) path where the sample payload is stored. This path must point to a * single gzip compressed tar archive (.tar.gz suffix). This archive can hold multiple files that are all equally * used in the load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint call. *

        * * @param samplePayloadUrl * The Amazon Simple Storage Service (Amazon S3) path where the sample payload is stored. This path must * point to a single gzip compressed tar archive (.tar.gz suffix). This archive can hold multiple files that * are all equally used in the load test. Each file in the archive must satisfy the size constraints of the * InvokeEndpoint call. */ public void setSamplePayloadUrl(String samplePayloadUrl) { this.samplePayloadUrl = samplePayloadUrl; } /** *

        * The Amazon Simple Storage Service (Amazon S3) path where the sample payload is stored. This path must point to a * single gzip compressed tar archive (.tar.gz suffix). This archive can hold multiple files that are all equally * used in the load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint call. *

        * * @return The Amazon Simple Storage Service (Amazon S3) path where the sample payload is stored. This path must * point to a single gzip compressed tar archive (.tar.gz suffix). This archive can hold multiple files that * are all equally used in the load test. Each file in the archive must satisfy the size constraints of the * InvokeEndpoint call. */ public String getSamplePayloadUrl() { return this.samplePayloadUrl; } /** *

        * The Amazon Simple Storage Service (Amazon S3) path where the sample payload is stored. This path must point to a * single gzip compressed tar archive (.tar.gz suffix). This archive can hold multiple files that are all equally * used in the load test. Each file in the archive must satisfy the size constraints of the InvokeEndpoint call. *

        * * @param samplePayloadUrl * The Amazon Simple Storage Service (Amazon S3) path where the sample payload is stored. This path must * point to a single gzip compressed tar archive (.tar.gz suffix). This archive can hold multiple files that * are all equally used in the load test. Each file in the archive must satisfy the size constraints of the * InvokeEndpoint call. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withSamplePayloadUrl(String samplePayloadUrl) { setSamplePayloadUrl(samplePayloadUrl); return this; } /** *

        * The metadata properties associated with the model package versions. *

        * * @return The metadata properties associated with the model package versions. */ public java.util.Map getCustomerMetadataProperties() { return customerMetadataProperties; } /** *

        * The metadata properties associated with the model package versions. *

        * * @param customerMetadataProperties * The metadata properties associated with the model package versions. */ public void setCustomerMetadataProperties(java.util.Map customerMetadataProperties) { this.customerMetadataProperties = customerMetadataProperties; } /** *

        * The metadata properties associated with the model package versions. *

        * * @param customerMetadataProperties * The metadata properties associated with the model package versions. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withCustomerMetadataProperties(java.util.Map customerMetadataProperties) { setCustomerMetadataProperties(customerMetadataProperties); return this; } /** * Add a single CustomerMetadataProperties entry * * @see CreateModelPackageRequest#withCustomerMetadataProperties * @returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest addCustomerMetadataPropertiesEntry(String key, String value) { if (null == this.customerMetadataProperties) { this.customerMetadataProperties = new java.util.HashMap(); } if (this.customerMetadataProperties.containsKey(key)) throw new IllegalArgumentException("Duplicated keys (" + key.toString() + ") are provided."); this.customerMetadataProperties.put(key, value); return this; } /** * Removes all the entries added into CustomerMetadataProperties. * * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest clearCustomerMetadataPropertiesEntries() { this.customerMetadataProperties = null; return this; } /** *

        * Represents the drift check baselines that can be used when the model monitor is set using the model package. For * more information, see the topic on Drift Detection against Previous Baselines in SageMaker Pipelines in the Amazon SageMaker Developer * Guide. *

        * * @param driftCheckBaselines * Represents the drift check baselines that can be used when the model monitor is set using the model * package. For more information, see the topic on Drift Detection against Previous Baselines in SageMaker Pipelines in the Amazon SageMaker * Developer Guide. */ public void setDriftCheckBaselines(DriftCheckBaselines driftCheckBaselines) { this.driftCheckBaselines = driftCheckBaselines; } /** *

        * Represents the drift check baselines that can be used when the model monitor is set using the model package. For * more information, see the topic on Drift Detection against Previous Baselines in SageMaker Pipelines in the Amazon SageMaker Developer * Guide. *

        * * @return Represents the drift check baselines that can be used when the model monitor is set using the model * package. For more information, see the topic on Drift Detection against Previous Baselines in SageMaker Pipelines in the Amazon SageMaker * Developer Guide. */ public DriftCheckBaselines getDriftCheckBaselines() { return this.driftCheckBaselines; } /** *

        * Represents the drift check baselines that can be used when the model monitor is set using the model package. For * more information, see the topic on Drift Detection against Previous Baselines in SageMaker Pipelines in the Amazon SageMaker Developer * Guide. *

        * * @param driftCheckBaselines * Represents the drift check baselines that can be used when the model monitor is set using the model * package. For more information, see the topic on Drift Detection against Previous Baselines in SageMaker Pipelines in the Amazon SageMaker * Developer Guide. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withDriftCheckBaselines(DriftCheckBaselines driftCheckBaselines) { setDriftCheckBaselines(driftCheckBaselines); return this; } /** *

        * An array of additional Inference Specification objects. 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. *

        * * @return An array of additional Inference Specification objects. 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. */ public java.util.List getAdditionalInferenceSpecifications() { return additionalInferenceSpecifications; } /** *

        * An array of additional Inference Specification objects. 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. *

        * * @param additionalInferenceSpecifications * An array of additional Inference Specification objects. 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. */ public void setAdditionalInferenceSpecifications(java.util.Collection additionalInferenceSpecifications) { if (additionalInferenceSpecifications == null) { this.additionalInferenceSpecifications = null; return; } this.additionalInferenceSpecifications = new java.util.ArrayList(additionalInferenceSpecifications); } /** *

        * An array of additional Inference Specification objects. 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. *

        *

        * NOTE: This method appends the values to the existing list (if any). Use * {@link #setAdditionalInferenceSpecifications(java.util.Collection)} or * {@link #withAdditionalInferenceSpecifications(java.util.Collection)} if you want to override the existing values. *

        * * @param additionalInferenceSpecifications * An array of additional Inference Specification objects. 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. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withAdditionalInferenceSpecifications(AdditionalInferenceSpecificationDefinition... additionalInferenceSpecifications) { if (this.additionalInferenceSpecifications == null) { setAdditionalInferenceSpecifications(new java.util.ArrayList(additionalInferenceSpecifications.length)); } for (AdditionalInferenceSpecificationDefinition ele : additionalInferenceSpecifications) { this.additionalInferenceSpecifications.add(ele); } return this; } /** *

        * An array of additional Inference Specification objects. 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. *

        * * @param additionalInferenceSpecifications * An array of additional Inference Specification objects. 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. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withAdditionalInferenceSpecifications( java.util.Collection additionalInferenceSpecifications) { setAdditionalInferenceSpecifications(additionalInferenceSpecifications); return this; } /** *

        * Indicates if you want to skip model validation. *

        * * @param skipModelValidation * Indicates if you want to skip model validation. * @see SkipModelValidation */ public void setSkipModelValidation(String skipModelValidation) { this.skipModelValidation = skipModelValidation; } /** *

        * Indicates if you want to skip model validation. *

        * * @return Indicates if you want to skip model validation. * @see SkipModelValidation */ public String getSkipModelValidation() { return this.skipModelValidation; } /** *

        * Indicates if you want to skip model validation. *

        * * @param skipModelValidation * Indicates if you want to skip model validation. * @return Returns a reference to this object so that method calls can be chained together. * @see SkipModelValidation */ public CreateModelPackageRequest withSkipModelValidation(String skipModelValidation) { setSkipModelValidation(skipModelValidation); return this; } /** *

        * Indicates if you want to skip model validation. *

        * * @param skipModelValidation * Indicates if you want to skip model validation. * @return Returns a reference to this object so that method calls can be chained together. * @see SkipModelValidation */ public CreateModelPackageRequest withSkipModelValidation(SkipModelValidation skipModelValidation) { this.skipModelValidation = skipModelValidation.toString(); return this; } /** *

        * The URI of the source for the model package. If you want to clone a model package, set it to the model package * Amazon Resource Name (ARN). If you want to register a model, set it to the model ARN. *

        * * @param sourceUri * The URI of the source for the model package. If you want to clone a model package, set it to the model * package Amazon Resource Name (ARN). If you want to register a model, set it to the model ARN. */ public void setSourceUri(String sourceUri) { this.sourceUri = sourceUri; } /** *

        * The URI of the source for the model package. If you want to clone a model package, set it to the model package * Amazon Resource Name (ARN). If you want to register a model, set it to the model ARN. *

        * * @return The URI of the source for the model package. If you want to clone a model package, set it to the model * package Amazon Resource Name (ARN). If you want to register a model, set it to the model ARN. */ public String getSourceUri() { return this.sourceUri; } /** *

        * The URI of the source for the model package. If you want to clone a model package, set it to the model package * Amazon Resource Name (ARN). If you want to register a model, set it to the model ARN. *

        * * @param sourceUri * The URI of the source for the model package. If you want to clone a model package, set it to the model * package Amazon Resource Name (ARN). If you want to register a model, set it to the model ARN. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withSourceUri(String sourceUri) { setSourceUri(sourceUri); return this; } /** *

        * The KMS Key ID (KMSKeyId) used for encryption of model package information. *

        * * @param securityConfig * The KMS Key ID (KMSKeyId) used for encryption of model package information. */ public void setSecurityConfig(ModelPackageSecurityConfig securityConfig) { this.securityConfig = securityConfig; } /** *

        * The KMS Key ID (KMSKeyId) used for encryption of model package information. *

        * * @return The KMS Key ID (KMSKeyId) used for encryption of model package information. */ public ModelPackageSecurityConfig getSecurityConfig() { return this.securityConfig; } /** *

        * The KMS Key ID (KMSKeyId) used for encryption of model package information. *

        * * @param securityConfig * The KMS Key ID (KMSKeyId) used for encryption of model package information. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withSecurityConfig(ModelPackageSecurityConfig securityConfig) { setSecurityConfig(securityConfig); return this; } /** *

        * 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. *

        * * @param modelCard * 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. */ public void setModelCard(ModelPackageModelCard modelCard) { this.modelCard = modelCard; } /** *

        * 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. *

        * * @return 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. */ public ModelPackageModelCard getModelCard() { return this.modelCard; } /** *

        * 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. *

        * * @param modelCard * 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. * @return Returns a reference to this object so that method calls can be chained together. */ public CreateModelPackageRequest withModelCard(ModelPackageModelCard modelCard) { setModelCard(modelCard); return this; } /** * Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be * redacted from this string using a placeholder value. * * @return A string representation of this object. * * @see java.lang.Object#toString() */ @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("{"); if (getModelPackageName() != null) sb.append("ModelPackageName: ").append(getModelPackageName()).append(","); if (getModelPackageGroupName() != null) sb.append("ModelPackageGroupName: ").append(getModelPackageGroupName()).append(","); if (getModelPackageDescription() != null) sb.append("ModelPackageDescription: ").append(getModelPackageDescription()).append(","); if (getInferenceSpecification() != null) sb.append("InferenceSpecification: ").append(getInferenceSpecification()).append(","); if (getValidationSpecification() != null) sb.append("ValidationSpecification: ").append(getValidationSpecification()).append(","); if (getSourceAlgorithmSpecification() != null) sb.append("SourceAlgorithmSpecification: ").append(getSourceAlgorithmSpecification()).append(","); if (getCertifyForMarketplace() != null) sb.append("CertifyForMarketplace: ").append(getCertifyForMarketplace()).append(","); if (getTags() != null) sb.append("Tags: ").append(getTags()).append(","); if (getModelApprovalStatus() != null) sb.append("ModelApprovalStatus: ").append(getModelApprovalStatus()).append(","); if (getMetadataProperties() != null) sb.append("MetadataProperties: ").append(getMetadataProperties()).append(","); if (getModelMetrics() != null) sb.append("ModelMetrics: ").append(getModelMetrics()).append(","); if (getClientToken() != null) sb.append("ClientToken: ").append(getClientToken()).append(","); if (getDomain() != null) sb.append("Domain: ").append(getDomain()).append(","); if (getTask() != null) sb.append("Task: ").append(getTask()).append(","); if (getSamplePayloadUrl() != null) sb.append("SamplePayloadUrl: ").append(getSamplePayloadUrl()).append(","); if (getCustomerMetadataProperties() != null) sb.append("CustomerMetadataProperties: ").append(getCustomerMetadataProperties()).append(","); if (getDriftCheckBaselines() != null) sb.append("DriftCheckBaselines: ").append(getDriftCheckBaselines()).append(","); if (getAdditionalInferenceSpecifications() != null) sb.append("AdditionalInferenceSpecifications: ").append(getAdditionalInferenceSpecifications()).append(","); if (getSkipModelValidation() != null) sb.append("SkipModelValidation: ").append(getSkipModelValidation()).append(","); if (getSourceUri() != null) sb.append("SourceUri: ").append(getSourceUri()).append(","); if (getSecurityConfig() != null) sb.append("SecurityConfig: ").append(getSecurityConfig()).append(","); if (getModelCard() != null) sb.append("ModelCard: ").append(getModelCard()); sb.append("}"); return sb.toString(); } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (obj instanceof CreateModelPackageRequest == false) return false; CreateModelPackageRequest other = (CreateModelPackageRequest) obj; if (other.getModelPackageName() == null ^ this.getModelPackageName() == null) return false; if (other.getModelPackageName() != null && other.getModelPackageName().equals(this.getModelPackageName()) == false) return false; if (other.getModelPackageGroupName() == null ^ this.getModelPackageGroupName() == null) return false; if (other.getModelPackageGroupName() != null && other.getModelPackageGroupName().equals(this.getModelPackageGroupName()) == false) return false; if (other.getModelPackageDescription() == null ^ this.getModelPackageDescription() == null) return false; if (other.getModelPackageDescription() != null && other.getModelPackageDescription().equals(this.getModelPackageDescription()) == false) return false; if (other.getInferenceSpecification() == null ^ this.getInferenceSpecification() == null) return false; if (other.getInferenceSpecification() != null && other.getInferenceSpecification().equals(this.getInferenceSpecification()) == false) return false; if (other.getValidationSpecification() == null ^ this.getValidationSpecification() == null) return false; if (other.getValidationSpecification() != null && other.getValidationSpecification().equals(this.getValidationSpecification()) == false) return false; if (other.getSourceAlgorithmSpecification() == null ^ this.getSourceAlgorithmSpecification() == null) return false; if (other.getSourceAlgorithmSpecification() != null && other.getSourceAlgorithmSpecification().equals(this.getSourceAlgorithmSpecification()) == false) return false; if (other.getCertifyForMarketplace() == null ^ this.getCertifyForMarketplace() == null) return false; if (other.getCertifyForMarketplace() != null && other.getCertifyForMarketplace().equals(this.getCertifyForMarketplace()) == false) return false; if (other.getTags() == null ^ this.getTags() == null) return false; if (other.getTags() != null && other.getTags().equals(this.getTags()) == false) return false; if (other.getModelApprovalStatus() == null ^ this.getModelApprovalStatus() == null) return false; if (other.getModelApprovalStatus() != null && other.getModelApprovalStatus().equals(this.getModelApprovalStatus()) == false) return false; if (other.getMetadataProperties() == null ^ this.getMetadataProperties() == null) return false; if (other.getMetadataProperties() != null && other.getMetadataProperties().equals(this.getMetadataProperties()) == false) return false; if (other.getModelMetrics() == null ^ this.getModelMetrics() == null) return false; if (other.getModelMetrics() != null && other.getModelMetrics().equals(this.getModelMetrics()) == false) return false; if (other.getClientToken() == null ^ this.getClientToken() == null) return false; if (other.getClientToken() != null && other.getClientToken().equals(this.getClientToken()) == false) return false; if (other.getDomain() == null ^ this.getDomain() == null) return false; if (other.getDomain() != null && other.getDomain().equals(this.getDomain()) == false) return false; if (other.getTask() == null ^ this.getTask() == null) return false; if (other.getTask() != null && other.getTask().equals(this.getTask()) == false) return false; if (other.getSamplePayloadUrl() == null ^ this.getSamplePayloadUrl() == null) return false; if (other.getSamplePayloadUrl() != null && other.getSamplePayloadUrl().equals(this.getSamplePayloadUrl()) == false) return false; if (other.getCustomerMetadataProperties() == null ^ this.getCustomerMetadataProperties() == null) return false; if (other.getCustomerMetadataProperties() != null && other.getCustomerMetadataProperties().equals(this.getCustomerMetadataProperties()) == false) return false; if (other.getDriftCheckBaselines() == null ^ this.getDriftCheckBaselines() == null) return false; if (other.getDriftCheckBaselines() != null && other.getDriftCheckBaselines().equals(this.getDriftCheckBaselines()) == false) return false; if (other.getAdditionalInferenceSpecifications() == null ^ this.getAdditionalInferenceSpecifications() == null) return false; if (other.getAdditionalInferenceSpecifications() != null && other.getAdditionalInferenceSpecifications().equals(this.getAdditionalInferenceSpecifications()) == false) return false; if (other.getSkipModelValidation() == null ^ this.getSkipModelValidation() == null) return false; if (other.getSkipModelValidation() != null && other.getSkipModelValidation().equals(this.getSkipModelValidation()) == false) return false; if (other.getSourceUri() == null ^ this.getSourceUri() == null) return false; if (other.getSourceUri() != null && other.getSourceUri().equals(this.getSourceUri()) == false) return false; if (other.getSecurityConfig() == null ^ this.getSecurityConfig() == null) return false; if (other.getSecurityConfig() != null && other.getSecurityConfig().equals(this.getSecurityConfig()) == false) return false; if (other.getModelCard() == null ^ this.getModelCard() == null) return false; if (other.getModelCard() != null && other.getModelCard().equals(this.getModelCard()) == false) return false; return true; } @Override public int hashCode() { final int prime = 31; int hashCode = 1; hashCode = prime * hashCode + ((getModelPackageName() == null) ? 0 : getModelPackageName().hashCode()); hashCode = prime * hashCode + ((getModelPackageGroupName() == null) ? 0 : getModelPackageGroupName().hashCode()); hashCode = prime * hashCode + ((getModelPackageDescription() == null) ? 0 : getModelPackageDescription().hashCode()); hashCode = prime * hashCode + ((getInferenceSpecification() == null) ? 0 : getInferenceSpecification().hashCode()); hashCode = prime * hashCode + ((getValidationSpecification() == null) ? 0 : getValidationSpecification().hashCode()); hashCode = prime * hashCode + ((getSourceAlgorithmSpecification() == null) ? 0 : getSourceAlgorithmSpecification().hashCode()); hashCode = prime * hashCode + ((getCertifyForMarketplace() == null) ? 0 : getCertifyForMarketplace().hashCode()); hashCode = prime * hashCode + ((getTags() == null) ? 0 : getTags().hashCode()); hashCode = prime * hashCode + ((getModelApprovalStatus() == null) ? 0 : getModelApprovalStatus().hashCode()); hashCode = prime * hashCode + ((getMetadataProperties() == null) ? 0 : getMetadataProperties().hashCode()); hashCode = prime * hashCode + ((getModelMetrics() == null) ? 0 : getModelMetrics().hashCode()); hashCode = prime * hashCode + ((getClientToken() == null) ? 0 : getClientToken().hashCode()); hashCode = prime * hashCode + ((getDomain() == null) ? 0 : getDomain().hashCode()); hashCode = prime * hashCode + ((getTask() == null) ? 0 : getTask().hashCode()); hashCode = prime * hashCode + ((getSamplePayloadUrl() == null) ? 0 : getSamplePayloadUrl().hashCode()); hashCode = prime * hashCode + ((getCustomerMetadataProperties() == null) ? 0 : getCustomerMetadataProperties().hashCode()); hashCode = prime * hashCode + ((getDriftCheckBaselines() == null) ? 0 : getDriftCheckBaselines().hashCode()); hashCode = prime * hashCode + ((getAdditionalInferenceSpecifications() == null) ? 0 : getAdditionalInferenceSpecifications().hashCode()); hashCode = prime * hashCode + ((getSkipModelValidation() == null) ? 0 : getSkipModelValidation().hashCode()); hashCode = prime * hashCode + ((getSourceUri() == null) ? 0 : getSourceUri().hashCode()); hashCode = prime * hashCode + ((getSecurityConfig() == null) ? 0 : getSecurityConfig().hashCode()); hashCode = prime * hashCode + ((getModelCard() == null) ? 0 : getModelCard().hashCode()); return hashCode; } @Override public CreateModelPackageRequest clone() { return (CreateModelPackageRequest) super.clone(); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy