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

software.amazon.awscdk.services.sagemaker.CfnModelCard Maven / Gradle / Ivy

There is a newer version: 1.204.0
Show newest version
package software.amazon.awscdk.services.sagemaker;

/**
 * A CloudFormation `AWS::SageMaker::ModelCard`.
 * 

* Creates an Amazon SageMaker Model Card. *

* For information about how to use model cards, see Amazon SageMaker Model Card . *

* Example: *

*

 * // The code below shows an example of how to instantiate this type.
 * // The values are placeholders you should change.
 * import software.amazon.awscdk.services.sagemaker.*;
 * Object value;
 * CfnModelCard cfnModelCard = CfnModelCard.Builder.create(this, "MyCfnModelCard")
 *         .content(ContentProperty.builder()
 *                 .additionalInformation(AdditionalInformationProperty.builder()
 *                         .caveatsAndRecommendations("caveatsAndRecommendations")
 *                         .customDetails(Map.of(
 *                                 "customDetailsKey", "customDetails"))
 *                         .ethicalConsiderations("ethicalConsiderations")
 *                         .build())
 *                 .businessDetails(BusinessDetailsProperty.builder()
 *                         .businessProblem("businessProblem")
 *                         .businessStakeholders("businessStakeholders")
 *                         .lineOfBusiness("lineOfBusiness")
 *                         .build())
 *                 .evaluationDetails(List.of(EvaluationDetailProperty.builder()
 *                         .name("name")
 *                         // the properties below are optional
 *                         .datasets(List.of("datasets"))
 *                         .evaluationJobArn("evaluationJobArn")
 *                         .evaluationObservation("evaluationObservation")
 *                         .metadata(Map.of(
 *                                 "metadataKey", "metadata"))
 *                         .metricGroups(List.of(MetricGroupProperty.builder()
 *                                 .metricData(List.of(MetricDataItemsProperty.builder()
 *                                         .name("name")
 *                                         .type("type")
 *                                         .value(value)
 *                                         // the properties below are optional
 *                                         .notes("notes")
 *                                         .xAxisName(List.of("xAxisName"))
 *                                         .yAxisName(List.of("yAxisName"))
 *                                         .build()))
 *                                 .name("name")
 *                                 .build()))
 *                         .build()))
 *                 .intendedUses(IntendedUsesProperty.builder()
 *                         .explanationsForRiskRating("explanationsForRiskRating")
 *                         .factorsAffectingModelEfficiency("factorsAffectingModelEfficiency")
 *                         .intendedUses("intendedUses")
 *                         .purposeOfModel("purposeOfModel")
 *                         .riskRating("riskRating")
 *                         .build())
 *                 .modelOverview(ModelOverviewProperty.builder()
 *                         .algorithmType("algorithmType")
 *                         .inferenceEnvironment(InferenceEnvironmentProperty.builder()
 *                                 .containerImage(List.of("containerImage"))
 *                                 .build())
 *                         .modelArtifact(List.of("modelArtifact"))
 *                         .modelCreator("modelCreator")
 *                         .modelDescription("modelDescription")
 *                         .modelId("modelId")
 *                         .modelName("modelName")
 *                         .modelOwner("modelOwner")
 *                         .modelVersion(123)
 *                         .problemType("problemType")
 *                         .build())
 *                 .modelPackageDetails(ModelPackageDetailsProperty.builder()
 *                         .approvalDescription("approvalDescription")
 *                         .createdBy(ModelPackageCreatorProperty.builder()
 *                                 .userProfileName("userProfileName")
 *                                 .build())
 *                         .domain("domain")
 *                         .inferenceSpecification(InferenceSpecificationProperty.builder()
 *                                 .containers(List.of(ContainerProperty.builder()
 *                                         .image("image")
 *                                         // the properties below are optional
 *                                         .modelDataUrl("modelDataUrl")
 *                                         .nearestModelName("nearestModelName")
 *                                         .build()))
 *                                 .build())
 *                         .modelApprovalStatus("modelApprovalStatus")
 *                         .modelPackageArn("modelPackageArn")
 *                         .modelPackageDescription("modelPackageDescription")
 *                         .modelPackageGroupName("modelPackageGroupName")
 *                         .modelPackageName("modelPackageName")
 *                         .modelPackageStatus("modelPackageStatus")
 *                         .modelPackageVersion(123)
 *                         .sourceAlgorithms(List.of(SourceAlgorithmProperty.builder()
 *                                 .algorithmName("algorithmName")
 *                                 // the properties below are optional
 *                                 .modelDataUrl("modelDataUrl")
 *                                 .build()))
 *                         .task("task")
 *                         .build())
 *                 .trainingDetails(TrainingDetailsProperty.builder()
 *                         .objectiveFunction(ObjectiveFunctionProperty.builder()
 *                                 .function(FunctionProperty.builder()
 *                                         .condition("condition")
 *                                         .facet("facet")
 *                                         .function("function")
 *                                         .build())
 *                                 .notes("notes")
 *                                 .build())
 *                         .trainingJobDetails(TrainingJobDetailsProperty.builder()
 *                                 .hyperParameters(List.of(TrainingHyperParameterProperty.builder()
 *                                         .name("name")
 *                                         .value("value")
 *                                         .build()))
 *                                 .trainingArn("trainingArn")
 *                                 .trainingDatasets(List.of("trainingDatasets"))
 *                                 .trainingEnvironment(TrainingEnvironmentProperty.builder()
 *                                         .containerImage(List.of("containerImage"))
 *                                         .build())
 *                                 .trainingMetrics(List.of(TrainingMetricProperty.builder()
 *                                         .name("name")
 *                                         .value(123)
 *                                         // the properties below are optional
 *                                         .notes("notes")
 *                                         .build()))
 *                                 .userProvidedHyperParameters(List.of(TrainingHyperParameterProperty.builder()
 *                                         .name("name")
 *                                         .value("value")
 *                                         .build()))
 *                                 .userProvidedTrainingMetrics(List.of(TrainingMetricProperty.builder()
 *                                         .name("name")
 *                                         .value(123)
 *                                         // the properties below are optional
 *                                         .notes("notes")
 *                                         .build()))
 *                                 .build())
 *                         .trainingObservations("trainingObservations")
 *                         .build())
 *                 .build())
 *         .modelCardName("modelCardName")
 *         .modelCardStatus("modelCardStatus")
 *         // the properties below are optional
 *         .createdBy(UserContextProperty.builder()
 *                 .domainId("domainId")
 *                 .userProfileArn("userProfileArn")
 *                 .userProfileName("userProfileName")
 *                 .build())
 *         .lastModifiedBy(UserContextProperty.builder()
 *                 .domainId("domainId")
 *                 .userProfileArn("userProfileArn")
 *                 .userProfileName("userProfileName")
 *                 .build())
 *         .securityConfig(SecurityConfigProperty.builder()
 *                 .kmsKeyId("kmsKeyId")
 *                 .build())
 *         .tags(List.of(CfnTag.builder()
 *                 .key("key")
 *                 .value("value")
 *                 .build()))
 *         .build();
 * 
*/ @javax.annotation.Generated(value = "jsii-pacmak/1.74.0 (build 6d08790)", date = "2023-05-19T23:09:22.620Z") @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard") public class CfnModelCard extends software.amazon.awscdk.core.CfnResource implements software.amazon.awscdk.core.IInspectable { protected CfnModelCard(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); } protected CfnModelCard(final software.amazon.jsii.JsiiObject.InitializationMode initializationMode) { super(initializationMode); } static { CFN_RESOURCE_TYPE_NAME = software.amazon.jsii.JsiiObject.jsiiStaticGet(software.amazon.awscdk.services.sagemaker.CfnModelCard.class, "CFN_RESOURCE_TYPE_NAME", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Create a new `AWS::SageMaker::ModelCard`. *

* @param scope - scope in which this resource is defined. This parameter is required. * @param id - scoped id of the resource. This parameter is required. * @param props - resource properties. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public CfnModelCard(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.core.Construct scope, final @org.jetbrains.annotations.NotNull java.lang.String id, final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.sagemaker.CfnModelCardProps props) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); software.amazon.jsii.JsiiEngine.getInstance().createNewObject(this, new Object[] { java.util.Objects.requireNonNull(scope, "scope is required"), java.util.Objects.requireNonNull(id, "id is required"), java.util.Objects.requireNonNull(props, "props is required") }); } /** * Examines the CloudFormation resource and discloses attributes. *

* @param inspector - tree inspector to collect and process attributes. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public void inspect(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.core.TreeInspector inspector) { software.amazon.jsii.Kernel.call(this, "inspect", software.amazon.jsii.NativeType.VOID, new Object[] { java.util.Objects.requireNonNull(inspector, "inspector is required") }); } /** * @param props This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override protected @org.jetbrains.annotations.NotNull java.util.Map renderProperties(final @org.jetbrains.annotations.NotNull java.util.Map props) { return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.call(this, "renderProperties", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)), new Object[] { java.util.Objects.requireNonNull(props, "props is required") })); } /** * The CloudFormation resource type name for this resource class. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public final static java.lang.String CFN_RESOURCE_TYPE_NAME; /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrCreatedByDomainId() { return software.amazon.jsii.Kernel.get(this, "attrCreatedByDomainId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrCreatedByUserProfileArn() { return software.amazon.jsii.Kernel.get(this, "attrCreatedByUserProfileArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrCreatedByUserProfileName() { return software.amazon.jsii.Kernel.get(this, "attrCreatedByUserProfileName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrCreationTime() { return software.amazon.jsii.Kernel.get(this, "attrCreationTime", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrLastModifiedByDomainId() { return software.amazon.jsii.Kernel.get(this, "attrLastModifiedByDomainId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrLastModifiedByUserProfileArn() { return software.amazon.jsii.Kernel.get(this, "attrLastModifiedByUserProfileArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrLastModifiedByUserProfileName() { return software.amazon.jsii.Kernel.get(this, "attrLastModifiedByUserProfileName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrLastModifiedTime() { return software.amazon.jsii.Kernel.get(this, "attrLastModifiedTime", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * The Amazon Resource Number (ARN) of the model card. *

* For example, arn:aws:sagemaker:us-west-2:012345678901:modelcard/examplemodelcard . */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrModelCardArn() { return software.amazon.jsii.Kernel.get(this, "attrModelCardArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getAttrModelCardProcessingStatus() { return software.amazon.jsii.Kernel.get(this, "attrModelCardProcessingStatus", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.Number getAttrModelCardVersion() { return software.amazon.jsii.Kernel.get(this, "attrModelCardVersion", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); } /** */ @Override @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) protected @org.jetbrains.annotations.NotNull java.util.Map getCfnProperties() { return java.util.Collections.unmodifiableMap(software.amazon.jsii.Kernel.get(this, "cfnProperties", software.amazon.jsii.NativeType.mapOf(software.amazon.jsii.NativeType.forClass(java.lang.Object.class)))); } /** * Key-value pairs used to manage metadata for the model card. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull software.amazon.awscdk.core.TagManager getTags() { return software.amazon.jsii.Kernel.get(this, "tags", software.amazon.jsii.NativeType.forClass(software.amazon.awscdk.core.TagManager.class)); } /** * The content of the model card. *

* Content uses the model card JSON schema . */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.Object getContent() { return software.amazon.jsii.Kernel.get(this, "content", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * The content of the model card. *

* Content uses the model card JSON schema . */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setContent(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "content", java.util.Objects.requireNonNull(value, "content is required")); } /** * The content of the model card. *

* Content uses the model card JSON schema . */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setContent(final @org.jetbrains.annotations.NotNull software.amazon.awscdk.services.sagemaker.CfnModelCard.ContentProperty value) { software.amazon.jsii.Kernel.set(this, "content", java.util.Objects.requireNonNull(value, "content is required")); } /** * The unique name of the model card. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getModelCardName() { return software.amazon.jsii.Kernel.get(this, "modelCardName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * The unique name of the model card. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setModelCardName(final @org.jetbrains.annotations.NotNull java.lang.String value) { software.amazon.jsii.Kernel.set(this, "modelCardName", java.util.Objects.requireNonNull(value, "modelCardName is required")); } /** * 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 should be made to the model card, but it can still be exported.
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.NotNull java.lang.String getModelCardStatus() { return software.amazon.jsii.Kernel.get(this, "modelCardStatus", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * 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 should be made to the model card, but it can still be exported.
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setModelCardStatus(final @org.jetbrains.annotations.NotNull java.lang.String value) { software.amazon.jsii.Kernel.set(this, "modelCardStatus", java.util.Objects.requireNonNull(value, "modelCardStatus is required")); } /** * Information about the user who created or modified one or more of the following:. *

*

    *
  • Experiment
  • *
  • Trial
  • *
  • Trial component
  • *
  • Lineage group
  • *
  • Project
  • *
  • Model Card
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.Nullable java.lang.Object getCreatedBy() { return software.amazon.jsii.Kernel.get(this, "createdBy", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Information about the user who created or modified one or more of the following:. *

*

    *
  • Experiment
  • *
  • Trial
  • *
  • Trial component
  • *
  • Lineage group
  • *
  • Project
  • *
  • Model Card
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setCreatedBy(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "createdBy", value); } /** * Information about the user who created or modified one or more of the following:. *

*

    *
  • Experiment
  • *
  • Trial
  • *
  • Trial component
  • *
  • Lineage group
  • *
  • Project
  • *
  • Model Card
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setCreatedBy(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.sagemaker.CfnModelCard.UserContextProperty value) { software.amazon.jsii.Kernel.set(this, "createdBy", value); } /** * `AWS::SageMaker::ModelCard.LastModifiedBy`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.Nullable java.lang.Object getLastModifiedBy() { return software.amazon.jsii.Kernel.get(this, "lastModifiedBy", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * `AWS::SageMaker::ModelCard.LastModifiedBy`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setLastModifiedBy(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "lastModifiedBy", value); } /** * `AWS::SageMaker::ModelCard.LastModifiedBy`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setLastModifiedBy(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.sagemaker.CfnModelCard.UserContextProperty value) { software.amazon.jsii.Kernel.set(this, "lastModifiedBy", value); } /** * The security configuration used to protect model card data. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public @org.jetbrains.annotations.Nullable java.lang.Object getSecurityConfig() { return software.amazon.jsii.Kernel.get(this, "securityConfig", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * The security configuration used to protect model card data. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setSecurityConfig(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.core.IResolvable value) { software.amazon.jsii.Kernel.set(this, "securityConfig", value); } /** * The security configuration used to protect model card data. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public void setSecurityConfig(final @org.jetbrains.annotations.Nullable software.amazon.awscdk.services.sagemaker.CfnModelCard.SecurityConfigProperty value) { software.amazon.jsii.Kernel.set(this, "securityConfig", value); } /** * Additional information about the model. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * AdditionalInformationProperty additionalInformationProperty = AdditionalInformationProperty.builder()
     *         .caveatsAndRecommendations("caveatsAndRecommendations")
     *         .customDetails(Map.of(
     *                 "customDetailsKey", "customDetails"))
     *         .ethicalConsiderations("ethicalConsiderations")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.AdditionalInformationProperty") @software.amazon.jsii.Jsii.Proxy(AdditionalInformationProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface AdditionalInformationProperty extends software.amazon.jsii.JsiiSerializable { /** * Caveats and recommendations for those who might use this model in their applications. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getCaveatsAndRecommendations() { return null; } /** * Any additional information to document about the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getCustomDetails() { return null; } /** * Any ethical considerations documented by the model card author. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getEthicalConsiderations() { return null; } /** * @return a {@link Builder} of {@link AdditionalInformationProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link AdditionalInformationProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String caveatsAndRecommendations; java.lang.Object customDetails; java.lang.String ethicalConsiderations; /** * Sets the value of {@link AdditionalInformationProperty#getCaveatsAndRecommendations} * @param caveatsAndRecommendations Caveats and recommendations for those who might use this model in their applications. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder caveatsAndRecommendations(java.lang.String caveatsAndRecommendations) { this.caveatsAndRecommendations = caveatsAndRecommendations; return this; } /** * Sets the value of {@link AdditionalInformationProperty#getCustomDetails} * @param customDetails Any additional information to document about the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder customDetails(software.amazon.awscdk.core.IResolvable customDetails) { this.customDetails = customDetails; return this; } /** * Sets the value of {@link AdditionalInformationProperty#getCustomDetails} * @param customDetails Any additional information to document about the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder customDetails(java.util.Map customDetails) { this.customDetails = customDetails; return this; } /** * Sets the value of {@link AdditionalInformationProperty#getEthicalConsiderations} * @param ethicalConsiderations Any ethical considerations documented by the model card author. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder ethicalConsiderations(java.lang.String ethicalConsiderations) { this.ethicalConsiderations = ethicalConsiderations; return this; } /** * Builds the configured instance. * @return a new instance of {@link AdditionalInformationProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public AdditionalInformationProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link AdditionalInformationProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements AdditionalInformationProperty { private final java.lang.String caveatsAndRecommendations; private final java.lang.Object customDetails; private final java.lang.String ethicalConsiderations; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.caveatsAndRecommendations = software.amazon.jsii.Kernel.get(this, "caveatsAndRecommendations", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.customDetails = software.amazon.jsii.Kernel.get(this, "customDetails", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.ethicalConsiderations = software.amazon.jsii.Kernel.get(this, "ethicalConsiderations", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.caveatsAndRecommendations = builder.caveatsAndRecommendations; this.customDetails = builder.customDetails; this.ethicalConsiderations = builder.ethicalConsiderations; } @Override public final java.lang.String getCaveatsAndRecommendations() { return this.caveatsAndRecommendations; } @Override public final java.lang.Object getCustomDetails() { return this.customDetails; } @Override public final java.lang.String getEthicalConsiderations() { return this.ethicalConsiderations; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getCaveatsAndRecommendations() != null) { data.set("caveatsAndRecommendations", om.valueToTree(this.getCaveatsAndRecommendations())); } if (this.getCustomDetails() != null) { data.set("customDetails", om.valueToTree(this.getCustomDetails())); } if (this.getEthicalConsiderations() != null) { data.set("ethicalConsiderations", om.valueToTree(this.getEthicalConsiderations())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.AdditionalInformationProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; AdditionalInformationProperty.Jsii$Proxy that = (AdditionalInformationProperty.Jsii$Proxy) o; if (this.caveatsAndRecommendations != null ? !this.caveatsAndRecommendations.equals(that.caveatsAndRecommendations) : that.caveatsAndRecommendations != null) return false; if (this.customDetails != null ? !this.customDetails.equals(that.customDetails) : that.customDetails != null) return false; return this.ethicalConsiderations != null ? this.ethicalConsiderations.equals(that.ethicalConsiderations) : that.ethicalConsiderations == null; } @Override public final int hashCode() { int result = this.caveatsAndRecommendations != null ? this.caveatsAndRecommendations.hashCode() : 0; result = 31 * result + (this.customDetails != null ? this.customDetails.hashCode() : 0); result = 31 * result + (this.ethicalConsiderations != null ? this.ethicalConsiderations.hashCode() : 0); return result; } } } /** * Information about how the model supports business goals. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * BusinessDetailsProperty businessDetailsProperty = BusinessDetailsProperty.builder()
     *         .businessProblem("businessProblem")
     *         .businessStakeholders("businessStakeholders")
     *         .lineOfBusiness("lineOfBusiness")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.BusinessDetailsProperty") @software.amazon.jsii.Jsii.Proxy(BusinessDetailsProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface BusinessDetailsProperty extends software.amazon.jsii.JsiiSerializable { /** * The specific business problem that the model is trying to solve. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getBusinessProblem() { return null; } /** * The relevant stakeholders for the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getBusinessStakeholders() { return null; } /** * The broader business need that the model is serving. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getLineOfBusiness() { return null; } /** * @return a {@link Builder} of {@link BusinessDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link BusinessDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String businessProblem; java.lang.String businessStakeholders; java.lang.String lineOfBusiness; /** * Sets the value of {@link BusinessDetailsProperty#getBusinessProblem} * @param businessProblem The specific business problem that the model is trying to solve. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder businessProblem(java.lang.String businessProblem) { this.businessProblem = businessProblem; return this; } /** * Sets the value of {@link BusinessDetailsProperty#getBusinessStakeholders} * @param businessStakeholders The relevant stakeholders for the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder businessStakeholders(java.lang.String businessStakeholders) { this.businessStakeholders = businessStakeholders; return this; } /** * Sets the value of {@link BusinessDetailsProperty#getLineOfBusiness} * @param lineOfBusiness The broader business need that the model is serving. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder lineOfBusiness(java.lang.String lineOfBusiness) { this.lineOfBusiness = lineOfBusiness; return this; } /** * Builds the configured instance. * @return a new instance of {@link BusinessDetailsProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public BusinessDetailsProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link BusinessDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements BusinessDetailsProperty { private final java.lang.String businessProblem; private final java.lang.String businessStakeholders; private final java.lang.String lineOfBusiness; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.businessProblem = software.amazon.jsii.Kernel.get(this, "businessProblem", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.businessStakeholders = software.amazon.jsii.Kernel.get(this, "businessStakeholders", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.lineOfBusiness = software.amazon.jsii.Kernel.get(this, "lineOfBusiness", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.businessProblem = builder.businessProblem; this.businessStakeholders = builder.businessStakeholders; this.lineOfBusiness = builder.lineOfBusiness; } @Override public final java.lang.String getBusinessProblem() { return this.businessProblem; } @Override public final java.lang.String getBusinessStakeholders() { return this.businessStakeholders; } @Override public final java.lang.String getLineOfBusiness() { return this.lineOfBusiness; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getBusinessProblem() != null) { data.set("businessProblem", om.valueToTree(this.getBusinessProblem())); } if (this.getBusinessStakeholders() != null) { data.set("businessStakeholders", om.valueToTree(this.getBusinessStakeholders())); } if (this.getLineOfBusiness() != null) { data.set("lineOfBusiness", om.valueToTree(this.getLineOfBusiness())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.BusinessDetailsProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; BusinessDetailsProperty.Jsii$Proxy that = (BusinessDetailsProperty.Jsii$Proxy) o; if (this.businessProblem != null ? !this.businessProblem.equals(that.businessProblem) : that.businessProblem != null) return false; if (this.businessStakeholders != null ? !this.businessStakeholders.equals(that.businessStakeholders) : that.businessStakeholders != null) return false; return this.lineOfBusiness != null ? this.lineOfBusiness.equals(that.lineOfBusiness) : that.lineOfBusiness == null; } @Override public final int hashCode() { int result = this.businessProblem != null ? this.businessProblem.hashCode() : 0; result = 31 * result + (this.businessStakeholders != null ? this.businessStakeholders.hashCode() : 0); result = 31 * result + (this.lineOfBusiness != null ? this.lineOfBusiness.hashCode() : 0); return result; } } } /** * Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * ContainerProperty containerProperty = ContainerProperty.builder()
     *         .image("image")
     *         // the properties below are optional
     *         .modelDataUrl("modelDataUrl")
     *         .nearestModelName("nearestModelName")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.ContainerProperty") @software.amazon.jsii.Jsii.Proxy(ContainerProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface ContainerProperty extends software.amazon.jsii.JsiiSerializable { /** * `CfnModelCard.ContainerProperty.Image`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getImage(); /** * `CfnModelCard.ContainerProperty.ModelDataUrl`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelDataUrl() { return null; } /** * `CfnModelCard.ContainerProperty.NearestModelName`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getNearestModelName() { return null; } /** * @return a {@link Builder} of {@link ContainerProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link ContainerProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String image; java.lang.String modelDataUrl; java.lang.String nearestModelName; /** * Sets the value of {@link ContainerProperty#getImage} * @param image `CfnModelCard.ContainerProperty.Image`. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder image(java.lang.String image) { this.image = image; return this; } /** * Sets the value of {@link ContainerProperty#getModelDataUrl} * @param modelDataUrl `CfnModelCard.ContainerProperty.ModelDataUrl`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelDataUrl(java.lang.String modelDataUrl) { this.modelDataUrl = modelDataUrl; return this; } /** * Sets the value of {@link ContainerProperty#getNearestModelName} * @param nearestModelName `CfnModelCard.ContainerProperty.NearestModelName`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder nearestModelName(java.lang.String nearestModelName) { this.nearestModelName = nearestModelName; return this; } /** * Builds the configured instance. * @return a new instance of {@link ContainerProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public ContainerProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link ContainerProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ContainerProperty { private final java.lang.String image; private final java.lang.String modelDataUrl; private final java.lang.String nearestModelName; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.image = software.amazon.jsii.Kernel.get(this, "image", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelDataUrl = software.amazon.jsii.Kernel.get(this, "modelDataUrl", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.nearestModelName = software.amazon.jsii.Kernel.get(this, "nearestModelName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.image = java.util.Objects.requireNonNull(builder.image, "image is required"); this.modelDataUrl = builder.modelDataUrl; this.nearestModelName = builder.nearestModelName; } @Override public final java.lang.String getImage() { return this.image; } @Override public final java.lang.String getModelDataUrl() { return this.modelDataUrl; } @Override public final java.lang.String getNearestModelName() { return this.nearestModelName; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("image", om.valueToTree(this.getImage())); if (this.getModelDataUrl() != null) { data.set("modelDataUrl", om.valueToTree(this.getModelDataUrl())); } if (this.getNearestModelName() != null) { data.set("nearestModelName", om.valueToTree(this.getNearestModelName())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.ContainerProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ContainerProperty.Jsii$Proxy that = (ContainerProperty.Jsii$Proxy) o; if (!image.equals(that.image)) return false; if (this.modelDataUrl != null ? !this.modelDataUrl.equals(that.modelDataUrl) : that.modelDataUrl != null) return false; return this.nearestModelName != null ? this.nearestModelName.equals(that.nearestModelName) : that.nearestModelName == null; } @Override public final int hashCode() { int result = this.image.hashCode(); result = 31 * result + (this.modelDataUrl != null ? this.modelDataUrl.hashCode() : 0); result = 31 * result + (this.nearestModelName != null ? this.nearestModelName.hashCode() : 0); return result; } } } /** * The content of the model card. *

* It follows the model card json schema . *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * Object value;
     * ContentProperty contentProperty = ContentProperty.builder()
     *         .additionalInformation(AdditionalInformationProperty.builder()
     *                 .caveatsAndRecommendations("caveatsAndRecommendations")
     *                 .customDetails(Map.of(
     *                         "customDetailsKey", "customDetails"))
     *                 .ethicalConsiderations("ethicalConsiderations")
     *                 .build())
     *         .businessDetails(BusinessDetailsProperty.builder()
     *                 .businessProblem("businessProblem")
     *                 .businessStakeholders("businessStakeholders")
     *                 .lineOfBusiness("lineOfBusiness")
     *                 .build())
     *         .evaluationDetails(List.of(EvaluationDetailProperty.builder()
     *                 .name("name")
     *                 // the properties below are optional
     *                 .datasets(List.of("datasets"))
     *                 .evaluationJobArn("evaluationJobArn")
     *                 .evaluationObservation("evaluationObservation")
     *                 .metadata(Map.of(
     *                         "metadataKey", "metadata"))
     *                 .metricGroups(List.of(MetricGroupProperty.builder()
     *                         .metricData(List.of(MetricDataItemsProperty.builder()
     *                                 .name("name")
     *                                 .type("type")
     *                                 .value(value)
     *                                 // the properties below are optional
     *                                 .notes("notes")
     *                                 .xAxisName(List.of("xAxisName"))
     *                                 .yAxisName(List.of("yAxisName"))
     *                                 .build()))
     *                         .name("name")
     *                         .build()))
     *                 .build()))
     *         .intendedUses(IntendedUsesProperty.builder()
     *                 .explanationsForRiskRating("explanationsForRiskRating")
     *                 .factorsAffectingModelEfficiency("factorsAffectingModelEfficiency")
     *                 .intendedUses("intendedUses")
     *                 .purposeOfModel("purposeOfModel")
     *                 .riskRating("riskRating")
     *                 .build())
     *         .modelOverview(ModelOverviewProperty.builder()
     *                 .algorithmType("algorithmType")
     *                 .inferenceEnvironment(InferenceEnvironmentProperty.builder()
     *                         .containerImage(List.of("containerImage"))
     *                         .build())
     *                 .modelArtifact(List.of("modelArtifact"))
     *                 .modelCreator("modelCreator")
     *                 .modelDescription("modelDescription")
     *                 .modelId("modelId")
     *                 .modelName("modelName")
     *                 .modelOwner("modelOwner")
     *                 .modelVersion(123)
     *                 .problemType("problemType")
     *                 .build())
     *         .modelPackageDetails(ModelPackageDetailsProperty.builder()
     *                 .approvalDescription("approvalDescription")
     *                 .createdBy(ModelPackageCreatorProperty.builder()
     *                         .userProfileName("userProfileName")
     *                         .build())
     *                 .domain("domain")
     *                 .inferenceSpecification(InferenceSpecificationProperty.builder()
     *                         .containers(List.of(ContainerProperty.builder()
     *                                 .image("image")
     *                                 // the properties below are optional
     *                                 .modelDataUrl("modelDataUrl")
     *                                 .nearestModelName("nearestModelName")
     *                                 .build()))
     *                         .build())
     *                 .modelApprovalStatus("modelApprovalStatus")
     *                 .modelPackageArn("modelPackageArn")
     *                 .modelPackageDescription("modelPackageDescription")
     *                 .modelPackageGroupName("modelPackageGroupName")
     *                 .modelPackageName("modelPackageName")
     *                 .modelPackageStatus("modelPackageStatus")
     *                 .modelPackageVersion(123)
     *                 .sourceAlgorithms(List.of(SourceAlgorithmProperty.builder()
     *                         .algorithmName("algorithmName")
     *                         // the properties below are optional
     *                         .modelDataUrl("modelDataUrl")
     *                         .build()))
     *                 .task("task")
     *                 .build())
     *         .trainingDetails(TrainingDetailsProperty.builder()
     *                 .objectiveFunction(ObjectiveFunctionProperty.builder()
     *                         .function(FunctionProperty.builder()
     *                                 .condition("condition")
     *                                 .facet("facet")
     *                                 .function("function")
     *                                 .build())
     *                         .notes("notes")
     *                         .build())
     *                 .trainingJobDetails(TrainingJobDetailsProperty.builder()
     *                         .hyperParameters(List.of(TrainingHyperParameterProperty.builder()
     *                                 .name("name")
     *                                 .value("value")
     *                                 .build()))
     *                         .trainingArn("trainingArn")
     *                         .trainingDatasets(List.of("trainingDatasets"))
     *                         .trainingEnvironment(TrainingEnvironmentProperty.builder()
     *                                 .containerImage(List.of("containerImage"))
     *                                 .build())
     *                         .trainingMetrics(List.of(TrainingMetricProperty.builder()
     *                                 .name("name")
     *                                 .value(123)
     *                                 // the properties below are optional
     *                                 .notes("notes")
     *                                 .build()))
     *                         .userProvidedHyperParameters(List.of(TrainingHyperParameterProperty.builder()
     *                                 .name("name")
     *                                 .value("value")
     *                                 .build()))
     *                         .userProvidedTrainingMetrics(List.of(TrainingMetricProperty.builder()
     *                                 .name("name")
     *                                 .value(123)
     *                                 // the properties below are optional
     *                                 .notes("notes")
     *                                 .build()))
     *                         .build())
     *                 .trainingObservations("trainingObservations")
     *                 .build())
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.ContentProperty") @software.amazon.jsii.Jsii.Proxy(ContentProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface ContentProperty extends software.amazon.jsii.JsiiSerializable { /** * Additional information about the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getAdditionalInformation() { return null; } /** * Information about how the model supports business goals. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getBusinessDetails() { return null; } /** * An overview about the model's evaluation. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getEvaluationDetails() { return null; } /** * The intended usage of the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getIntendedUses() { return null; } /** * An overview about the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getModelOverview() { return null; } /** * `CfnModelCard.ContentProperty.ModelPackageDetails`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getModelPackageDetails() { return null; } /** * An overview about model training. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getTrainingDetails() { return null; } /** * @return a {@link Builder} of {@link ContentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link ContentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object additionalInformation; java.lang.Object businessDetails; java.lang.Object evaluationDetails; java.lang.Object intendedUses; java.lang.Object modelOverview; java.lang.Object modelPackageDetails; java.lang.Object trainingDetails; /** * Sets the value of {@link ContentProperty#getAdditionalInformation} * @param additionalInformation Additional information about the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder additionalInformation(software.amazon.awscdk.core.IResolvable additionalInformation) { this.additionalInformation = additionalInformation; return this; } /** * Sets the value of {@link ContentProperty#getAdditionalInformation} * @param additionalInformation Additional information about the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder additionalInformation(software.amazon.awscdk.services.sagemaker.CfnModelCard.AdditionalInformationProperty additionalInformation) { this.additionalInformation = additionalInformation; return this; } /** * Sets the value of {@link ContentProperty#getBusinessDetails} * @param businessDetails Information about how the model supports business goals. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder businessDetails(software.amazon.awscdk.core.IResolvable businessDetails) { this.businessDetails = businessDetails; return this; } /** * Sets the value of {@link ContentProperty#getBusinessDetails} * @param businessDetails Information about how the model supports business goals. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder businessDetails(software.amazon.awscdk.services.sagemaker.CfnModelCard.BusinessDetailsProperty businessDetails) { this.businessDetails = businessDetails; return this; } /** * Sets the value of {@link ContentProperty#getEvaluationDetails} * @param evaluationDetails An overview about the model's evaluation. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder evaluationDetails(software.amazon.awscdk.core.IResolvable evaluationDetails) { this.evaluationDetails = evaluationDetails; return this; } /** * Sets the value of {@link ContentProperty#getEvaluationDetails} * @param evaluationDetails An overview about the model's evaluation. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder evaluationDetails(java.util.List evaluationDetails) { this.evaluationDetails = evaluationDetails; return this; } /** * Sets the value of {@link ContentProperty#getIntendedUses} * @param intendedUses The intended usage of the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder intendedUses(software.amazon.awscdk.core.IResolvable intendedUses) { this.intendedUses = intendedUses; return this; } /** * Sets the value of {@link ContentProperty#getIntendedUses} * @param intendedUses The intended usage of the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder intendedUses(software.amazon.awscdk.services.sagemaker.CfnModelCard.IntendedUsesProperty intendedUses) { this.intendedUses = intendedUses; return this; } /** * Sets the value of {@link ContentProperty#getModelOverview} * @param modelOverview An overview about the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelOverview(software.amazon.awscdk.core.IResolvable modelOverview) { this.modelOverview = modelOverview; return this; } /** * Sets the value of {@link ContentProperty#getModelOverview} * @param modelOverview An overview about the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelOverview(software.amazon.awscdk.services.sagemaker.CfnModelCard.ModelOverviewProperty modelOverview) { this.modelOverview = modelOverview; return this; } /** * Sets the value of {@link ContentProperty#getModelPackageDetails} * @param modelPackageDetails `CfnModelCard.ContentProperty.ModelPackageDetails`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelPackageDetails(software.amazon.awscdk.core.IResolvable modelPackageDetails) { this.modelPackageDetails = modelPackageDetails; return this; } /** * Sets the value of {@link ContentProperty#getModelPackageDetails} * @param modelPackageDetails `CfnModelCard.ContentProperty.ModelPackageDetails`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelPackageDetails(software.amazon.awscdk.services.sagemaker.CfnModelCard.ModelPackageDetailsProperty modelPackageDetails) { this.modelPackageDetails = modelPackageDetails; return this; } /** * Sets the value of {@link ContentProperty#getTrainingDetails} * @param trainingDetails An overview about model training. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingDetails(software.amazon.awscdk.core.IResolvable trainingDetails) { this.trainingDetails = trainingDetails; return this; } /** * Sets the value of {@link ContentProperty#getTrainingDetails} * @param trainingDetails An overview about model training. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingDetails(software.amazon.awscdk.services.sagemaker.CfnModelCard.TrainingDetailsProperty trainingDetails) { this.trainingDetails = trainingDetails; return this; } /** * Builds the configured instance. * @return a new instance of {@link ContentProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public ContentProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link ContentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ContentProperty { private final java.lang.Object additionalInformation; private final java.lang.Object businessDetails; private final java.lang.Object evaluationDetails; private final java.lang.Object intendedUses; private final java.lang.Object modelOverview; private final java.lang.Object modelPackageDetails; private final java.lang.Object trainingDetails; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.additionalInformation = software.amazon.jsii.Kernel.get(this, "additionalInformation", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.businessDetails = software.amazon.jsii.Kernel.get(this, "businessDetails", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.evaluationDetails = software.amazon.jsii.Kernel.get(this, "evaluationDetails", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.intendedUses = software.amazon.jsii.Kernel.get(this, "intendedUses", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.modelOverview = software.amazon.jsii.Kernel.get(this, "modelOverview", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.modelPackageDetails = software.amazon.jsii.Kernel.get(this, "modelPackageDetails", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.trainingDetails = software.amazon.jsii.Kernel.get(this, "trainingDetails", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.additionalInformation = builder.additionalInformation; this.businessDetails = builder.businessDetails; this.evaluationDetails = builder.evaluationDetails; this.intendedUses = builder.intendedUses; this.modelOverview = builder.modelOverview; this.modelPackageDetails = builder.modelPackageDetails; this.trainingDetails = builder.trainingDetails; } @Override public final java.lang.Object getAdditionalInformation() { return this.additionalInformation; } @Override public final java.lang.Object getBusinessDetails() { return this.businessDetails; } @Override public final java.lang.Object getEvaluationDetails() { return this.evaluationDetails; } @Override public final java.lang.Object getIntendedUses() { return this.intendedUses; } @Override public final java.lang.Object getModelOverview() { return this.modelOverview; } @Override public final java.lang.Object getModelPackageDetails() { return this.modelPackageDetails; } @Override public final java.lang.Object getTrainingDetails() { return this.trainingDetails; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getAdditionalInformation() != null) { data.set("additionalInformation", om.valueToTree(this.getAdditionalInformation())); } if (this.getBusinessDetails() != null) { data.set("businessDetails", om.valueToTree(this.getBusinessDetails())); } if (this.getEvaluationDetails() != null) { data.set("evaluationDetails", om.valueToTree(this.getEvaluationDetails())); } if (this.getIntendedUses() != null) { data.set("intendedUses", om.valueToTree(this.getIntendedUses())); } if (this.getModelOverview() != null) { data.set("modelOverview", om.valueToTree(this.getModelOverview())); } if (this.getModelPackageDetails() != null) { data.set("modelPackageDetails", om.valueToTree(this.getModelPackageDetails())); } if (this.getTrainingDetails() != null) { data.set("trainingDetails", om.valueToTree(this.getTrainingDetails())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.ContentProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ContentProperty.Jsii$Proxy that = (ContentProperty.Jsii$Proxy) o; if (this.additionalInformation != null ? !this.additionalInformation.equals(that.additionalInformation) : that.additionalInformation != null) return false; if (this.businessDetails != null ? !this.businessDetails.equals(that.businessDetails) : that.businessDetails != null) return false; if (this.evaluationDetails != null ? !this.evaluationDetails.equals(that.evaluationDetails) : that.evaluationDetails != null) return false; if (this.intendedUses != null ? !this.intendedUses.equals(that.intendedUses) : that.intendedUses != null) return false; if (this.modelOverview != null ? !this.modelOverview.equals(that.modelOverview) : that.modelOverview != null) return false; if (this.modelPackageDetails != null ? !this.modelPackageDetails.equals(that.modelPackageDetails) : that.modelPackageDetails != null) return false; return this.trainingDetails != null ? this.trainingDetails.equals(that.trainingDetails) : that.trainingDetails == null; } @Override public final int hashCode() { int result = this.additionalInformation != null ? this.additionalInformation.hashCode() : 0; result = 31 * result + (this.businessDetails != null ? this.businessDetails.hashCode() : 0); result = 31 * result + (this.evaluationDetails != null ? this.evaluationDetails.hashCode() : 0); result = 31 * result + (this.intendedUses != null ? this.intendedUses.hashCode() : 0); result = 31 * result + (this.modelOverview != null ? this.modelOverview.hashCode() : 0); result = 31 * result + (this.modelPackageDetails != null ? this.modelPackageDetails.hashCode() : 0); result = 31 * result + (this.trainingDetails != null ? this.trainingDetails.hashCode() : 0); return result; } } } /** * The evaluation details of the model. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * Object value;
     * EvaluationDetailProperty evaluationDetailProperty = EvaluationDetailProperty.builder()
     *         .name("name")
     *         // the properties below are optional
     *         .datasets(List.of("datasets"))
     *         .evaluationJobArn("evaluationJobArn")
     *         .evaluationObservation("evaluationObservation")
     *         .metadata(Map.of(
     *                 "metadataKey", "metadata"))
     *         .metricGroups(List.of(MetricGroupProperty.builder()
     *                 .metricData(List.of(MetricDataItemsProperty.builder()
     *                         .name("name")
     *                         .type("type")
     *                         .value(value)
     *                         // the properties below are optional
     *                         .notes("notes")
     *                         .xAxisName(List.of("xAxisName"))
     *                         .yAxisName(List.of("yAxisName"))
     *                         .build()))
     *                 .name("name")
     *                 .build()))
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.EvaluationDetailProperty") @software.amazon.jsii.Jsii.Proxy(EvaluationDetailProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface EvaluationDetailProperty extends software.amazon.jsii.JsiiSerializable { /** * The evaluation job name. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getName(); /** * The location of the datasets used to evaluate the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getDatasets() { return null; } /** * The Amazon Resource Name (ARN) of the evaluation job. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getEvaluationJobArn() { return null; } /** * Any observations made during the model evaluation. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getEvaluationObservation() { return null; } /** * Additional attributes associated with the evaluation results. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getMetadata() { return null; } /** * An evaluation Metric Group object. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getMetricGroups() { return null; } /** * @return a {@link Builder} of {@link EvaluationDetailProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link EvaluationDetailProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String name; java.util.List datasets; java.lang.String evaluationJobArn; java.lang.String evaluationObservation; java.lang.Object metadata; java.lang.Object metricGroups; /** * Sets the value of {@link EvaluationDetailProperty#getName} * @param name The evaluation job name. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder name(java.lang.String name) { this.name = name; return this; } /** * Sets the value of {@link EvaluationDetailProperty#getDatasets} * @param datasets The location of the datasets used to evaluate the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder datasets(java.util.List datasets) { this.datasets = datasets; return this; } /** * Sets the value of {@link EvaluationDetailProperty#getEvaluationJobArn} * @param evaluationJobArn The Amazon Resource Name (ARN) of the evaluation job. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder evaluationJobArn(java.lang.String evaluationJobArn) { this.evaluationJobArn = evaluationJobArn; return this; } /** * Sets the value of {@link EvaluationDetailProperty#getEvaluationObservation} * @param evaluationObservation Any observations made during the model evaluation. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder evaluationObservation(java.lang.String evaluationObservation) { this.evaluationObservation = evaluationObservation; return this; } /** * Sets the value of {@link EvaluationDetailProperty#getMetadata} * @param metadata Additional attributes associated with the evaluation results. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder metadata(software.amazon.awscdk.core.IResolvable metadata) { this.metadata = metadata; return this; } /** * Sets the value of {@link EvaluationDetailProperty#getMetadata} * @param metadata Additional attributes associated with the evaluation results. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder metadata(java.util.Map metadata) { this.metadata = metadata; return this; } /** * Sets the value of {@link EvaluationDetailProperty#getMetricGroups} * @param metricGroups An evaluation Metric Group object. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder metricGroups(software.amazon.awscdk.core.IResolvable metricGroups) { this.metricGroups = metricGroups; return this; } /** * Sets the value of {@link EvaluationDetailProperty#getMetricGroups} * @param metricGroups An evaluation Metric Group object. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder metricGroups(java.util.List metricGroups) { this.metricGroups = metricGroups; return this; } /** * Builds the configured instance. * @return a new instance of {@link EvaluationDetailProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public EvaluationDetailProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link EvaluationDetailProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements EvaluationDetailProperty { private final java.lang.String name; private final java.util.List datasets; private final java.lang.String evaluationJobArn; private final java.lang.String evaluationObservation; private final java.lang.Object metadata; private final java.lang.Object metricGroups; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.datasets = software.amazon.jsii.Kernel.get(this, "datasets", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.evaluationJobArn = software.amazon.jsii.Kernel.get(this, "evaluationJobArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.evaluationObservation = software.amazon.jsii.Kernel.get(this, "evaluationObservation", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.metadata = software.amazon.jsii.Kernel.get(this, "metadata", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.metricGroups = software.amazon.jsii.Kernel.get(this, "metricGroups", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.name = java.util.Objects.requireNonNull(builder.name, "name is required"); this.datasets = builder.datasets; this.evaluationJobArn = builder.evaluationJobArn; this.evaluationObservation = builder.evaluationObservation; this.metadata = builder.metadata; this.metricGroups = builder.metricGroups; } @Override public final java.lang.String getName() { return this.name; } @Override public final java.util.List getDatasets() { return this.datasets; } @Override public final java.lang.String getEvaluationJobArn() { return this.evaluationJobArn; } @Override public final java.lang.String getEvaluationObservation() { return this.evaluationObservation; } @Override public final java.lang.Object getMetadata() { return this.metadata; } @Override public final java.lang.Object getMetricGroups() { return this.metricGroups; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("name", om.valueToTree(this.getName())); if (this.getDatasets() != null) { data.set("datasets", om.valueToTree(this.getDatasets())); } if (this.getEvaluationJobArn() != null) { data.set("evaluationJobArn", om.valueToTree(this.getEvaluationJobArn())); } if (this.getEvaluationObservation() != null) { data.set("evaluationObservation", om.valueToTree(this.getEvaluationObservation())); } if (this.getMetadata() != null) { data.set("metadata", om.valueToTree(this.getMetadata())); } if (this.getMetricGroups() != null) { data.set("metricGroups", om.valueToTree(this.getMetricGroups())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.EvaluationDetailProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; EvaluationDetailProperty.Jsii$Proxy that = (EvaluationDetailProperty.Jsii$Proxy) o; if (!name.equals(that.name)) return false; if (this.datasets != null ? !this.datasets.equals(that.datasets) : that.datasets != null) return false; if (this.evaluationJobArn != null ? !this.evaluationJobArn.equals(that.evaluationJobArn) : that.evaluationJobArn != null) return false; if (this.evaluationObservation != null ? !this.evaluationObservation.equals(that.evaluationObservation) : that.evaluationObservation != null) return false; if (this.metadata != null ? !this.metadata.equals(that.metadata) : that.metadata != null) return false; return this.metricGroups != null ? this.metricGroups.equals(that.metricGroups) : that.metricGroups == null; } @Override public final int hashCode() { int result = this.name.hashCode(); result = 31 * result + (this.datasets != null ? this.datasets.hashCode() : 0); result = 31 * result + (this.evaluationJobArn != null ? this.evaluationJobArn.hashCode() : 0); result = 31 * result + (this.evaluationObservation != null ? this.evaluationObservation.hashCode() : 0); result = 31 * result + (this.metadata != null ? this.metadata.hashCode() : 0); result = 31 * result + (this.metricGroups != null ? this.metricGroups.hashCode() : 0); return result; } } } /** * Function details. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * FunctionProperty functionProperty = FunctionProperty.builder()
     *         .condition("condition")
     *         .facet("facet")
     *         .function("function")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.FunctionProperty") @software.amazon.jsii.Jsii.Proxy(FunctionProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface FunctionProperty extends software.amazon.jsii.JsiiSerializable { /** * An optional description of any conditions of your objective function metric. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getCondition() { return null; } /** * The metric of the model's objective function. *

* For example, loss or rmse . The following list shows examples of the values that you can specify for the metric: *

*

    *
  • ACCURACY
  • *
  • AUC
  • *
  • LOSS
  • *
  • MAE
  • *
  • RMSE
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getFacet() { return null; } /** * The optimization direction of the model's objective function. You must specify one of the following values:. *

*

    *
  • Maximize
  • *
  • Minimize
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getFunction() { return null; } /** * @return a {@link Builder} of {@link FunctionProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link FunctionProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String condition; java.lang.String facet; java.lang.String function; /** * Sets the value of {@link FunctionProperty#getCondition} * @param condition An optional description of any conditions of your objective function metric. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder condition(java.lang.String condition) { this.condition = condition; return this; } /** * Sets the value of {@link FunctionProperty#getFacet} * @param facet The metric of the model's objective function. * For example, loss or rmse . The following list shows examples of the values that you can specify for the metric: *

*

    *
  • ACCURACY
  • *
  • AUC
  • *
  • LOSS
  • *
  • MAE
  • *
  • RMSE
  • *
* @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder facet(java.lang.String facet) { this.facet = facet; return this; } /** * Sets the value of {@link FunctionProperty#getFunction} * @param function The optimization direction of the model's objective function. You must specify one of the following values:. *
    *
  • Maximize
  • *
  • Minimize
  • *
* @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder function(java.lang.String function) { this.function = function; return this; } /** * Builds the configured instance. * @return a new instance of {@link FunctionProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public FunctionProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link FunctionProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements FunctionProperty { private final java.lang.String condition; private final java.lang.String facet; private final java.lang.String function; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.condition = software.amazon.jsii.Kernel.get(this, "condition", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.facet = software.amazon.jsii.Kernel.get(this, "facet", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.function = software.amazon.jsii.Kernel.get(this, "function", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.condition = builder.condition; this.facet = builder.facet; this.function = builder.function; } @Override public final java.lang.String getCondition() { return this.condition; } @Override public final java.lang.String getFacet() { return this.facet; } @Override public final java.lang.String getFunction() { return this.function; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getCondition() != null) { data.set("condition", om.valueToTree(this.getCondition())); } if (this.getFacet() != null) { data.set("facet", om.valueToTree(this.getFacet())); } if (this.getFunction() != null) { data.set("function", om.valueToTree(this.getFunction())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.FunctionProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; FunctionProperty.Jsii$Proxy that = (FunctionProperty.Jsii$Proxy) o; if (this.condition != null ? !this.condition.equals(that.condition) : that.condition != null) return false; if (this.facet != null ? !this.facet.equals(that.facet) : that.facet != null) return false; return this.function != null ? this.function.equals(that.function) : that.function == null; } @Override public final int hashCode() { int result = this.condition != null ? this.condition.hashCode() : 0; result = 31 * result + (this.facet != null ? this.facet.hashCode() : 0); result = 31 * result + (this.function != null ? this.function.hashCode() : 0); return result; } } } /** * An overview of a model's inference environment. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * InferenceEnvironmentProperty inferenceEnvironmentProperty = InferenceEnvironmentProperty.builder()
     *         .containerImage(List.of("containerImage"))
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.InferenceEnvironmentProperty") @software.amazon.jsii.Jsii.Proxy(InferenceEnvironmentProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface InferenceEnvironmentProperty extends software.amazon.jsii.JsiiSerializable { /** * The container used to run the inference environment. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getContainerImage() { return null; } /** * @return a {@link Builder} of {@link InferenceEnvironmentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link InferenceEnvironmentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.util.List containerImage; /** * Sets the value of {@link InferenceEnvironmentProperty#getContainerImage} * @param containerImage The container used to run the inference environment. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder containerImage(java.util.List containerImage) { this.containerImage = containerImage; return this; } /** * Builds the configured instance. * @return a new instance of {@link InferenceEnvironmentProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public InferenceEnvironmentProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link InferenceEnvironmentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements InferenceEnvironmentProperty { private final java.util.List containerImage; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.containerImage = software.amazon.jsii.Kernel.get(this, "containerImage", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.containerImage = builder.containerImage; } @Override public final java.util.List getContainerImage() { return this.containerImage; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getContainerImage() != null) { data.set("containerImage", om.valueToTree(this.getContainerImage())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.InferenceEnvironmentProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; InferenceEnvironmentProperty.Jsii$Proxy that = (InferenceEnvironmentProperty.Jsii$Proxy) o; return this.containerImage != null ? this.containerImage.equals(that.containerImage) : that.containerImage == null; } @Override public final int hashCode() { int result = this.containerImage != null ? this.containerImage.hashCode() : 0; return result; } } } /** * Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * InferenceSpecificationProperty inferenceSpecificationProperty = InferenceSpecificationProperty.builder()
     *         .containers(List.of(ContainerProperty.builder()
     *                 .image("image")
     *                 // the properties below are optional
     *                 .modelDataUrl("modelDataUrl")
     *                 .nearestModelName("nearestModelName")
     *                 .build()))
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.InferenceSpecificationProperty") @software.amazon.jsii.Jsii.Proxy(InferenceSpecificationProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface InferenceSpecificationProperty extends software.amazon.jsii.JsiiSerializable { /** * `CfnModelCard.InferenceSpecificationProperty.Containers`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.Object getContainers(); /** * @return a {@link Builder} of {@link InferenceSpecificationProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link InferenceSpecificationProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object containers; /** * Sets the value of {@link InferenceSpecificationProperty#getContainers} * @param containers `CfnModelCard.InferenceSpecificationProperty.Containers`. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder containers(software.amazon.awscdk.core.IResolvable containers) { this.containers = containers; return this; } /** * Sets the value of {@link InferenceSpecificationProperty#getContainers} * @param containers `CfnModelCard.InferenceSpecificationProperty.Containers`. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder containers(java.util.List containers) { this.containers = containers; return this; } /** * Builds the configured instance. * @return a new instance of {@link InferenceSpecificationProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public InferenceSpecificationProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link InferenceSpecificationProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements InferenceSpecificationProperty { private final java.lang.Object containers; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.containers = software.amazon.jsii.Kernel.get(this, "containers", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.containers = java.util.Objects.requireNonNull(builder.containers, "containers is required"); } @Override public final java.lang.Object getContainers() { return this.containers; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("containers", om.valueToTree(this.getContainers())); final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.InferenceSpecificationProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; InferenceSpecificationProperty.Jsii$Proxy that = (InferenceSpecificationProperty.Jsii$Proxy) o; return this.containers.equals(that.containers); } @Override public final int hashCode() { int result = this.containers.hashCode(); return result; } } } /** * The intended uses of a model. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * IntendedUsesProperty intendedUsesProperty = IntendedUsesProperty.builder()
     *         .explanationsForRiskRating("explanationsForRiskRating")
     *         .factorsAffectingModelEfficiency("factorsAffectingModelEfficiency")
     *         .intendedUses("intendedUses")
     *         .purposeOfModel("purposeOfModel")
     *         .riskRating("riskRating")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.IntendedUsesProperty") @software.amazon.jsii.Jsii.Proxy(IntendedUsesProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface IntendedUsesProperty extends software.amazon.jsii.JsiiSerializable { /** * An explanation of why your organization categorizes the model with its risk rating. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getExplanationsForRiskRating() { return null; } /** * Factors affecting model efficacy. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getFactorsAffectingModelEfficiency() { return null; } /** * The intended use cases for the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getIntendedUses() { return null; } /** * The general purpose of the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getPurposeOfModel() { return null; } /** * Your organization's risk rating. You can specify one the following values as the risk rating:. *

*

    *
  • High
  • *
  • Medium
  • *
  • Low
  • *
  • Unknown
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getRiskRating() { return null; } /** * @return a {@link Builder} of {@link IntendedUsesProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link IntendedUsesProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String explanationsForRiskRating; java.lang.String factorsAffectingModelEfficiency; java.lang.String intendedUses; java.lang.String purposeOfModel; java.lang.String riskRating; /** * Sets the value of {@link IntendedUsesProperty#getExplanationsForRiskRating} * @param explanationsForRiskRating An explanation of why your organization categorizes the model with its risk rating. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder explanationsForRiskRating(java.lang.String explanationsForRiskRating) { this.explanationsForRiskRating = explanationsForRiskRating; return this; } /** * Sets the value of {@link IntendedUsesProperty#getFactorsAffectingModelEfficiency} * @param factorsAffectingModelEfficiency Factors affecting model efficacy. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder factorsAffectingModelEfficiency(java.lang.String factorsAffectingModelEfficiency) { this.factorsAffectingModelEfficiency = factorsAffectingModelEfficiency; return this; } /** * Sets the value of {@link IntendedUsesProperty#getIntendedUses} * @param intendedUses The intended use cases for the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder intendedUses(java.lang.String intendedUses) { this.intendedUses = intendedUses; return this; } /** * Sets the value of {@link IntendedUsesProperty#getPurposeOfModel} * @param purposeOfModel The general purpose of the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder purposeOfModel(java.lang.String purposeOfModel) { this.purposeOfModel = purposeOfModel; return this; } /** * Sets the value of {@link IntendedUsesProperty#getRiskRating} * @param riskRating Your organization's risk rating. You can specify one the following values as the risk rating:. *
    *
  • High
  • *
  • Medium
  • *
  • Low
  • *
  • Unknown
  • *
* @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder riskRating(java.lang.String riskRating) { this.riskRating = riskRating; return this; } /** * Builds the configured instance. * @return a new instance of {@link IntendedUsesProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public IntendedUsesProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link IntendedUsesProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements IntendedUsesProperty { private final java.lang.String explanationsForRiskRating; private final java.lang.String factorsAffectingModelEfficiency; private final java.lang.String intendedUses; private final java.lang.String purposeOfModel; private final java.lang.String riskRating; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.explanationsForRiskRating = software.amazon.jsii.Kernel.get(this, "explanationsForRiskRating", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.factorsAffectingModelEfficiency = software.amazon.jsii.Kernel.get(this, "factorsAffectingModelEfficiency", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.intendedUses = software.amazon.jsii.Kernel.get(this, "intendedUses", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.purposeOfModel = software.amazon.jsii.Kernel.get(this, "purposeOfModel", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.riskRating = software.amazon.jsii.Kernel.get(this, "riskRating", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.explanationsForRiskRating = builder.explanationsForRiskRating; this.factorsAffectingModelEfficiency = builder.factorsAffectingModelEfficiency; this.intendedUses = builder.intendedUses; this.purposeOfModel = builder.purposeOfModel; this.riskRating = builder.riskRating; } @Override public final java.lang.String getExplanationsForRiskRating() { return this.explanationsForRiskRating; } @Override public final java.lang.String getFactorsAffectingModelEfficiency() { return this.factorsAffectingModelEfficiency; } @Override public final java.lang.String getIntendedUses() { return this.intendedUses; } @Override public final java.lang.String getPurposeOfModel() { return this.purposeOfModel; } @Override public final java.lang.String getRiskRating() { return this.riskRating; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getExplanationsForRiskRating() != null) { data.set("explanationsForRiskRating", om.valueToTree(this.getExplanationsForRiskRating())); } if (this.getFactorsAffectingModelEfficiency() != null) { data.set("factorsAffectingModelEfficiency", om.valueToTree(this.getFactorsAffectingModelEfficiency())); } if (this.getIntendedUses() != null) { data.set("intendedUses", om.valueToTree(this.getIntendedUses())); } if (this.getPurposeOfModel() != null) { data.set("purposeOfModel", om.valueToTree(this.getPurposeOfModel())); } if (this.getRiskRating() != null) { data.set("riskRating", om.valueToTree(this.getRiskRating())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.IntendedUsesProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; IntendedUsesProperty.Jsii$Proxy that = (IntendedUsesProperty.Jsii$Proxy) o; if (this.explanationsForRiskRating != null ? !this.explanationsForRiskRating.equals(that.explanationsForRiskRating) : that.explanationsForRiskRating != null) return false; if (this.factorsAffectingModelEfficiency != null ? !this.factorsAffectingModelEfficiency.equals(that.factorsAffectingModelEfficiency) : that.factorsAffectingModelEfficiency != null) return false; if (this.intendedUses != null ? !this.intendedUses.equals(that.intendedUses) : that.intendedUses != null) return false; if (this.purposeOfModel != null ? !this.purposeOfModel.equals(that.purposeOfModel) : that.purposeOfModel != null) return false; return this.riskRating != null ? this.riskRating.equals(that.riskRating) : that.riskRating == null; } @Override public final int hashCode() { int result = this.explanationsForRiskRating != null ? this.explanationsForRiskRating.hashCode() : 0; result = 31 * result + (this.factorsAffectingModelEfficiency != null ? this.factorsAffectingModelEfficiency.hashCode() : 0); result = 31 * result + (this.intendedUses != null ? this.intendedUses.hashCode() : 0); result = 31 * result + (this.purposeOfModel != null ? this.purposeOfModel.hashCode() : 0); result = 31 * result + (this.riskRating != null ? this.riskRating.hashCode() : 0); return result; } } } /** * Metric data. *

* The type determines the data types that you specify for value , XAxisName and YAxisName . For information about specifying values for metrics, see model card JSON schema . *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * Object value;
     * MetricDataItemsProperty metricDataItemsProperty = MetricDataItemsProperty.builder()
     *         .name("name")
     *         .type("type")
     *         .value(value)
     *         // the properties below are optional
     *         .notes("notes")
     *         .xAxisName(List.of("xAxisName"))
     *         .yAxisName(List.of("yAxisName"))
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.MetricDataItemsProperty") @software.amazon.jsii.Jsii.Proxy(MetricDataItemsProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface MetricDataItemsProperty extends software.amazon.jsii.JsiiSerializable { /** * The names of the metrics. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getName(); /** * You must specify one of the following data types:. *

*

    *
  • Bar Chart bar_char
  • *
  • Boolean boolean
  • *
  • Linear Graph linear_graph
  • *
  • Matrix matrix
  • *
  • Number number
  • *
  • String string
  • *
*/ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getType(); /** * The datatype of the metric. *

* The metric's value must be compatible with the metric's type . */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.Object getValue(); /** * Any notes to add to the metric. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getNotes() { return null; } /** * The name of the x axis. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getXAxisName() { return null; } /** * The name of the y axis. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getYAxisName() { return null; } /** * @return a {@link Builder} of {@link MetricDataItemsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link MetricDataItemsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String name; java.lang.String type; java.lang.Object value; java.lang.String notes; java.util.List xAxisName; java.util.List yAxisName; /** * Sets the value of {@link MetricDataItemsProperty#getName} * @param name The names of the metrics. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder name(java.lang.String name) { this.name = name; return this; } /** * Sets the value of {@link MetricDataItemsProperty#getType} * @param type You must specify one of the following data types:. This parameter is required. *

    *
  • Bar Chart bar_char
  • *
  • Boolean boolean
  • *
  • Linear Graph linear_graph
  • *
  • Matrix matrix
  • *
  • Number number
  • *
  • String string
  • *
* @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder type(java.lang.String type) { this.type = type; return this; } /** * Sets the value of {@link MetricDataItemsProperty#getValue} * @param value The datatype of the metric. This parameter is required. * The metric's value must be compatible with the metric's type . * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder value(java.lang.Object value) { this.value = value; return this; } /** * Sets the value of {@link MetricDataItemsProperty#getNotes} * @param notes Any notes to add to the metric. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder notes(java.lang.String notes) { this.notes = notes; return this; } /** * Sets the value of {@link MetricDataItemsProperty#getXAxisName} * @param xAxisName The name of the x axis. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder xAxisName(java.util.List xAxisName) { this.xAxisName = xAxisName; return this; } /** * Sets the value of {@link MetricDataItemsProperty#getYAxisName} * @param yAxisName The name of the y axis. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder yAxisName(java.util.List yAxisName) { this.yAxisName = yAxisName; return this; } /** * Builds the configured instance. * @return a new instance of {@link MetricDataItemsProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public MetricDataItemsProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link MetricDataItemsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements MetricDataItemsProperty { private final java.lang.String name; private final java.lang.String type; private final java.lang.Object value; private final java.lang.String notes; private final java.util.List xAxisName; private final java.util.List yAxisName; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.type = software.amazon.jsii.Kernel.get(this, "type", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.value = software.amazon.jsii.Kernel.get(this, "value", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.notes = software.amazon.jsii.Kernel.get(this, "notes", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.xAxisName = software.amazon.jsii.Kernel.get(this, "xAxisName", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.yAxisName = software.amazon.jsii.Kernel.get(this, "yAxisName", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.name = java.util.Objects.requireNonNull(builder.name, "name is required"); this.type = java.util.Objects.requireNonNull(builder.type, "type is required"); this.value = java.util.Objects.requireNonNull(builder.value, "value is required"); this.notes = builder.notes; this.xAxisName = builder.xAxisName; this.yAxisName = builder.yAxisName; } @Override public final java.lang.String getName() { return this.name; } @Override public final java.lang.String getType() { return this.type; } @Override public final java.lang.Object getValue() { return this.value; } @Override public final java.lang.String getNotes() { return this.notes; } @Override public final java.util.List getXAxisName() { return this.xAxisName; } @Override public final java.util.List getYAxisName() { return this.yAxisName; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("name", om.valueToTree(this.getName())); data.set("type", om.valueToTree(this.getType())); data.set("value", om.valueToTree(this.getValue())); if (this.getNotes() != null) { data.set("notes", om.valueToTree(this.getNotes())); } if (this.getXAxisName() != null) { data.set("xAxisName", om.valueToTree(this.getXAxisName())); } if (this.getYAxisName() != null) { data.set("yAxisName", om.valueToTree(this.getYAxisName())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.MetricDataItemsProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; MetricDataItemsProperty.Jsii$Proxy that = (MetricDataItemsProperty.Jsii$Proxy) o; if (!name.equals(that.name)) return false; if (!type.equals(that.type)) return false; if (!value.equals(that.value)) return false; if (this.notes != null ? !this.notes.equals(that.notes) : that.notes != null) return false; if (this.xAxisName != null ? !this.xAxisName.equals(that.xAxisName) : that.xAxisName != null) return false; return this.yAxisName != null ? this.yAxisName.equals(that.yAxisName) : that.yAxisName == null; } @Override public final int hashCode() { int result = this.name.hashCode(); result = 31 * result + (this.type.hashCode()); result = 31 * result + (this.value.hashCode()); result = 31 * result + (this.notes != null ? this.notes.hashCode() : 0); result = 31 * result + (this.xAxisName != null ? this.xAxisName.hashCode() : 0); result = 31 * result + (this.yAxisName != null ? this.yAxisName.hashCode() : 0); return result; } } } /** * A group of metric data that you use to initialize a metric group object. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * Object value;
     * MetricGroupProperty metricGroupProperty = MetricGroupProperty.builder()
     *         .metricData(List.of(MetricDataItemsProperty.builder()
     *                 .name("name")
     *                 .type("type")
     *                 .value(value)
     *                 // the properties below are optional
     *                 .notes("notes")
     *                 .xAxisName(List.of("xAxisName"))
     *                 .yAxisName(List.of("yAxisName"))
     *                 .build()))
     *         .name("name")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.MetricGroupProperty") @software.amazon.jsii.Jsii.Proxy(MetricGroupProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface MetricGroupProperty extends software.amazon.jsii.JsiiSerializable { /** * A list of metric objects. The `MetricDataItems` list can have one of the following values:. *

*

    *
  • bar_chart_metric
  • *
  • matrix_metric
  • *
  • simple_metric
  • *
  • linear_graph_metric
  • *
*

* For more information about the metric schema, see the definition section of the model card JSON schema . */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.Object getMetricData(); /** * The metric group name. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getName(); /** * @return a {@link Builder} of {@link MetricGroupProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link MetricGroupProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object metricData; java.lang.String name; /** * Sets the value of {@link MetricGroupProperty#getMetricData} * @param metricData A list of metric objects. The `MetricDataItems` list can have one of the following values:. This parameter is required. *

    *
  • bar_chart_metric
  • *
  • matrix_metric
  • *
  • simple_metric
  • *
  • linear_graph_metric
  • *
*

* For more information about the metric schema, see the definition section of the model card JSON schema . * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder metricData(software.amazon.awscdk.core.IResolvable metricData) { this.metricData = metricData; return this; } /** * Sets the value of {@link MetricGroupProperty#getMetricData} * @param metricData A list of metric objects. The `MetricDataItems` list can have one of the following values:. This parameter is required. *

    *
  • bar_chart_metric
  • *
  • matrix_metric
  • *
  • simple_metric
  • *
  • linear_graph_metric
  • *
*

* For more information about the metric schema, see the definition section of the model card JSON schema . * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder metricData(java.util.List metricData) { this.metricData = metricData; return this; } /** * Sets the value of {@link MetricGroupProperty#getName} * @param name The metric group name. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder name(java.lang.String name) { this.name = name; return this; } /** * Builds the configured instance. * @return a new instance of {@link MetricGroupProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public MetricGroupProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link MetricGroupProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements MetricGroupProperty { private final java.lang.Object metricData; private final java.lang.String name; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.metricData = software.amazon.jsii.Kernel.get(this, "metricData", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.metricData = java.util.Objects.requireNonNull(builder.metricData, "metricData is required"); this.name = java.util.Objects.requireNonNull(builder.name, "name is required"); } @Override public final java.lang.Object getMetricData() { return this.metricData; } @Override public final java.lang.String getName() { return this.name; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("metricData", om.valueToTree(this.getMetricData())); data.set("name", om.valueToTree(this.getName())); final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.MetricGroupProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; MetricGroupProperty.Jsii$Proxy that = (MetricGroupProperty.Jsii$Proxy) o; if (!metricData.equals(that.metricData)) return false; return this.name.equals(that.name); } @Override public final int hashCode() { int result = this.metricData.hashCode(); result = 31 * result + (this.name.hashCode()); return result; } } } /** * An overview about the model. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * ModelOverviewProperty modelOverviewProperty = ModelOverviewProperty.builder()
     *         .algorithmType("algorithmType")
     *         .inferenceEnvironment(InferenceEnvironmentProperty.builder()
     *                 .containerImage(List.of("containerImage"))
     *                 .build())
     *         .modelArtifact(List.of("modelArtifact"))
     *         .modelCreator("modelCreator")
     *         .modelDescription("modelDescription")
     *         .modelId("modelId")
     *         .modelName("modelName")
     *         .modelOwner("modelOwner")
     *         .modelVersion(123)
     *         .problemType("problemType")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.ModelOverviewProperty") @software.amazon.jsii.Jsii.Proxy(ModelOverviewProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface ModelOverviewProperty extends software.amazon.jsii.JsiiSerializable { /** * The algorithm used to solve the problem. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getAlgorithmType() { return null; } /** * An overview about model inference. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getInferenceEnvironment() { return null; } /** * The location of the model artifact. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getModelArtifact() { return null; } /** * The creator of the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelCreator() { return null; } /** * A description of the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelDescription() { return null; } /** * The SageMaker Model ARN or non- SageMaker Model ID. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelId() { return null; } /** * The name of the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelName() { return null; } /** * The owner of the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelOwner() { return null; } /** * The version of the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getModelVersion() { return null; } /** * The problem being solved with the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getProblemType() { return null; } /** * @return a {@link Builder} of {@link ModelOverviewProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link ModelOverviewProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String algorithmType; java.lang.Object inferenceEnvironment; java.util.List modelArtifact; java.lang.String modelCreator; java.lang.String modelDescription; java.lang.String modelId; java.lang.String modelName; java.lang.String modelOwner; java.lang.Number modelVersion; java.lang.String problemType; /** * Sets the value of {@link ModelOverviewProperty#getAlgorithmType} * @param algorithmType The algorithm used to solve the problem. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder algorithmType(java.lang.String algorithmType) { this.algorithmType = algorithmType; return this; } /** * Sets the value of {@link ModelOverviewProperty#getInferenceEnvironment} * @param inferenceEnvironment An overview about model inference. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder inferenceEnvironment(software.amazon.awscdk.core.IResolvable inferenceEnvironment) { this.inferenceEnvironment = inferenceEnvironment; return this; } /** * Sets the value of {@link ModelOverviewProperty#getInferenceEnvironment} * @param inferenceEnvironment An overview about model inference. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder inferenceEnvironment(software.amazon.awscdk.services.sagemaker.CfnModelCard.InferenceEnvironmentProperty inferenceEnvironment) { this.inferenceEnvironment = inferenceEnvironment; return this; } /** * Sets the value of {@link ModelOverviewProperty#getModelArtifact} * @param modelArtifact The location of the model artifact. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelArtifact(java.util.List modelArtifact) { this.modelArtifact = modelArtifact; return this; } /** * Sets the value of {@link ModelOverviewProperty#getModelCreator} * @param modelCreator The creator of the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelCreator(java.lang.String modelCreator) { this.modelCreator = modelCreator; return this; } /** * Sets the value of {@link ModelOverviewProperty#getModelDescription} * @param modelDescription A description of the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelDescription(java.lang.String modelDescription) { this.modelDescription = modelDescription; return this; } /** * Sets the value of {@link ModelOverviewProperty#getModelId} * @param modelId The SageMaker Model ARN or non- SageMaker Model ID. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelId(java.lang.String modelId) { this.modelId = modelId; return this; } /** * Sets the value of {@link ModelOverviewProperty#getModelName} * @param modelName The name of the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelName(java.lang.String modelName) { this.modelName = modelName; return this; } /** * Sets the value of {@link ModelOverviewProperty#getModelOwner} * @param modelOwner The owner of the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelOwner(java.lang.String modelOwner) { this.modelOwner = modelOwner; return this; } /** * Sets the value of {@link ModelOverviewProperty#getModelVersion} * @param modelVersion The version of the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelVersion(java.lang.Number modelVersion) { this.modelVersion = modelVersion; return this; } /** * Sets the value of {@link ModelOverviewProperty#getProblemType} * @param problemType The problem being solved with the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder problemType(java.lang.String problemType) { this.problemType = problemType; return this; } /** * Builds the configured instance. * @return a new instance of {@link ModelOverviewProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public ModelOverviewProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link ModelOverviewProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ModelOverviewProperty { private final java.lang.String algorithmType; private final java.lang.Object inferenceEnvironment; private final java.util.List modelArtifact; private final java.lang.String modelCreator; private final java.lang.String modelDescription; private final java.lang.String modelId; private final java.lang.String modelName; private final java.lang.String modelOwner; private final java.lang.Number modelVersion; private final java.lang.String problemType; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.algorithmType = software.amazon.jsii.Kernel.get(this, "algorithmType", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.inferenceEnvironment = software.amazon.jsii.Kernel.get(this, "inferenceEnvironment", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.modelArtifact = software.amazon.jsii.Kernel.get(this, "modelArtifact", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.modelCreator = software.amazon.jsii.Kernel.get(this, "modelCreator", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelDescription = software.amazon.jsii.Kernel.get(this, "modelDescription", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelId = software.amazon.jsii.Kernel.get(this, "modelId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelName = software.amazon.jsii.Kernel.get(this, "modelName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelOwner = software.amazon.jsii.Kernel.get(this, "modelOwner", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelVersion = software.amazon.jsii.Kernel.get(this, "modelVersion", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.problemType = software.amazon.jsii.Kernel.get(this, "problemType", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.algorithmType = builder.algorithmType; this.inferenceEnvironment = builder.inferenceEnvironment; this.modelArtifact = builder.modelArtifact; this.modelCreator = builder.modelCreator; this.modelDescription = builder.modelDescription; this.modelId = builder.modelId; this.modelName = builder.modelName; this.modelOwner = builder.modelOwner; this.modelVersion = builder.modelVersion; this.problemType = builder.problemType; } @Override public final java.lang.String getAlgorithmType() { return this.algorithmType; } @Override public final java.lang.Object getInferenceEnvironment() { return this.inferenceEnvironment; } @Override public final java.util.List getModelArtifact() { return this.modelArtifact; } @Override public final java.lang.String getModelCreator() { return this.modelCreator; } @Override public final java.lang.String getModelDescription() { return this.modelDescription; } @Override public final java.lang.String getModelId() { return this.modelId; } @Override public final java.lang.String getModelName() { return this.modelName; } @Override public final java.lang.String getModelOwner() { return this.modelOwner; } @Override public final java.lang.Number getModelVersion() { return this.modelVersion; } @Override public final java.lang.String getProblemType() { return this.problemType; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getAlgorithmType() != null) { data.set("algorithmType", om.valueToTree(this.getAlgorithmType())); } if (this.getInferenceEnvironment() != null) { data.set("inferenceEnvironment", om.valueToTree(this.getInferenceEnvironment())); } if (this.getModelArtifact() != null) { data.set("modelArtifact", om.valueToTree(this.getModelArtifact())); } if (this.getModelCreator() != null) { data.set("modelCreator", om.valueToTree(this.getModelCreator())); } if (this.getModelDescription() != null) { data.set("modelDescription", om.valueToTree(this.getModelDescription())); } if (this.getModelId() != null) { data.set("modelId", om.valueToTree(this.getModelId())); } if (this.getModelName() != null) { data.set("modelName", om.valueToTree(this.getModelName())); } if (this.getModelOwner() != null) { data.set("modelOwner", om.valueToTree(this.getModelOwner())); } if (this.getModelVersion() != null) { data.set("modelVersion", om.valueToTree(this.getModelVersion())); } if (this.getProblemType() != null) { data.set("problemType", om.valueToTree(this.getProblemType())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.ModelOverviewProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ModelOverviewProperty.Jsii$Proxy that = (ModelOverviewProperty.Jsii$Proxy) o; if (this.algorithmType != null ? !this.algorithmType.equals(that.algorithmType) : that.algorithmType != null) return false; if (this.inferenceEnvironment != null ? !this.inferenceEnvironment.equals(that.inferenceEnvironment) : that.inferenceEnvironment != null) return false; if (this.modelArtifact != null ? !this.modelArtifact.equals(that.modelArtifact) : that.modelArtifact != null) return false; if (this.modelCreator != null ? !this.modelCreator.equals(that.modelCreator) : that.modelCreator != null) return false; if (this.modelDescription != null ? !this.modelDescription.equals(that.modelDescription) : that.modelDescription != null) return false; if (this.modelId != null ? !this.modelId.equals(that.modelId) : that.modelId != null) return false; if (this.modelName != null ? !this.modelName.equals(that.modelName) : that.modelName != null) return false; if (this.modelOwner != null ? !this.modelOwner.equals(that.modelOwner) : that.modelOwner != null) return false; if (this.modelVersion != null ? !this.modelVersion.equals(that.modelVersion) : that.modelVersion != null) return false; return this.problemType != null ? this.problemType.equals(that.problemType) : that.problemType == null; } @Override public final int hashCode() { int result = this.algorithmType != null ? this.algorithmType.hashCode() : 0; result = 31 * result + (this.inferenceEnvironment != null ? this.inferenceEnvironment.hashCode() : 0); result = 31 * result + (this.modelArtifact != null ? this.modelArtifact.hashCode() : 0); result = 31 * result + (this.modelCreator != null ? this.modelCreator.hashCode() : 0); result = 31 * result + (this.modelDescription != null ? this.modelDescription.hashCode() : 0); result = 31 * result + (this.modelId != null ? this.modelId.hashCode() : 0); result = 31 * result + (this.modelName != null ? this.modelName.hashCode() : 0); result = 31 * result + (this.modelOwner != null ? this.modelOwner.hashCode() : 0); result = 31 * result + (this.modelVersion != null ? this.modelVersion.hashCode() : 0); result = 31 * result + (this.problemType != null ? this.problemType.hashCode() : 0); return result; } } } /** * Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * ModelPackageCreatorProperty modelPackageCreatorProperty = ModelPackageCreatorProperty.builder()
     *         .userProfileName("userProfileName")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.ModelPackageCreatorProperty") @software.amazon.jsii.Jsii.Proxy(ModelPackageCreatorProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface ModelPackageCreatorProperty extends software.amazon.jsii.JsiiSerializable { /** * `CfnModelCard.ModelPackageCreatorProperty.UserProfileName`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getUserProfileName() { return null; } /** * @return a {@link Builder} of {@link ModelPackageCreatorProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link ModelPackageCreatorProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String userProfileName; /** * Sets the value of {@link ModelPackageCreatorProperty#getUserProfileName} * @param userProfileName `CfnModelCard.ModelPackageCreatorProperty.UserProfileName`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder userProfileName(java.lang.String userProfileName) { this.userProfileName = userProfileName; return this; } /** * Builds the configured instance. * @return a new instance of {@link ModelPackageCreatorProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public ModelPackageCreatorProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link ModelPackageCreatorProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ModelPackageCreatorProperty { private final java.lang.String userProfileName; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.userProfileName = software.amazon.jsii.Kernel.get(this, "userProfileName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.userProfileName = builder.userProfileName; } @Override public final java.lang.String getUserProfileName() { return this.userProfileName; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getUserProfileName() != null) { data.set("userProfileName", om.valueToTree(this.getUserProfileName())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.ModelPackageCreatorProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ModelPackageCreatorProperty.Jsii$Proxy that = (ModelPackageCreatorProperty.Jsii$Proxy) o; return this.userProfileName != null ? this.userProfileName.equals(that.userProfileName) : that.userProfileName == null; } @Override public final int hashCode() { int result = this.userProfileName != null ? this.userProfileName.hashCode() : 0; return result; } } } /** * Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * ModelPackageDetailsProperty modelPackageDetailsProperty = ModelPackageDetailsProperty.builder()
     *         .approvalDescription("approvalDescription")
     *         .createdBy(ModelPackageCreatorProperty.builder()
     *                 .userProfileName("userProfileName")
     *                 .build())
     *         .domain("domain")
     *         .inferenceSpecification(InferenceSpecificationProperty.builder()
     *                 .containers(List.of(ContainerProperty.builder()
     *                         .image("image")
     *                         // the properties below are optional
     *                         .modelDataUrl("modelDataUrl")
     *                         .nearestModelName("nearestModelName")
     *                         .build()))
     *                 .build())
     *         .modelApprovalStatus("modelApprovalStatus")
     *         .modelPackageArn("modelPackageArn")
     *         .modelPackageDescription("modelPackageDescription")
     *         .modelPackageGroupName("modelPackageGroupName")
     *         .modelPackageName("modelPackageName")
     *         .modelPackageStatus("modelPackageStatus")
     *         .modelPackageVersion(123)
     *         .sourceAlgorithms(List.of(SourceAlgorithmProperty.builder()
     *                 .algorithmName("algorithmName")
     *                 // the properties below are optional
     *                 .modelDataUrl("modelDataUrl")
     *                 .build()))
     *         .task("task")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.ModelPackageDetailsProperty") @software.amazon.jsii.Jsii.Proxy(ModelPackageDetailsProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface ModelPackageDetailsProperty extends software.amazon.jsii.JsiiSerializable { /** * `CfnModelCard.ModelPackageDetailsProperty.ApprovalDescription`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getApprovalDescription() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.CreatedBy`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getCreatedBy() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.Domain`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getDomain() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.InferenceSpecification`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getInferenceSpecification() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.ModelApprovalStatus`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelApprovalStatus() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.ModelPackageArn`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelPackageArn() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.ModelPackageDescription`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelPackageDescription() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.ModelPackageGroupName`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelPackageGroupName() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.ModelPackageName`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelPackageName() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.ModelPackageStatus`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelPackageStatus() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.ModelPackageVersion`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Number getModelPackageVersion() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.SourceAlgorithms`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getSourceAlgorithms() { return null; } /** * `CfnModelCard.ModelPackageDetailsProperty.Task`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getTask() { return null; } /** * @return a {@link Builder} of {@link ModelPackageDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link ModelPackageDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String approvalDescription; java.lang.Object createdBy; java.lang.String domain; java.lang.Object inferenceSpecification; java.lang.String modelApprovalStatus; java.lang.String modelPackageArn; java.lang.String modelPackageDescription; java.lang.String modelPackageGroupName; java.lang.String modelPackageName; java.lang.String modelPackageStatus; java.lang.Number modelPackageVersion; java.lang.Object sourceAlgorithms; java.lang.String task; /** * Sets the value of {@link ModelPackageDetailsProperty#getApprovalDescription} * @param approvalDescription `CfnModelCard.ModelPackageDetailsProperty.ApprovalDescription`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder approvalDescription(java.lang.String approvalDescription) { this.approvalDescription = approvalDescription; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getCreatedBy} * @param createdBy `CfnModelCard.ModelPackageDetailsProperty.CreatedBy`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder createdBy(software.amazon.awscdk.core.IResolvable createdBy) { this.createdBy = createdBy; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getCreatedBy} * @param createdBy `CfnModelCard.ModelPackageDetailsProperty.CreatedBy`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder createdBy(software.amazon.awscdk.services.sagemaker.CfnModelCard.ModelPackageCreatorProperty createdBy) { this.createdBy = createdBy; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getDomain} * @param domain `CfnModelCard.ModelPackageDetailsProperty.Domain`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder domain(java.lang.String domain) { this.domain = domain; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getInferenceSpecification} * @param inferenceSpecification `CfnModelCard.ModelPackageDetailsProperty.InferenceSpecification`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder inferenceSpecification(software.amazon.awscdk.core.IResolvable inferenceSpecification) { this.inferenceSpecification = inferenceSpecification; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getInferenceSpecification} * @param inferenceSpecification `CfnModelCard.ModelPackageDetailsProperty.InferenceSpecification`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder inferenceSpecification(software.amazon.awscdk.services.sagemaker.CfnModelCard.InferenceSpecificationProperty inferenceSpecification) { this.inferenceSpecification = inferenceSpecification; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getModelApprovalStatus} * @param modelApprovalStatus `CfnModelCard.ModelPackageDetailsProperty.ModelApprovalStatus`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelApprovalStatus(java.lang.String modelApprovalStatus) { this.modelApprovalStatus = modelApprovalStatus; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getModelPackageArn} * @param modelPackageArn `CfnModelCard.ModelPackageDetailsProperty.ModelPackageArn`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelPackageArn(java.lang.String modelPackageArn) { this.modelPackageArn = modelPackageArn; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getModelPackageDescription} * @param modelPackageDescription `CfnModelCard.ModelPackageDetailsProperty.ModelPackageDescription`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelPackageDescription(java.lang.String modelPackageDescription) { this.modelPackageDescription = modelPackageDescription; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getModelPackageGroupName} * @param modelPackageGroupName `CfnModelCard.ModelPackageDetailsProperty.ModelPackageGroupName`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelPackageGroupName(java.lang.String modelPackageGroupName) { this.modelPackageGroupName = modelPackageGroupName; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getModelPackageName} * @param modelPackageName `CfnModelCard.ModelPackageDetailsProperty.ModelPackageName`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelPackageName(java.lang.String modelPackageName) { this.modelPackageName = modelPackageName; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getModelPackageStatus} * @param modelPackageStatus `CfnModelCard.ModelPackageDetailsProperty.ModelPackageStatus`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelPackageStatus(java.lang.String modelPackageStatus) { this.modelPackageStatus = modelPackageStatus; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getModelPackageVersion} * @param modelPackageVersion `CfnModelCard.ModelPackageDetailsProperty.ModelPackageVersion`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelPackageVersion(java.lang.Number modelPackageVersion) { this.modelPackageVersion = modelPackageVersion; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getSourceAlgorithms} * @param sourceAlgorithms `CfnModelCard.ModelPackageDetailsProperty.SourceAlgorithms`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder sourceAlgorithms(software.amazon.awscdk.core.IResolvable sourceAlgorithms) { this.sourceAlgorithms = sourceAlgorithms; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getSourceAlgorithms} * @param sourceAlgorithms `CfnModelCard.ModelPackageDetailsProperty.SourceAlgorithms`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder sourceAlgorithms(java.util.List sourceAlgorithms) { this.sourceAlgorithms = sourceAlgorithms; return this; } /** * Sets the value of {@link ModelPackageDetailsProperty#getTask} * @param task `CfnModelCard.ModelPackageDetailsProperty.Task`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder task(java.lang.String task) { this.task = task; return this; } /** * Builds the configured instance. * @return a new instance of {@link ModelPackageDetailsProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public ModelPackageDetailsProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link ModelPackageDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ModelPackageDetailsProperty { private final java.lang.String approvalDescription; private final java.lang.Object createdBy; private final java.lang.String domain; private final java.lang.Object inferenceSpecification; private final java.lang.String modelApprovalStatus; private final java.lang.String modelPackageArn; private final java.lang.String modelPackageDescription; private final java.lang.String modelPackageGroupName; private final java.lang.String modelPackageName; private final java.lang.String modelPackageStatus; private final java.lang.Number modelPackageVersion; private final java.lang.Object sourceAlgorithms; private final java.lang.String task; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.approvalDescription = software.amazon.jsii.Kernel.get(this, "approvalDescription", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.createdBy = software.amazon.jsii.Kernel.get(this, "createdBy", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.domain = software.amazon.jsii.Kernel.get(this, "domain", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.inferenceSpecification = software.amazon.jsii.Kernel.get(this, "inferenceSpecification", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.modelApprovalStatus = software.amazon.jsii.Kernel.get(this, "modelApprovalStatus", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelPackageArn = software.amazon.jsii.Kernel.get(this, "modelPackageArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelPackageDescription = software.amazon.jsii.Kernel.get(this, "modelPackageDescription", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelPackageGroupName = software.amazon.jsii.Kernel.get(this, "modelPackageGroupName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelPackageName = software.amazon.jsii.Kernel.get(this, "modelPackageName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelPackageStatus = software.amazon.jsii.Kernel.get(this, "modelPackageStatus", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelPackageVersion = software.amazon.jsii.Kernel.get(this, "modelPackageVersion", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.sourceAlgorithms = software.amazon.jsii.Kernel.get(this, "sourceAlgorithms", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.task = software.amazon.jsii.Kernel.get(this, "task", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.approvalDescription = builder.approvalDescription; this.createdBy = builder.createdBy; this.domain = builder.domain; this.inferenceSpecification = builder.inferenceSpecification; this.modelApprovalStatus = builder.modelApprovalStatus; this.modelPackageArn = builder.modelPackageArn; this.modelPackageDescription = builder.modelPackageDescription; this.modelPackageGroupName = builder.modelPackageGroupName; this.modelPackageName = builder.modelPackageName; this.modelPackageStatus = builder.modelPackageStatus; this.modelPackageVersion = builder.modelPackageVersion; this.sourceAlgorithms = builder.sourceAlgorithms; this.task = builder.task; } @Override public final java.lang.String getApprovalDescription() { return this.approvalDescription; } @Override public final java.lang.Object getCreatedBy() { return this.createdBy; } @Override public final java.lang.String getDomain() { return this.domain; } @Override public final java.lang.Object getInferenceSpecification() { return this.inferenceSpecification; } @Override public final java.lang.String getModelApprovalStatus() { return this.modelApprovalStatus; } @Override public final java.lang.String getModelPackageArn() { return this.modelPackageArn; } @Override public final java.lang.String getModelPackageDescription() { return this.modelPackageDescription; } @Override public final java.lang.String getModelPackageGroupName() { return this.modelPackageGroupName; } @Override public final java.lang.String getModelPackageName() { return this.modelPackageName; } @Override public final java.lang.String getModelPackageStatus() { return this.modelPackageStatus; } @Override public final java.lang.Number getModelPackageVersion() { return this.modelPackageVersion; } @Override public final java.lang.Object getSourceAlgorithms() { return this.sourceAlgorithms; } @Override public final java.lang.String getTask() { return this.task; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getApprovalDescription() != null) { data.set("approvalDescription", om.valueToTree(this.getApprovalDescription())); } if (this.getCreatedBy() != null) { data.set("createdBy", om.valueToTree(this.getCreatedBy())); } if (this.getDomain() != null) { data.set("domain", om.valueToTree(this.getDomain())); } if (this.getInferenceSpecification() != null) { data.set("inferenceSpecification", om.valueToTree(this.getInferenceSpecification())); } if (this.getModelApprovalStatus() != null) { data.set("modelApprovalStatus", om.valueToTree(this.getModelApprovalStatus())); } if (this.getModelPackageArn() != null) { data.set("modelPackageArn", om.valueToTree(this.getModelPackageArn())); } if (this.getModelPackageDescription() != null) { data.set("modelPackageDescription", om.valueToTree(this.getModelPackageDescription())); } if (this.getModelPackageGroupName() != null) { data.set("modelPackageGroupName", om.valueToTree(this.getModelPackageGroupName())); } if (this.getModelPackageName() != null) { data.set("modelPackageName", om.valueToTree(this.getModelPackageName())); } if (this.getModelPackageStatus() != null) { data.set("modelPackageStatus", om.valueToTree(this.getModelPackageStatus())); } if (this.getModelPackageVersion() != null) { data.set("modelPackageVersion", om.valueToTree(this.getModelPackageVersion())); } if (this.getSourceAlgorithms() != null) { data.set("sourceAlgorithms", om.valueToTree(this.getSourceAlgorithms())); } if (this.getTask() != null) { data.set("task", om.valueToTree(this.getTask())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.ModelPackageDetailsProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ModelPackageDetailsProperty.Jsii$Proxy that = (ModelPackageDetailsProperty.Jsii$Proxy) o; if (this.approvalDescription != null ? !this.approvalDescription.equals(that.approvalDescription) : that.approvalDescription != null) return false; if (this.createdBy != null ? !this.createdBy.equals(that.createdBy) : that.createdBy != null) return false; if (this.domain != null ? !this.domain.equals(that.domain) : that.domain != null) return false; if (this.inferenceSpecification != null ? !this.inferenceSpecification.equals(that.inferenceSpecification) : that.inferenceSpecification != null) return false; if (this.modelApprovalStatus != null ? !this.modelApprovalStatus.equals(that.modelApprovalStatus) : that.modelApprovalStatus != null) return false; if (this.modelPackageArn != null ? !this.modelPackageArn.equals(that.modelPackageArn) : that.modelPackageArn != null) return false; if (this.modelPackageDescription != null ? !this.modelPackageDescription.equals(that.modelPackageDescription) : that.modelPackageDescription != null) return false; if (this.modelPackageGroupName != null ? !this.modelPackageGroupName.equals(that.modelPackageGroupName) : that.modelPackageGroupName != null) return false; if (this.modelPackageName != null ? !this.modelPackageName.equals(that.modelPackageName) : that.modelPackageName != null) return false; if (this.modelPackageStatus != null ? !this.modelPackageStatus.equals(that.modelPackageStatus) : that.modelPackageStatus != null) return false; if (this.modelPackageVersion != null ? !this.modelPackageVersion.equals(that.modelPackageVersion) : that.modelPackageVersion != null) return false; if (this.sourceAlgorithms != null ? !this.sourceAlgorithms.equals(that.sourceAlgorithms) : that.sourceAlgorithms != null) return false; return this.task != null ? this.task.equals(that.task) : that.task == null; } @Override public final int hashCode() { int result = this.approvalDescription != null ? this.approvalDescription.hashCode() : 0; result = 31 * result + (this.createdBy != null ? this.createdBy.hashCode() : 0); result = 31 * result + (this.domain != null ? this.domain.hashCode() : 0); result = 31 * result + (this.inferenceSpecification != null ? this.inferenceSpecification.hashCode() : 0); result = 31 * result + (this.modelApprovalStatus != null ? this.modelApprovalStatus.hashCode() : 0); result = 31 * result + (this.modelPackageArn != null ? this.modelPackageArn.hashCode() : 0); result = 31 * result + (this.modelPackageDescription != null ? this.modelPackageDescription.hashCode() : 0); result = 31 * result + (this.modelPackageGroupName != null ? this.modelPackageGroupName.hashCode() : 0); result = 31 * result + (this.modelPackageName != null ? this.modelPackageName.hashCode() : 0); result = 31 * result + (this.modelPackageStatus != null ? this.modelPackageStatus.hashCode() : 0); result = 31 * result + (this.modelPackageVersion != null ? this.modelPackageVersion.hashCode() : 0); result = 31 * result + (this.sourceAlgorithms != null ? this.sourceAlgorithms.hashCode() : 0); result = 31 * result + (this.task != null ? this.task.hashCode() : 0); return result; } } } /** * The function that is optimized during model training. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * ObjectiveFunctionProperty objectiveFunctionProperty = ObjectiveFunctionProperty.builder()
     *         .function(FunctionProperty.builder()
     *                 .condition("condition")
     *                 .facet("facet")
     *                 .function("function")
     *                 .build())
     *         .notes("notes")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.ObjectiveFunctionProperty") @software.amazon.jsii.Jsii.Proxy(ObjectiveFunctionProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface ObjectiveFunctionProperty extends software.amazon.jsii.JsiiSerializable { /** * A function object that details optimization direction, metric, and additional descriptions. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getFunction() { return null; } /** * Notes about the object function, including other considerations for possible objective functions. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getNotes() { return null; } /** * @return a {@link Builder} of {@link ObjectiveFunctionProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link ObjectiveFunctionProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object function; java.lang.String notes; /** * Sets the value of {@link ObjectiveFunctionProperty#getFunction} * @param function A function object that details optimization direction, metric, and additional descriptions. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder function(software.amazon.awscdk.core.IResolvable function) { this.function = function; return this; } /** * Sets the value of {@link ObjectiveFunctionProperty#getFunction} * @param function A function object that details optimization direction, metric, and additional descriptions. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder function(software.amazon.awscdk.services.sagemaker.CfnModelCard.FunctionProperty function) { this.function = function; return this; } /** * Sets the value of {@link ObjectiveFunctionProperty#getNotes} * @param notes Notes about the object function, including other considerations for possible objective functions. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder notes(java.lang.String notes) { this.notes = notes; return this; } /** * Builds the configured instance. * @return a new instance of {@link ObjectiveFunctionProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public ObjectiveFunctionProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link ObjectiveFunctionProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements ObjectiveFunctionProperty { private final java.lang.Object function; private final java.lang.String notes; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.function = software.amazon.jsii.Kernel.get(this, "function", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.notes = software.amazon.jsii.Kernel.get(this, "notes", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.function = builder.function; this.notes = builder.notes; } @Override public final java.lang.Object getFunction() { return this.function; } @Override public final java.lang.String getNotes() { return this.notes; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getFunction() != null) { data.set("function", om.valueToTree(this.getFunction())); } if (this.getNotes() != null) { data.set("notes", om.valueToTree(this.getNotes())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.ObjectiveFunctionProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; ObjectiveFunctionProperty.Jsii$Proxy that = (ObjectiveFunctionProperty.Jsii$Proxy) o; if (this.function != null ? !this.function.equals(that.function) : that.function != null) return false; return this.notes != null ? this.notes.equals(that.notes) : that.notes == null; } @Override public final int hashCode() { int result = this.function != null ? this.function.hashCode() : 0; result = 31 * result + (this.notes != null ? this.notes.hashCode() : 0); return result; } } } /** * The security configuration used to protect model card data. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * SecurityConfigProperty securityConfigProperty = SecurityConfigProperty.builder()
     *         .kmsKeyId("kmsKeyId")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.SecurityConfigProperty") @software.amazon.jsii.Jsii.Proxy(SecurityConfigProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface SecurityConfigProperty extends software.amazon.jsii.JsiiSerializable { /** * A AWS Key Management Service [key ID](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-id) used to encrypt a model card. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getKmsKeyId() { return null; } /** * @return a {@link Builder} of {@link SecurityConfigProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link SecurityConfigProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String kmsKeyId; /** * Sets the value of {@link SecurityConfigProperty#getKmsKeyId} * @param kmsKeyId A AWS Key Management Service [key ID](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#key-id-key-id) used to encrypt a model card. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder kmsKeyId(java.lang.String kmsKeyId) { this.kmsKeyId = kmsKeyId; return this; } /** * Builds the configured instance. * @return a new instance of {@link SecurityConfigProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public SecurityConfigProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link SecurityConfigProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements SecurityConfigProperty { private final java.lang.String kmsKeyId; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.kmsKeyId = software.amazon.jsii.Kernel.get(this, "kmsKeyId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.kmsKeyId = builder.kmsKeyId; } @Override public final java.lang.String getKmsKeyId() { return this.kmsKeyId; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getKmsKeyId() != null) { data.set("kmsKeyId", om.valueToTree(this.getKmsKeyId())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.SecurityConfigProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; SecurityConfigProperty.Jsii$Proxy that = (SecurityConfigProperty.Jsii$Proxy) o; return this.kmsKeyId != null ? this.kmsKeyId.equals(that.kmsKeyId) : that.kmsKeyId == null; } @Override public final int hashCode() { int result = this.kmsKeyId != null ? this.kmsKeyId.hashCode() : 0; return result; } } } /** * Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * SourceAlgorithmProperty sourceAlgorithmProperty = SourceAlgorithmProperty.builder()
     *         .algorithmName("algorithmName")
     *         // the properties below are optional
     *         .modelDataUrl("modelDataUrl")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.SourceAlgorithmProperty") @software.amazon.jsii.Jsii.Proxy(SourceAlgorithmProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface SourceAlgorithmProperty extends software.amazon.jsii.JsiiSerializable { /** * `CfnModelCard.SourceAlgorithmProperty.AlgorithmName`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getAlgorithmName(); /** * `CfnModelCard.SourceAlgorithmProperty.ModelDataUrl`. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getModelDataUrl() { return null; } /** * @return a {@link Builder} of {@link SourceAlgorithmProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link SourceAlgorithmProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String algorithmName; java.lang.String modelDataUrl; /** * Sets the value of {@link SourceAlgorithmProperty#getAlgorithmName} * @param algorithmName `CfnModelCard.SourceAlgorithmProperty.AlgorithmName`. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder algorithmName(java.lang.String algorithmName) { this.algorithmName = algorithmName; return this; } /** * Sets the value of {@link SourceAlgorithmProperty#getModelDataUrl} * @param modelDataUrl `CfnModelCard.SourceAlgorithmProperty.ModelDataUrl`. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelDataUrl(java.lang.String modelDataUrl) { this.modelDataUrl = modelDataUrl; return this; } /** * Builds the configured instance. * @return a new instance of {@link SourceAlgorithmProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public SourceAlgorithmProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link SourceAlgorithmProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements SourceAlgorithmProperty { private final java.lang.String algorithmName; private final java.lang.String modelDataUrl; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.algorithmName = software.amazon.jsii.Kernel.get(this, "algorithmName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.modelDataUrl = software.amazon.jsii.Kernel.get(this, "modelDataUrl", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.algorithmName = java.util.Objects.requireNonNull(builder.algorithmName, "algorithmName is required"); this.modelDataUrl = builder.modelDataUrl; } @Override public final java.lang.String getAlgorithmName() { return this.algorithmName; } @Override public final java.lang.String getModelDataUrl() { return this.modelDataUrl; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("algorithmName", om.valueToTree(this.getAlgorithmName())); if (this.getModelDataUrl() != null) { data.set("modelDataUrl", om.valueToTree(this.getModelDataUrl())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.SourceAlgorithmProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; SourceAlgorithmProperty.Jsii$Proxy that = (SourceAlgorithmProperty.Jsii$Proxy) o; if (!algorithmName.equals(that.algorithmName)) return false; return this.modelDataUrl != null ? this.modelDataUrl.equals(that.modelDataUrl) : that.modelDataUrl == null; } @Override public final int hashCode() { int result = this.algorithmName.hashCode(); result = 31 * result + (this.modelDataUrl != null ? this.modelDataUrl.hashCode() : 0); return result; } } } /** * The training details of the model. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * TrainingDetailsProperty trainingDetailsProperty = TrainingDetailsProperty.builder()
     *         .objectiveFunction(ObjectiveFunctionProperty.builder()
     *                 .function(FunctionProperty.builder()
     *                         .condition("condition")
     *                         .facet("facet")
     *                         .function("function")
     *                         .build())
     *                 .notes("notes")
     *                 .build())
     *         .trainingJobDetails(TrainingJobDetailsProperty.builder()
     *                 .hyperParameters(List.of(TrainingHyperParameterProperty.builder()
     *                         .name("name")
     *                         .value("value")
     *                         .build()))
     *                 .trainingArn("trainingArn")
     *                 .trainingDatasets(List.of("trainingDatasets"))
     *                 .trainingEnvironment(TrainingEnvironmentProperty.builder()
     *                         .containerImage(List.of("containerImage"))
     *                         .build())
     *                 .trainingMetrics(List.of(TrainingMetricProperty.builder()
     *                         .name("name")
     *                         .value(123)
     *                         // the properties below are optional
     *                         .notes("notes")
     *                         .build()))
     *                 .userProvidedHyperParameters(List.of(TrainingHyperParameterProperty.builder()
     *                         .name("name")
     *                         .value("value")
     *                         .build()))
     *                 .userProvidedTrainingMetrics(List.of(TrainingMetricProperty.builder()
     *                         .name("name")
     *                         .value(123)
     *                         // the properties below are optional
     *                         .notes("notes")
     *                         .build()))
     *                 .build())
     *         .trainingObservations("trainingObservations")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.TrainingDetailsProperty") @software.amazon.jsii.Jsii.Proxy(TrainingDetailsProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface TrainingDetailsProperty extends software.amazon.jsii.JsiiSerializable { /** * The function that is optimized during model training. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getObjectiveFunction() { return null; } /** * Details about any associated training jobs. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getTrainingJobDetails() { return null; } /** * Any observations about training. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getTrainingObservations() { return null; } /** * @return a {@link Builder} of {@link TrainingDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link TrainingDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object objectiveFunction; java.lang.Object trainingJobDetails; java.lang.String trainingObservations; /** * Sets the value of {@link TrainingDetailsProperty#getObjectiveFunction} * @param objectiveFunction The function that is optimized during model training. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder objectiveFunction(software.amazon.awscdk.core.IResolvable objectiveFunction) { this.objectiveFunction = objectiveFunction; return this; } /** * Sets the value of {@link TrainingDetailsProperty#getObjectiveFunction} * @param objectiveFunction The function that is optimized during model training. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder objectiveFunction(software.amazon.awscdk.services.sagemaker.CfnModelCard.ObjectiveFunctionProperty objectiveFunction) { this.objectiveFunction = objectiveFunction; return this; } /** * Sets the value of {@link TrainingDetailsProperty#getTrainingJobDetails} * @param trainingJobDetails Details about any associated training jobs. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingJobDetails(software.amazon.awscdk.core.IResolvable trainingJobDetails) { this.trainingJobDetails = trainingJobDetails; return this; } /** * Sets the value of {@link TrainingDetailsProperty#getTrainingJobDetails} * @param trainingJobDetails Details about any associated training jobs. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingJobDetails(software.amazon.awscdk.services.sagemaker.CfnModelCard.TrainingJobDetailsProperty trainingJobDetails) { this.trainingJobDetails = trainingJobDetails; return this; } /** * Sets the value of {@link TrainingDetailsProperty#getTrainingObservations} * @param trainingObservations Any observations about training. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingObservations(java.lang.String trainingObservations) { this.trainingObservations = trainingObservations; return this; } /** * Builds the configured instance. * @return a new instance of {@link TrainingDetailsProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public TrainingDetailsProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link TrainingDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TrainingDetailsProperty { private final java.lang.Object objectiveFunction; private final java.lang.Object trainingJobDetails; private final java.lang.String trainingObservations; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.objectiveFunction = software.amazon.jsii.Kernel.get(this, "objectiveFunction", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.trainingJobDetails = software.amazon.jsii.Kernel.get(this, "trainingJobDetails", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.trainingObservations = software.amazon.jsii.Kernel.get(this, "trainingObservations", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.objectiveFunction = builder.objectiveFunction; this.trainingJobDetails = builder.trainingJobDetails; this.trainingObservations = builder.trainingObservations; } @Override public final java.lang.Object getObjectiveFunction() { return this.objectiveFunction; } @Override public final java.lang.Object getTrainingJobDetails() { return this.trainingJobDetails; } @Override public final java.lang.String getTrainingObservations() { return this.trainingObservations; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getObjectiveFunction() != null) { data.set("objectiveFunction", om.valueToTree(this.getObjectiveFunction())); } if (this.getTrainingJobDetails() != null) { data.set("trainingJobDetails", om.valueToTree(this.getTrainingJobDetails())); } if (this.getTrainingObservations() != null) { data.set("trainingObservations", om.valueToTree(this.getTrainingObservations())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.TrainingDetailsProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; TrainingDetailsProperty.Jsii$Proxy that = (TrainingDetailsProperty.Jsii$Proxy) o; if (this.objectiveFunction != null ? !this.objectiveFunction.equals(that.objectiveFunction) : that.objectiveFunction != null) return false; if (this.trainingJobDetails != null ? !this.trainingJobDetails.equals(that.trainingJobDetails) : that.trainingJobDetails != null) return false; return this.trainingObservations != null ? this.trainingObservations.equals(that.trainingObservations) : that.trainingObservations == null; } @Override public final int hashCode() { int result = this.objectiveFunction != null ? this.objectiveFunction.hashCode() : 0; result = 31 * result + (this.trainingJobDetails != null ? this.trainingJobDetails.hashCode() : 0); result = 31 * result + (this.trainingObservations != null ? this.trainingObservations.hashCode() : 0); return result; } } } /** * SageMaker training image. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * TrainingEnvironmentProperty trainingEnvironmentProperty = TrainingEnvironmentProperty.builder()
     *         .containerImage(List.of("containerImage"))
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.TrainingEnvironmentProperty") @software.amazon.jsii.Jsii.Proxy(TrainingEnvironmentProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface TrainingEnvironmentProperty extends software.amazon.jsii.JsiiSerializable { /** * SageMaker inference image URI. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getContainerImage() { return null; } /** * @return a {@link Builder} of {@link TrainingEnvironmentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link TrainingEnvironmentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.util.List containerImage; /** * Sets the value of {@link TrainingEnvironmentProperty#getContainerImage} * @param containerImage SageMaker inference image URI. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder containerImage(java.util.List containerImage) { this.containerImage = containerImage; return this; } /** * Builds the configured instance. * @return a new instance of {@link TrainingEnvironmentProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public TrainingEnvironmentProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link TrainingEnvironmentProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TrainingEnvironmentProperty { private final java.util.List containerImage; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.containerImage = software.amazon.jsii.Kernel.get(this, "containerImage", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.containerImage = builder.containerImage; } @Override public final java.util.List getContainerImage() { return this.containerImage; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getContainerImage() != null) { data.set("containerImage", om.valueToTree(this.getContainerImage())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.TrainingEnvironmentProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; TrainingEnvironmentProperty.Jsii$Proxy that = (TrainingEnvironmentProperty.Jsii$Proxy) o; return this.containerImage != null ? this.containerImage.equals(that.containerImage) : that.containerImage == null; } @Override public final int hashCode() { int result = this.containerImage != null ? this.containerImage.hashCode() : 0; return result; } } } /** * A hyper parameter that was configured in training the model. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * TrainingHyperParameterProperty trainingHyperParameterProperty = TrainingHyperParameterProperty.builder()
     *         .name("name")
     *         .value("value")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.TrainingHyperParameterProperty") @software.amazon.jsii.Jsii.Proxy(TrainingHyperParameterProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface TrainingHyperParameterProperty extends software.amazon.jsii.JsiiSerializable { /** * The name of the hyper parameter. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getName(); /** * The value specified for the hyper parameter. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getValue(); /** * @return a {@link Builder} of {@link TrainingHyperParameterProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link TrainingHyperParameterProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String name; java.lang.String value; /** * Sets the value of {@link TrainingHyperParameterProperty#getName} * @param name The name of the hyper parameter. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder name(java.lang.String name) { this.name = name; return this; } /** * Sets the value of {@link TrainingHyperParameterProperty#getValue} * @param value The value specified for the hyper parameter. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder value(java.lang.String value) { this.value = value; return this; } /** * Builds the configured instance. * @return a new instance of {@link TrainingHyperParameterProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public TrainingHyperParameterProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link TrainingHyperParameterProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TrainingHyperParameterProperty { private final java.lang.String name; private final java.lang.String value; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.value = software.amazon.jsii.Kernel.get(this, "value", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.name = java.util.Objects.requireNonNull(builder.name, "name is required"); this.value = java.util.Objects.requireNonNull(builder.value, "value is required"); } @Override public final java.lang.String getName() { return this.name; } @Override public final java.lang.String getValue() { return this.value; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("name", om.valueToTree(this.getName())); data.set("value", om.valueToTree(this.getValue())); final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.TrainingHyperParameterProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; TrainingHyperParameterProperty.Jsii$Proxy that = (TrainingHyperParameterProperty.Jsii$Proxy) o; if (!name.equals(that.name)) return false; return this.value.equals(that.value); } @Override public final int hashCode() { int result = this.name.hashCode(); result = 31 * result + (this.value.hashCode()); return result; } } } /** * The overview of a training job. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * TrainingJobDetailsProperty trainingJobDetailsProperty = TrainingJobDetailsProperty.builder()
     *         .hyperParameters(List.of(TrainingHyperParameterProperty.builder()
     *                 .name("name")
     *                 .value("value")
     *                 .build()))
     *         .trainingArn("trainingArn")
     *         .trainingDatasets(List.of("trainingDatasets"))
     *         .trainingEnvironment(TrainingEnvironmentProperty.builder()
     *                 .containerImage(List.of("containerImage"))
     *                 .build())
     *         .trainingMetrics(List.of(TrainingMetricProperty.builder()
     *                 .name("name")
     *                 .value(123)
     *                 // the properties below are optional
     *                 .notes("notes")
     *                 .build()))
     *         .userProvidedHyperParameters(List.of(TrainingHyperParameterProperty.builder()
     *                 .name("name")
     *                 .value("value")
     *                 .build()))
     *         .userProvidedTrainingMetrics(List.of(TrainingMetricProperty.builder()
     *                 .name("name")
     *                 .value(123)
     *                 // the properties below are optional
     *                 .notes("notes")
     *                 .build()))
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.TrainingJobDetailsProperty") @software.amazon.jsii.Jsii.Proxy(TrainingJobDetailsProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface TrainingJobDetailsProperty extends software.amazon.jsii.JsiiSerializable { /** * The hyper parameters used in the training job. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getHyperParameters() { return null; } /** * The SageMaker training job Amazon Resource Name (ARN). */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getTrainingArn() { return null; } /** * The location of the datasets used to train the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.util.List getTrainingDatasets() { return null; } /** * The SageMaker training job image URI. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getTrainingEnvironment() { return null; } /** * The SageMaker training job results. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getTrainingMetrics() { return null; } /** * Additional hyper parameters that you've specified when training the model. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getUserProvidedHyperParameters() { return null; } /** * Custom training job results. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.Object getUserProvidedTrainingMetrics() { return null; } /** * @return a {@link Builder} of {@link TrainingJobDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link TrainingJobDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.Object hyperParameters; java.lang.String trainingArn; java.util.List trainingDatasets; java.lang.Object trainingEnvironment; java.lang.Object trainingMetrics; java.lang.Object userProvidedHyperParameters; java.lang.Object userProvidedTrainingMetrics; /** * Sets the value of {@link TrainingJobDetailsProperty#getHyperParameters} * @param hyperParameters The hyper parameters used in the training job. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder hyperParameters(software.amazon.awscdk.core.IResolvable hyperParameters) { this.hyperParameters = hyperParameters; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getHyperParameters} * @param hyperParameters The hyper parameters used in the training job. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder hyperParameters(java.util.List hyperParameters) { this.hyperParameters = hyperParameters; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getTrainingArn} * @param trainingArn The SageMaker training job Amazon Resource Name (ARN). * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingArn(java.lang.String trainingArn) { this.trainingArn = trainingArn; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getTrainingDatasets} * @param trainingDatasets The location of the datasets used to train the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingDatasets(java.util.List trainingDatasets) { this.trainingDatasets = trainingDatasets; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getTrainingEnvironment} * @param trainingEnvironment The SageMaker training job image URI. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingEnvironment(software.amazon.awscdk.core.IResolvable trainingEnvironment) { this.trainingEnvironment = trainingEnvironment; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getTrainingEnvironment} * @param trainingEnvironment The SageMaker training job image URI. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingEnvironment(software.amazon.awscdk.services.sagemaker.CfnModelCard.TrainingEnvironmentProperty trainingEnvironment) { this.trainingEnvironment = trainingEnvironment; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getTrainingMetrics} * @param trainingMetrics The SageMaker training job results. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingMetrics(software.amazon.awscdk.core.IResolvable trainingMetrics) { this.trainingMetrics = trainingMetrics; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getTrainingMetrics} * @param trainingMetrics The SageMaker training job results. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder trainingMetrics(java.util.List trainingMetrics) { this.trainingMetrics = trainingMetrics; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getUserProvidedHyperParameters} * @param userProvidedHyperParameters Additional hyper parameters that you've specified when training the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder userProvidedHyperParameters(software.amazon.awscdk.core.IResolvable userProvidedHyperParameters) { this.userProvidedHyperParameters = userProvidedHyperParameters; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getUserProvidedHyperParameters} * @param userProvidedHyperParameters Additional hyper parameters that you've specified when training the model. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder userProvidedHyperParameters(java.util.List userProvidedHyperParameters) { this.userProvidedHyperParameters = userProvidedHyperParameters; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getUserProvidedTrainingMetrics} * @param userProvidedTrainingMetrics Custom training job results. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder userProvidedTrainingMetrics(software.amazon.awscdk.core.IResolvable userProvidedTrainingMetrics) { this.userProvidedTrainingMetrics = userProvidedTrainingMetrics; return this; } /** * Sets the value of {@link TrainingJobDetailsProperty#getUserProvidedTrainingMetrics} * @param userProvidedTrainingMetrics Custom training job results. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder userProvidedTrainingMetrics(java.util.List userProvidedTrainingMetrics) { this.userProvidedTrainingMetrics = userProvidedTrainingMetrics; return this; } /** * Builds the configured instance. * @return a new instance of {@link TrainingJobDetailsProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public TrainingJobDetailsProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link TrainingJobDetailsProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TrainingJobDetailsProperty { private final java.lang.Object hyperParameters; private final java.lang.String trainingArn; private final java.util.List trainingDatasets; private final java.lang.Object trainingEnvironment; private final java.lang.Object trainingMetrics; private final java.lang.Object userProvidedHyperParameters; private final java.lang.Object userProvidedTrainingMetrics; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.hyperParameters = software.amazon.jsii.Kernel.get(this, "hyperParameters", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.trainingArn = software.amazon.jsii.Kernel.get(this, "trainingArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.trainingDatasets = software.amazon.jsii.Kernel.get(this, "trainingDatasets", software.amazon.jsii.NativeType.listOf(software.amazon.jsii.NativeType.forClass(java.lang.String.class))); this.trainingEnvironment = software.amazon.jsii.Kernel.get(this, "trainingEnvironment", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.trainingMetrics = software.amazon.jsii.Kernel.get(this, "trainingMetrics", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.userProvidedHyperParameters = software.amazon.jsii.Kernel.get(this, "userProvidedHyperParameters", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); this.userProvidedTrainingMetrics = software.amazon.jsii.Kernel.get(this, "userProvidedTrainingMetrics", software.amazon.jsii.NativeType.forClass(java.lang.Object.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.hyperParameters = builder.hyperParameters; this.trainingArn = builder.trainingArn; this.trainingDatasets = builder.trainingDatasets; this.trainingEnvironment = builder.trainingEnvironment; this.trainingMetrics = builder.trainingMetrics; this.userProvidedHyperParameters = builder.userProvidedHyperParameters; this.userProvidedTrainingMetrics = builder.userProvidedTrainingMetrics; } @Override public final java.lang.Object getHyperParameters() { return this.hyperParameters; } @Override public final java.lang.String getTrainingArn() { return this.trainingArn; } @Override public final java.util.List getTrainingDatasets() { return this.trainingDatasets; } @Override public final java.lang.Object getTrainingEnvironment() { return this.trainingEnvironment; } @Override public final java.lang.Object getTrainingMetrics() { return this.trainingMetrics; } @Override public final java.lang.Object getUserProvidedHyperParameters() { return this.userProvidedHyperParameters; } @Override public final java.lang.Object getUserProvidedTrainingMetrics() { return this.userProvidedTrainingMetrics; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getHyperParameters() != null) { data.set("hyperParameters", om.valueToTree(this.getHyperParameters())); } if (this.getTrainingArn() != null) { data.set("trainingArn", om.valueToTree(this.getTrainingArn())); } if (this.getTrainingDatasets() != null) { data.set("trainingDatasets", om.valueToTree(this.getTrainingDatasets())); } if (this.getTrainingEnvironment() != null) { data.set("trainingEnvironment", om.valueToTree(this.getTrainingEnvironment())); } if (this.getTrainingMetrics() != null) { data.set("trainingMetrics", om.valueToTree(this.getTrainingMetrics())); } if (this.getUserProvidedHyperParameters() != null) { data.set("userProvidedHyperParameters", om.valueToTree(this.getUserProvidedHyperParameters())); } if (this.getUserProvidedTrainingMetrics() != null) { data.set("userProvidedTrainingMetrics", om.valueToTree(this.getUserProvidedTrainingMetrics())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.TrainingJobDetailsProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; TrainingJobDetailsProperty.Jsii$Proxy that = (TrainingJobDetailsProperty.Jsii$Proxy) o; if (this.hyperParameters != null ? !this.hyperParameters.equals(that.hyperParameters) : that.hyperParameters != null) return false; if (this.trainingArn != null ? !this.trainingArn.equals(that.trainingArn) : that.trainingArn != null) return false; if (this.trainingDatasets != null ? !this.trainingDatasets.equals(that.trainingDatasets) : that.trainingDatasets != null) return false; if (this.trainingEnvironment != null ? !this.trainingEnvironment.equals(that.trainingEnvironment) : that.trainingEnvironment != null) return false; if (this.trainingMetrics != null ? !this.trainingMetrics.equals(that.trainingMetrics) : that.trainingMetrics != null) return false; if (this.userProvidedHyperParameters != null ? !this.userProvidedHyperParameters.equals(that.userProvidedHyperParameters) : that.userProvidedHyperParameters != null) return false; return this.userProvidedTrainingMetrics != null ? this.userProvidedTrainingMetrics.equals(that.userProvidedTrainingMetrics) : that.userProvidedTrainingMetrics == null; } @Override public final int hashCode() { int result = this.hyperParameters != null ? this.hyperParameters.hashCode() : 0; result = 31 * result + (this.trainingArn != null ? this.trainingArn.hashCode() : 0); result = 31 * result + (this.trainingDatasets != null ? this.trainingDatasets.hashCode() : 0); result = 31 * result + (this.trainingEnvironment != null ? this.trainingEnvironment.hashCode() : 0); result = 31 * result + (this.trainingMetrics != null ? this.trainingMetrics.hashCode() : 0); result = 31 * result + (this.userProvidedHyperParameters != null ? this.userProvidedHyperParameters.hashCode() : 0); result = 31 * result + (this.userProvidedTrainingMetrics != null ? this.userProvidedTrainingMetrics.hashCode() : 0); return result; } } } /** * A result from a SageMaker training job. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * TrainingMetricProperty trainingMetricProperty = TrainingMetricProperty.builder()
     *         .name("name")
     *         .value(123)
     *         // the properties below are optional
     *         .notes("notes")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.TrainingMetricProperty") @software.amazon.jsii.Jsii.Proxy(TrainingMetricProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface TrainingMetricProperty extends software.amazon.jsii.JsiiSerializable { /** * The name of the result from the SageMaker training job. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.String getName(); /** * The value of a result from the SageMaker training job. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @org.jetbrains.annotations.NotNull java.lang.Number getValue(); /** * Any additional notes describing the result of the training job. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getNotes() { return null; } /** * @return a {@link Builder} of {@link TrainingMetricProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link TrainingMetricProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String name; java.lang.Number value; java.lang.String notes; /** * Sets the value of {@link TrainingMetricProperty#getName} * @param name The name of the result from the SageMaker training job. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder name(java.lang.String name) { this.name = name; return this; } /** * Sets the value of {@link TrainingMetricProperty#getValue} * @param value The value of a result from the SageMaker training job. This parameter is required. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder value(java.lang.Number value) { this.value = value; return this; } /** * Sets the value of {@link TrainingMetricProperty#getNotes} * @param notes Any additional notes describing the result of the training job. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder notes(java.lang.String notes) { this.notes = notes; return this; } /** * Builds the configured instance. * @return a new instance of {@link TrainingMetricProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public TrainingMetricProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link TrainingMetricProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements TrainingMetricProperty { private final java.lang.String name; private final java.lang.Number value; private final java.lang.String notes; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.name = software.amazon.jsii.Kernel.get(this, "name", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.value = software.amazon.jsii.Kernel.get(this, "value", software.amazon.jsii.NativeType.forClass(java.lang.Number.class)); this.notes = software.amazon.jsii.Kernel.get(this, "notes", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.name = java.util.Objects.requireNonNull(builder.name, "name is required"); this.value = java.util.Objects.requireNonNull(builder.value, "value is required"); this.notes = builder.notes; } @Override public final java.lang.String getName() { return this.name; } @Override public final java.lang.Number getValue() { return this.value; } @Override public final java.lang.String getNotes() { return this.notes; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); data.set("name", om.valueToTree(this.getName())); data.set("value", om.valueToTree(this.getValue())); if (this.getNotes() != null) { data.set("notes", om.valueToTree(this.getNotes())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.TrainingMetricProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; TrainingMetricProperty.Jsii$Proxy that = (TrainingMetricProperty.Jsii$Proxy) o; if (!name.equals(that.name)) return false; if (!value.equals(that.value)) return false; return this.notes != null ? this.notes.equals(that.notes) : that.notes == null; } @Override public final int hashCode() { int result = this.name.hashCode(); result = 31 * result + (this.value.hashCode()); result = 31 * result + (this.notes != null ? this.notes.hashCode() : 0); return result; } } } /** * Information about the user who created or modified an experiment, trial, trial component, lineage group, project, or model card. *

* Example: *

*

     * // The code below shows an example of how to instantiate this type.
     * // The values are placeholders you should change.
     * import software.amazon.awscdk.services.sagemaker.*;
     * UserContextProperty userContextProperty = UserContextProperty.builder()
     *         .domainId("domainId")
     *         .userProfileArn("userProfileArn")
     *         .userProfileName("userProfileName")
     *         .build();
     * 
*/ @software.amazon.jsii.Jsii(module = software.amazon.awscdk.services.sagemaker.$Module.class, fqn = "@aws-cdk/aws-sagemaker.CfnModelCard.UserContextProperty") @software.amazon.jsii.Jsii.Proxy(UserContextProperty.Jsii$Proxy.class) @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static interface UserContextProperty extends software.amazon.jsii.JsiiSerializable { /** * The domain associated with the user. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getDomainId() { return null; } /** * The Amazon Resource Name (ARN) of the user's profile. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getUserProfileArn() { return null; } /** * The name of the user's profile. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) default @org.jetbrains.annotations.Nullable java.lang.String getUserProfileName() { return null; } /** * @return a {@link Builder} of {@link UserContextProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) static Builder builder() { return new Builder(); } /** * A builder for {@link UserContextProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { java.lang.String domainId; java.lang.String userProfileArn; java.lang.String userProfileName; /** * Sets the value of {@link UserContextProperty#getDomainId} * @param domainId The domain associated with the user. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder domainId(java.lang.String domainId) { this.domainId = domainId; return this; } /** * Sets the value of {@link UserContextProperty#getUserProfileArn} * @param userProfileArn The Amazon Resource Name (ARN) of the user's profile. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder userProfileArn(java.lang.String userProfileArn) { this.userProfileArn = userProfileArn; return this; } /** * Sets the value of {@link UserContextProperty#getUserProfileName} * @param userProfileName The name of the user's profile. * @return {@code this} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder userProfileName(java.lang.String userProfileName) { this.userProfileName = userProfileName; return this; } /** * Builds the configured instance. * @return a new instance of {@link UserContextProperty} * @throws NullPointerException if any required attribute was not provided */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public UserContextProperty build() { return new Jsii$Proxy(this); } } /** * An implementation for {@link UserContextProperty} */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @software.amazon.jsii.Internal final class Jsii$Proxy extends software.amazon.jsii.JsiiObject implements UserContextProperty { private final java.lang.String domainId; private final java.lang.String userProfileArn; private final java.lang.String userProfileName; /** * Constructor that initializes the object based on values retrieved from the JsiiObject. * @param objRef Reference to the JSII managed object. */ protected Jsii$Proxy(final software.amazon.jsii.JsiiObjectRef objRef) { super(objRef); this.domainId = software.amazon.jsii.Kernel.get(this, "domainId", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.userProfileArn = software.amazon.jsii.Kernel.get(this, "userProfileArn", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); this.userProfileName = software.amazon.jsii.Kernel.get(this, "userProfileName", software.amazon.jsii.NativeType.forClass(java.lang.String.class)); } /** * Constructor that initializes the object based on literal property values passed by the {@link Builder}. */ protected Jsii$Proxy(final Builder builder) { super(software.amazon.jsii.JsiiObject.InitializationMode.JSII); this.domainId = builder.domainId; this.userProfileArn = builder.userProfileArn; this.userProfileName = builder.userProfileName; } @Override public final java.lang.String getDomainId() { return this.domainId; } @Override public final java.lang.String getUserProfileArn() { return this.userProfileArn; } @Override public final java.lang.String getUserProfileName() { return this.userProfileName; } @Override @software.amazon.jsii.Internal public com.fasterxml.jackson.databind.JsonNode $jsii$toJson() { final com.fasterxml.jackson.databind.ObjectMapper om = software.amazon.jsii.JsiiObjectMapper.INSTANCE; final com.fasterxml.jackson.databind.node.ObjectNode data = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); if (this.getDomainId() != null) { data.set("domainId", om.valueToTree(this.getDomainId())); } if (this.getUserProfileArn() != null) { data.set("userProfileArn", om.valueToTree(this.getUserProfileArn())); } if (this.getUserProfileName() != null) { data.set("userProfileName", om.valueToTree(this.getUserProfileName())); } final com.fasterxml.jackson.databind.node.ObjectNode struct = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); struct.set("fqn", om.valueToTree("@aws-cdk/aws-sagemaker.CfnModelCard.UserContextProperty")); struct.set("data", data); final com.fasterxml.jackson.databind.node.ObjectNode obj = com.fasterxml.jackson.databind.node.JsonNodeFactory.instance.objectNode(); obj.set("$jsii.struct", struct); return obj; } @Override public final boolean equals(final Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; UserContextProperty.Jsii$Proxy that = (UserContextProperty.Jsii$Proxy) o; if (this.domainId != null ? !this.domainId.equals(that.domainId) : that.domainId != null) return false; if (this.userProfileArn != null ? !this.userProfileArn.equals(that.userProfileArn) : that.userProfileArn != null) return false; return this.userProfileName != null ? this.userProfileName.equals(that.userProfileName) : that.userProfileName == null; } @Override public final int hashCode() { int result = this.domainId != null ? this.domainId.hashCode() : 0; result = 31 * result + (this.userProfileArn != null ? this.userProfileArn.hashCode() : 0); result = 31 * result + (this.userProfileName != null ? this.userProfileName.hashCode() : 0); return result; } } } /** * A fluent builder for {@link software.amazon.awscdk.services.sagemaker.CfnModelCard}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static final class Builder implements software.amazon.jsii.Builder { /** * @return a new instance of {@link Builder}. * @param scope - scope in which this resource is defined. This parameter is required. * @param id - scoped id of the resource. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public static Builder create(final software.amazon.awscdk.core.Construct scope, final java.lang.String id) { return new Builder(scope, id); } private final software.amazon.awscdk.core.Construct scope; private final java.lang.String id; private final software.amazon.awscdk.services.sagemaker.CfnModelCardProps.Builder props; private Builder(final software.amazon.awscdk.core.Construct scope, final java.lang.String id) { this.scope = scope; this.id = id; this.props = new software.amazon.awscdk.services.sagemaker.CfnModelCardProps.Builder(); } /** * The content of the model card. *

* Content uses the model card JSON schema . *

* @return {@code this} * @param content The content of the model card. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder content(final software.amazon.awscdk.core.IResolvable content) { this.props.content(content); return this; } /** * The content of the model card. *

* Content uses the model card JSON schema . *

* @return {@code this} * @param content The content of the model card. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder content(final software.amazon.awscdk.services.sagemaker.CfnModelCard.ContentProperty content) { this.props.content(content); return this; } /** * The unique name of the model card. *

* @return {@code this} * @param modelCardName The unique name of the model card. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelCardName(final java.lang.String modelCardName) { this.props.modelCardName(modelCardName); return this; } /** * 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 should be made to the model card, but it can still be exported.
  • *
*

* @return {@code this} * @param modelCardStatus The approval status of the model card within your organization. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder modelCardStatus(final java.lang.String modelCardStatus) { this.props.modelCardStatus(modelCardStatus); return this; } /** * Information about the user who created or modified one or more of the following:. *

*

    *
  • Experiment
  • *
  • Trial
  • *
  • Trial component
  • *
  • Lineage group
  • *
  • Project
  • *
  • Model Card
  • *
*

* @return {@code this} * @param createdBy Information about the user who created or modified one or more of the following:. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder createdBy(final software.amazon.awscdk.core.IResolvable createdBy) { this.props.createdBy(createdBy); return this; } /** * Information about the user who created or modified one or more of the following:. *

*

    *
  • Experiment
  • *
  • Trial
  • *
  • Trial component
  • *
  • Lineage group
  • *
  • Project
  • *
  • Model Card
  • *
*

* @return {@code this} * @param createdBy Information about the user who created or modified one or more of the following:. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder createdBy(final software.amazon.awscdk.services.sagemaker.CfnModelCard.UserContextProperty createdBy) { this.props.createdBy(createdBy); return this; } /** * `AWS::SageMaker::ModelCard.LastModifiedBy`. *

* @return {@code this} * @param lastModifiedBy `AWS::SageMaker::ModelCard.LastModifiedBy`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder lastModifiedBy(final software.amazon.awscdk.core.IResolvable lastModifiedBy) { this.props.lastModifiedBy(lastModifiedBy); return this; } /** * `AWS::SageMaker::ModelCard.LastModifiedBy`. *

* @return {@code this} * @param lastModifiedBy `AWS::SageMaker::ModelCard.LastModifiedBy`. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder lastModifiedBy(final software.amazon.awscdk.services.sagemaker.CfnModelCard.UserContextProperty lastModifiedBy) { this.props.lastModifiedBy(lastModifiedBy); return this; } /** * The security configuration used to protect model card data. *

* @return {@code this} * @param securityConfig The security configuration used to protect model card data. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder securityConfig(final software.amazon.awscdk.core.IResolvable securityConfig) { this.props.securityConfig(securityConfig); return this; } /** * The security configuration used to protect model card data. *

* @return {@code this} * @param securityConfig The security configuration used to protect model card data. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder securityConfig(final software.amazon.awscdk.services.sagemaker.CfnModelCard.SecurityConfigProperty securityConfig) { this.props.securityConfig(securityConfig); return this; } /** * Key-value pairs used to manage metadata for the model card. *

* @return {@code this} * @param tags Key-value pairs used to manage metadata for the model card. This parameter is required. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) public Builder tags(final java.util.List tags) { this.props.tags(tags); return this; } /** * @returns a newly built instance of {@link software.amazon.awscdk.services.sagemaker.CfnModelCard}. */ @software.amazon.jsii.Stability(software.amazon.jsii.Stability.Level.Stable) @Override public software.amazon.awscdk.services.sagemaker.CfnModelCard build() { return new software.amazon.awscdk.services.sagemaker.CfnModelCard( this.scope, this.id, this.props.build() ); } } }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy