Class: AWSCDK::Sagemaker::CfnInferenceExperiment

Inherits:
CfnResource
  • Object
show all
Includes:
IInspectable, ITaggable, Interfaces::AWSSagemaker::IInferenceExperimentRef
Defined in:
sagemaker/cfn_inference_experiment.rb

Overview

Creates an inference experiment using the configurations specified in the request.

Use this API to setup and schedule an experiment to compare model variants on a Amazon SageMaker inference endpoint. For more information about inference experiments, see Shadow tests .

Amazon SageMaker begins your experiment at the scheduled time and routes traffic to your endpoint's model variants based on your specified configuration.

While the experiment is in progress or after it has concluded, you can view metrics that compare your model variants. For more information, see View, monitor, and edit shadow tests .

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(scope, id, props) ⇒ CfnInferenceExperiment

Create a new AWS::SageMaker::InferenceExperiment.

Parameters:

  • scope (Constructs::Construct)

    Scope in which this resource is defined.

  • id (String)

    Construct identifier for this resource (unique in its scope).

  • props (AWSCDK::Sagemaker::CfnInferenceExperimentProps)

    Resource properties.



24
25
26
27
28
29
30
# File 'sagemaker/cfn_inference_experiment.rb', line 24

def initialize(scope, id, props)
  props = props.is_a?(Hash) ? ::AWSCDK::Sagemaker::CfnInferenceExperimentProps.new(**props.transform_keys(&:to_sym)) : props
  Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope")
  Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id")
  Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc2FnZW1ha2VyLkNmbkluZmVyZW5jZUV4cGVyaW1lbnRQcm9wcyJ9")), "props")
  Jsii::Object.instance_method(:initialize).bind(self).call(scope, id, props)
end

Class Method Details

.arn_for_inference_experiment(resource) ⇒ String

Parameters:

Returns:

  • (String)


97
98
99
100
# File 'sagemaker/cfn_inference_experiment.rb', line 97

def self.arn_for_inference_experiment(resource)
  Jsii::Type.check_type(resource, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5pbnRlcmZhY2VzLmF3c19zYWdlbWFrZXIuSUluZmVyZW5jZUV4cGVyaW1lbnRSZWYifQ==")), "resource")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_sagemaker.CfnInferenceExperiment", "arnForInferenceExperiment", [resource])
end

.CFN_RESOURCE_TYPE_NAMEString

The CloudFormation resource type name for this resource class.

Returns:

  • (String)


230
231
232
# File 'sagemaker/cfn_inference_experiment.rb', line 230

def self.CFN_RESOURCE_TYPE_NAME()
  Jsii::Kernel.instance.get_static("aws-cdk-lib.aws_sagemaker.CfnInferenceExperiment", "CFN_RESOURCE_TYPE_NAME")
end

.from_inference_experiment_arn(scope, id, arn) ⇒ AWSCDK::Interfaces::AWSSagemaker::IInferenceExperimentRef

Creates a new IInferenceExperimentRef from an ARN.

Parameters:

  • scope (Constructs::Construct)
  • id (String)
  • arn (String)

Returns:



108
109
110
111
112
113
# File 'sagemaker/cfn_inference_experiment.rb', line 108

def self.from_inference_experiment_arn(scope, id, arn)
  Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope")
  Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id")
  Jsii::Type.check_type(arn, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "arn")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_sagemaker.CfnInferenceExperiment", "fromInferenceExperimentArn", [scope, id, arn])
end

.from_inference_experiment_name(scope, id, inference_experiment_name) ⇒ AWSCDK::Interfaces::AWSSagemaker::IInferenceExperimentRef

Creates a new IInferenceExperimentRef from a inferenceExperimentName.

Parameters:

  • scope (Constructs::Construct)
  • id (String)
  • inference_experiment_name (String)

Returns:



121
122
123
124
125
126
# File 'sagemaker/cfn_inference_experiment.rb', line 121

def self.from_inference_experiment_name(scope, id, inference_experiment_name)
  Jsii::Type.check_type(scope, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLkNvbnN0cnVjdCJ9")), "scope")
  Jsii::Type.check_type(id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "id")
  Jsii::Type.check_type(inference_experiment_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "inferenceExperimentName")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_sagemaker.CfnInferenceExperiment", "fromInferenceExperimentName", [scope, id, inference_experiment_name])
end

.is_cfn_inference_experiment(x) ⇒ Boolean

Checks whether the given object is a CfnInferenceExperiment.

Parameters:

  • x (Object)

Returns:

  • (Boolean)


132
133
134
135
# File 'sagemaker/cfn_inference_experiment.rb', line 132

def self.is_cfn_inference_experiment(x)
  Jsii::Type.check_type(x, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "x")
  Jsii::Kernel.instance.call_static("aws-cdk-lib.aws_sagemaker.CfnInferenceExperiment", "isCfnInferenceExperiment", [x])
end

.jsii_overridable_methodsObject



32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
# File 'sagemaker/cfn_inference_experiment.rb', line 32

def self.jsii_overridable_methods
  {
    :node => { kind: :property, name: "node", is_optional: false },
    :creation_stack => { kind: :property, name: "creationStack", is_optional: false },
    :logical_id => { kind: :property, name: "logicalId", is_optional: false },
    :stack => { kind: :property, name: "stack", is_optional: false },
    :ref => { kind: :property, name: "ref", is_optional: false },
    :cfn_options => { kind: :property, name: "cfnOptions", is_optional: false },
    :cfn_properties => { kind: :property, name: "cfnProperties", is_optional: false },
    :cfn_property_names => { kind: :property, name: "cfnPropertyNames", is_optional: false },
    :cfn_resource_type => { kind: :property, name: "cfnResourceType", is_optional: false },
    :env => { kind: :property, name: "env", is_optional: false },
    :updated_properites => { kind: :property, name: "updatedProperites", is_optional: false },
    :updated_properties => { kind: :property, name: "updatedProperties", is_optional: false },
    :attr_arn => { kind: :property, name: "attrArn", is_optional: false },
    :attr_creation_time => { kind: :property, name: "attrCreationTime", is_optional: false },
    :attr_endpoint_metadata => { kind: :property, name: "attrEndpointMetadata", is_optional: false },
    :attr_endpoint_metadata_endpoint_config_name => { kind: :property, name: "attrEndpointMetadataEndpointConfigName", is_optional: false },
    :attr_endpoint_metadata_endpoint_name => { kind: :property, name: "attrEndpointMetadataEndpointName", is_optional: false },
    :attr_endpoint_metadata_endpoint_status => { kind: :property, name: "attrEndpointMetadataEndpointStatus", is_optional: false },
    :attr_last_modified_time => { kind: :property, name: "attrLastModifiedTime", is_optional: false },
    :attr_status => { kind: :property, name: "attrStatus", is_optional: false },
    :inference_experiment_ref => { kind: :property, name: "inferenceExperimentRef", is_optional: false },
    :tags => { kind: :property, name: "tags", is_optional: false },
    :endpoint_name => { kind: :property, name: "endpointName", is_optional: false },
    :model_variants => { kind: :property, name: "modelVariants", is_optional: false },
    :name => { kind: :property, name: "name", is_optional: false },
    :role_arn => { kind: :property, name: "roleArn", is_optional: false },
    :type => { kind: :property, name: "type", is_optional: false },
    :data_storage_config => { kind: :property, name: "dataStorageConfig", is_optional: true },
    :description => { kind: :property, name: "description", is_optional: true },
    :desired_state => { kind: :property, name: "desiredState", is_optional: true },
    :kms_key => { kind: :property, name: "kmsKey", is_optional: true },
    :schedule => { kind: :property, name: "schedule", is_optional: true },
    :shadow_mode_config => { kind: :property, name: "shadowModeConfig", is_optional: true },
    :status_reason => { kind: :property, name: "statusReason", is_optional: true },
    :tags_raw => { kind: :property, name: "tagsRaw", is_optional: true },
    :to_string => { kind: :method, name: "toString", is_optional: false },
    :with => { kind: :method, name: "with", is_optional: false },
    :override_logical_id => { kind: :method, name: "overrideLogicalId", is_optional: false },
    :add_deletion_override => { kind: :method, name: "addDeletionOverride", is_optional: false },
    :add_dependency => { kind: :method, name: "addDependency", is_optional: false },
    :add_depends_on => { kind: :method, name: "addDependsOn", is_optional: false },
    :add_metadata => { kind: :method, name: "addMetadata", is_optional: false },
    :add_override => { kind: :method, name: "addOverride", is_optional: false },
    :add_property_deletion_override => { kind: :method, name: "addPropertyDeletionOverride", is_optional: false },
    :add_property_override => { kind: :method, name: "addPropertyOverride", is_optional: false },
    :apply_cross_stack_reference_strength => { kind: :method, name: "applyCrossStackReferenceStrength", is_optional: false },
    :apply_removal_policy => { kind: :method, name: "applyRemovalPolicy", is_optional: false },
    :cfn_property_name => { kind: :method, name: "cfnPropertyName", is_optional: false },
    :get_att => { kind: :method, name: "getAtt", is_optional: false },
    :get_metadata => { kind: :method, name: "getMetadata", is_optional: false },
    :obtain_dependencies => { kind: :method, name: "obtainDependencies", is_optional: false },
    :obtain_resource_dependencies => { kind: :method, name: "obtainResourceDependencies", is_optional: false },
    :remove_dependency => { kind: :method, name: "removeDependency", is_optional: false },
    :render_properties => { kind: :method, name: "renderProperties", is_optional: false },
    :replace_dependency => { kind: :method, name: "replaceDependency", is_optional: false },
    :should_synthesize => { kind: :method, name: "shouldSynthesize", is_optional: false },
    :validate_properties => { kind: :method, name: "validateProperties", is_optional: false },
    :inspect => { kind: :method, name: "inspect", is_optional: false },
  }
end

Instance Method Details

#add_deletion_override(path) ⇒ void

This method returns an undefined value.

Syntactic sugar for addOverride(path, undefined).

Parameters:

  • path (String)

    The path of the value to delete.



505
506
507
508
# File 'sagemaker/cfn_inference_experiment.rb', line 505

def add_deletion_override(path)
  Jsii::Type.check_type(path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "path")
  jsii_call_method("addDeletionOverride", [path])
end

#add_dependency(target) ⇒ void

This method returns an undefined value.

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

This can be used for resources across stacks (or nested stack) boundaries and the dependency will automatically be transferred to the relevant scope.

Parameters:



517
518
519
520
# File 'sagemaker/cfn_inference_experiment.rb', line 517

def add_dependency(target)
  Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target")
  jsii_call_method("addDependency", [target])
end

#add_depends_on(target) ⇒ void

Deprecated.

use addDependency

This method returns an undefined value.

Indicates that this resource depends on another resource and cannot be provisioned unless the other resource has been successfully provisioned.

Parameters:



527
528
529
530
# File 'sagemaker/cfn_inference_experiment.rb', line 527

def add_depends_on(target)
  Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target")
  jsii_call_method("addDependsOn", [target])
end

#add_metadata(key, value) ⇒ void

This method returns an undefined value.

Add a value to the CloudFormation Resource Metadata.



538
539
540
541
542
# File 'sagemaker/cfn_inference_experiment.rb', line 538

def (key, value)
  Jsii::Type.check_type(key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "key")
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value")
  jsii_call_method("addMetadata", [key, value])
end

#add_override(path, value) ⇒ void

This method returns an undefined value.

Adds an override to the synthesized CloudFormation resource.

To add a property override, either use add_property_override or prefix path with "Properties." (i.e. Properties.TopicName).

If the override is nested, separate each nested level using a dot (.) in the path parameter. If there is an array as part of the nesting, specify the index in the path.

To include a literal . in the property name, prefix with a \. In most programming languages you will need to write this as "\\." because the \ itself will need to be escaped.

For example,

# Example automatically generated from non-compiling source. May contain errors.
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.0.Projection.NonKeyAttributes", ["myattribute"])
cfn_resource.add_override("Properties.GlobalSecondaryIndexes.1.ProjectionType", "INCLUDE")

would add the overrides

"Properties": {
  "GlobalSecondaryIndexes": [
    {
      "Projection": {
        "NonKeyAttributes": [ "myattribute" ]
        ...
      }
      ...
    },
    {
      "ProjectionType": "INCLUDE"
      ...
    },
  ]
  ...
}

The value argument to add_override will not be processed or translated in any way. Pass raw JSON values in here with the correct capitalization for CloudFormation. If you pass CDK classes or structs, they will be rendered with lowercased key names, and CloudFormation will reject the template.

Parameters:

  • path (String)
    • The path of the property, you can use dot notation to override values in complex types.
  • value (Object)
    • The value.


595
596
597
598
599
# File 'sagemaker/cfn_inference_experiment.rb', line 595

def add_override(path, value)
  Jsii::Type.check_type(path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "path")
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value")
  jsii_call_method("addOverride", [path, value])
end

#add_property_deletion_override(property_path) ⇒ void

This method returns an undefined value.

Adds an override that deletes the value of a property from the resource definition.

Parameters:

  • property_path (String)

    The path to the property.



605
606
607
608
# File 'sagemaker/cfn_inference_experiment.rb', line 605

def add_property_deletion_override(property_path)
  Jsii::Type.check_type(property_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "propertyPath")
  jsii_call_method("addPropertyDeletionOverride", [property_path])
end

#add_property_override(property_path, value) ⇒ void

This method returns an undefined value.

Adds an override to a resource property.

Syntactic sugar for addOverride("Properties.<...>", value).

Parameters:

  • property_path (String)

    The path of the property.

  • value (Object)

    The value.



617
618
619
620
621
# File 'sagemaker/cfn_inference_experiment.rb', line 617

def add_property_override(property_path, value)
  Jsii::Type.check_type(property_path, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "propertyPath")
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "value")
  jsii_call_method("addPropertyOverride", [property_path, value])
end

#apply_cross_stack_reference_strength(strength) ⇒ void

This method returns an undefined value.

Sets the cross-stack reference strength for this resource.

When set, any cross-stack reference to this resource will use the specified strength instead of the global default from the consuming stack's context.

Parameters:



630
631
632
633
# File 'sagemaker/cfn_inference_experiment.rb', line 630

def apply_cross_stack_reference_strength(strength)
  Jsii::Type.check_type(strength, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZWZlcmVuY2VTdHJlbmd0aCJ9")), "strength")
  jsii_call_method("applyCrossStackReferenceStrength", [strength])
end

#apply_removal_policy(policy = nil, options = nil) ⇒ void

This method returns an undefined value.

Sets the deletion policy of the resource based on the removal policy specified.

The Removal Policy controls what happens to this resource when it stops being managed by CloudFormation, either because you've removed it from the CDK application or because you've made a change that requires the resource to be replaced.

The resource can be deleted (RemovalPolicy.DESTROY), or left in your AWS account for data recovery and cleanup later (RemovalPolicy.RETAIN). In some cases, a snapshot can be taken of the resource prior to deletion (RemovalPolicy.SNAPSHOT). A list of resources that support this policy can be found in the following link:



652
653
654
655
656
657
# File 'sagemaker/cfn_inference_experiment.rb', line 652

def apply_removal_policy(policy = nil, options = nil)
  Jsii::Type.check_type(policy, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5In0=")), "policy") unless policy.nil?
  options = options.is_a?(Hash) ? ::AWSCDK::RemovalPolicyOptions.new(**options.transform_keys(&:to_sym)) : options
  Jsii::Type.check_type(options, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZW1vdmFsUG9saWN5T3B0aW9ucyJ9")), "options") unless options.nil?
  jsii_call_method("applyRemovalPolicy", [policy, options])
end

#attr_arnString

The ARN for your inference experiment.

Returns:

  • (String)


237
238
239
# File 'sagemaker/cfn_inference_experiment.rb', line 237

def attr_arn()
  jsii_get_property("attrArn")
end

#attr_creation_timeString

The timestamp at which the inference experiment was created.

Returns:

  • (String)


244
245
246
# File 'sagemaker/cfn_inference_experiment.rb', line 244

def attr_creation_time()
  jsii_get_property("attrCreationTime")
end

#attr_endpoint_metadataAWSCDK::IResolvable

The metadata of the endpoint on which the inference experiment ran.

Returns:



251
252
253
# File 'sagemaker/cfn_inference_experiment.rb', line 251

def ()
  jsii_get_property("attrEndpointMetadata")
end

#attr_endpoint_metadata_endpoint_config_nameString

Returns:

  • (String)


256
257
258
# File 'sagemaker/cfn_inference_experiment.rb', line 256

def ()
  jsii_get_property("attrEndpointMetadataEndpointConfigName")
end

#attr_endpoint_metadata_endpoint_nameString

Returns:

  • (String)


261
262
263
# File 'sagemaker/cfn_inference_experiment.rb', line 261

def ()
  jsii_get_property("attrEndpointMetadataEndpointName")
end

#attr_endpoint_metadata_endpoint_statusString

Returns:

  • (String)


266
267
268
# File 'sagemaker/cfn_inference_experiment.rb', line 266

def ()
  jsii_get_property("attrEndpointMetadataEndpointStatus")
end

#attr_last_modified_timeString

The timestamp at which you last modified the inference experiment.

Returns:

  • (String)


273
274
275
# File 'sagemaker/cfn_inference_experiment.rb', line 273

def attr_last_modified_time()
  jsii_get_property("attrLastModifiedTime")
end

#attr_statusString

The status of the inference experiment. The following are the possible statuses for an inference experiment:.

  • Creating - Amazon SageMaker is creating your experiment.
  • Created - Amazon SageMaker has finished the creation of your experiment and will begin the experiment at the scheduled time.
  • Updating - When you make changes to your experiment, your experiment shows as updating.
  • Starting - Amazon SageMaker is beginning your experiment.
  • Running - Your experiment is in progress.
  • Stopping - Amazon SageMaker is stopping your experiment.
  • Completed - Your experiment has completed.
  • Cancelled - When you conclude your experiment early using the StopInferenceExperiment API, or if any operation fails with an unexpected error, it shows as cancelled.

Returns:

  • (String)


289
290
291
# File 'sagemaker/cfn_inference_experiment.rb', line 289

def attr_status()
  jsii_get_property("attrStatus")
end

#cfn_optionsAWSCDK::ICfnResourceOptions

Options for this resource, such as condition, update policy etc.



183
184
185
# File 'sagemaker/cfn_inference_experiment.rb', line 183

def cfn_options()
  jsii_get_property("cfnOptions")
end

#cfn_propertiesHash{String => Object}

Returns:

  • (Hash{String => Object})


188
189
190
# File 'sagemaker/cfn_inference_experiment.rb', line 188

def cfn_properties()
  jsii_get_property("cfnProperties")
end

#cfn_property_name(cdk_property_name) ⇒ String?

Parameters:

  • cdk_property_name (String)

Returns:

  • (String, nil)


661
662
663
664
# File 'sagemaker/cfn_inference_experiment.rb', line 661

def cfn_property_name(cdk_property_name)
  Jsii::Type.check_type(cdk_property_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "cdkPropertyName")
  jsii_call_method("cfnPropertyName", [cdk_property_name])
end

#cfn_property_namesHash{String => String}

Returns:

  • (Hash{String => String})


193
194
195
# File 'sagemaker/cfn_inference_experiment.rb', line 193

def cfn_property_names()
  jsii_get_property("cfnPropertyNames")
end

#cfn_resource_typeString

AWS resource type.

Returns:

  • (String)


200
201
202
# File 'sagemaker/cfn_inference_experiment.rb', line 200

def cfn_resource_type()
  jsii_get_property("cfnResourceType")
end

#creation_stackArray<String>

Returns:

  • (Array<String>)


145
146
147
# File 'sagemaker/cfn_inference_experiment.rb', line 145

def creation_stack()
  jsii_get_property("creationStack")
end

#data_storage_configAWSCDK::IResolvable, ...

The Amazon S3 location and configuration for storing inference request and response data.



370
371
372
# File 'sagemaker/cfn_inference_experiment.rb', line 370

def data_storage_config()
  jsii_get_property("dataStorageConfig")
end

#data_storage_config=(value) ⇒ Object



374
375
376
377
378
# File 'sagemaker/cfn_inference_experiment.rb', line 374

def data_storage_config=(value)
  value = value.is_a?(Hash) ? ::AWSCDK::Sagemaker::CfnInferenceExperiment::DataStorageConfigProperty.new(**value.transform_keys(&:to_sym)) : value
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zYWdlbWFrZXIuQ2ZuSW5mZXJlbmNlRXhwZXJpbWVudC5EYXRhU3RvcmFnZUNvbmZpZ1Byb3BlcnR5In1dfX0=")), "dataStorageConfig") unless value.nil?
  jsii_set_property("dataStorageConfig", value)
end

#descriptionString?

The description of the inference experiment.

Returns:

  • (String, nil)


383
384
385
# File 'sagemaker/cfn_inference_experiment.rb', line 383

def description()
  jsii_get_property("description")
end

#description=(value) ⇒ Object



387
388
389
390
# File 'sagemaker/cfn_inference_experiment.rb', line 387

def description=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "description") unless value.nil?
  jsii_set_property("description", value)
end

#desired_stateString?

The desired state of the experiment after stopping.

The possible states are the following:.

Returns:

  • (String, nil)


397
398
399
# File 'sagemaker/cfn_inference_experiment.rb', line 397

def desired_state()
  jsii_get_property("desiredState")
end

#desired_state=(value) ⇒ Object



401
402
403
404
# File 'sagemaker/cfn_inference_experiment.rb', line 401

def desired_state=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "desiredState") unless value.nil?
  jsii_set_property("desiredState", value)
end

#endpoint_nameString

The name of the endpoint.

Returns:

  • (String)


310
311
312
# File 'sagemaker/cfn_inference_experiment.rb', line 310

def endpoint_name()
  jsii_get_property("endpointName")
end

#endpoint_name=(value) ⇒ Object



314
315
316
317
# File 'sagemaker/cfn_inference_experiment.rb', line 314

def endpoint_name=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "endpointName")
  jsii_set_property("endpointName", value)
end

#envAWSCDK::Interfaces::ResourceEnvironment



205
206
207
# File 'sagemaker/cfn_inference_experiment.rb', line 205

def env()
  jsii_get_property("env")
end

#get_att(attribute_name, type_hint = nil) ⇒ AWSCDK::Reference

Returns a token for an runtime attribute of this resource.

Ideally, use generated attribute accessors (e.g. resource.arn), but this can be used for future compatibility in case there is no generated attribute.

Parameters:

Returns:



674
675
676
677
678
# File 'sagemaker/cfn_inference_experiment.rb', line 674

def get_att(attribute_name, type_hint = nil)
  Jsii::Type.check_type(attribute_name, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "attributeName")
  Jsii::Type.check_type(type_hint, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5SZXNvbHV0aW9uVHlwZUhpbnQifQ==")), "typeHint") unless type_hint.nil?
  jsii_call_method("getAtt", [attribute_name, type_hint])
end

#get_metadata(key) ⇒ Object

Retrieve a value value from the CloudFormation Resource Metadata.



685
686
687
688
# File 'sagemaker/cfn_inference_experiment.rb', line 685

def (key)
  Jsii::Type.check_type(key, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "key")
  jsii_call_method("getMetadata", [key])
end

#inference_experiment_refAWSCDK::Interfaces::AWSSagemaker::InferenceExperimentReference

A reference to a InferenceExperiment resource.



296
297
298
# File 'sagemaker/cfn_inference_experiment.rb', line 296

def inference_experiment_ref()
  jsii_get_property("inferenceExperimentRef")
end

#inspect(inspector) ⇒ void

This method returns an undefined value.

Examines the CloudFormation resource and discloses attributes.

Parameters:



755
756
757
758
# File 'sagemaker/cfn_inference_experiment.rb', line 755

def inspect(inspector)
  Jsii::Type.check_type(inspector, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5UcmVlSW5zcGVjdG9yIn0=")), "inspector")
  jsii_call_method("inspect", [inspector])
end

#kms_keyString?

The AWS Key Management Service key that Amazon SageMaker uses to encrypt captured data at rest using Amazon S3 server-side encryption.

Returns:

  • (String, nil)


409
410
411
# File 'sagemaker/cfn_inference_experiment.rb', line 409

def kms_key()
  jsii_get_property("kmsKey")
end

#kms_key=(value) ⇒ Object



413
414
415
416
# File 'sagemaker/cfn_inference_experiment.rb', line 413

def kms_key=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "kmsKey") unless value.nil?
  jsii_set_property("kmsKey", value)
end

#logical_idString

The logical ID for this CloudFormation stack element.

The logical ID of the element is calculated from the path of the resource node in the construct tree.

To override this value, use override_logical_id(new_logical_id).

Returns:

  • (String)


157
158
159
# File 'sagemaker/cfn_inference_experiment.rb', line 157

def logical_id()
  jsii_get_property("logicalId")
end

#model_variantsAWSCDK::IResolvable, Array<AWSCDK::IResolvable, AWSCDK::Sagemaker::CfnInferenceExperiment::ModelVariantConfigProperty>

An array of ModelVariantConfigSummary objects.



322
323
324
# File 'sagemaker/cfn_inference_experiment.rb', line 322

def model_variants()
  jsii_get_property("modelVariants")
end

#model_variants=(value) ⇒ Object



326
327
328
329
# File 'sagemaker/cfn_inference_experiment.rb', line 326

def model_variants=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImNvbGxlY3Rpb24iOnsiZWxlbWVudHR5cGUiOnsidW5pb24iOnsidHlwZXMiOlt7ImZxbiI6ImF3cy1jZGstbGliLklSZXNvbHZhYmxlIn0seyJmcW4iOiJhd3MtY2RrLWxpYi5hd3Nfc2FnZW1ha2VyLkNmbkluZmVyZW5jZUV4cGVyaW1lbnQuTW9kZWxWYXJpYW50Q29uZmlnUHJvcGVydHkifV19fSwia2luZCI6ImFycmF5In19XX19")), "modelVariants")
  jsii_set_property("modelVariants", value)
end

#nameString

The name of the inference experiment.

Returns:

  • (String)


334
335
336
# File 'sagemaker/cfn_inference_experiment.rb', line 334

def name()
  jsii_get_property("name")
end

#name=(value) ⇒ Object



338
339
340
341
# File 'sagemaker/cfn_inference_experiment.rb', line 338

def name=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "name")
  jsii_set_property("name", value)
end

#nodeConstructs::Node

The tree node.

Returns:

  • (Constructs::Node)


140
141
142
# File 'sagemaker/cfn_inference_experiment.rb', line 140

def node()
  jsii_get_property("node")
end

#obtain_dependenciesArray<AWSCDK::CfnResource, AWSCDK::Stack>

Retrieves an array of resources this resource depends on.

This assembles dependencies on resources across stacks (including nested stacks) automatically.

Returns:



696
697
698
# File 'sagemaker/cfn_inference_experiment.rb', line 696

def obtain_dependencies()
  jsii_call_method("obtainDependencies", [])
end

#obtain_resource_dependenciesArray<AWSCDK::CfnResource>

Get a shallow copy of dependencies between this resource and other resources in the same stack.

Returns:



703
704
705
# File 'sagemaker/cfn_inference_experiment.rb', line 703

def obtain_resource_dependencies()
  jsii_call_method("obtainResourceDependencies", [])
end

#override_logical_id(new_logical_id) ⇒ void

This method returns an undefined value.

Overrides the auto-generated logical ID with a specific ID.

Parameters:

  • new_logical_id (String)

    The new logical ID to use for this stack element.



496
497
498
499
# File 'sagemaker/cfn_inference_experiment.rb', line 496

def override_logical_id(new_logical_id)
  Jsii::Type.check_type(new_logical_id, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "newLogicalId")
  jsii_call_method("overrideLogicalId", [new_logical_id])
end

#refString

Return a string that will be resolved to a CloudFormation { Ref } for this element.

If, by any chance, the intrinsic reference of a resource is not a string, you could coerce it to an IResolvable through Lazy.any({ produce: resource.ref }).

Returns:

  • (String)


176
177
178
# File 'sagemaker/cfn_inference_experiment.rb', line 176

def ref()
  jsii_get_property("ref")
end

#remove_dependency(target) ⇒ void

This method returns an undefined value.

Indicates that this resource no longer depends on another resource.

This can be used for resources across stacks (including nested stacks) and the dependency will automatically be removed from the relevant scope.

Parameters:



714
715
716
717
# File 'sagemaker/cfn_inference_experiment.rb', line 714

def remove_dependency(target)
  Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target")
  jsii_call_method("removeDependency", [target])
end

#render_properties(props) ⇒ Hash{String => Object}

Parameters:

  • props (Hash{String => Object})

Returns:

  • (Hash{String => Object})


721
722
723
724
# File 'sagemaker/cfn_inference_experiment.rb', line 721

def render_properties(props)
  Jsii::Type.check_type(props, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6ImFueSJ9LCJraW5kIjoibWFwIn19")), "props")
  jsii_call_method("renderProperties", [props])
end

#replace_dependency(target, new_target) ⇒ void

This method returns an undefined value.

Replaces one dependency with another.

Parameters:



731
732
733
734
735
# File 'sagemaker/cfn_inference_experiment.rb', line 731

def replace_dependency(target, new_target)
  Jsii::Type.check_type(target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "target")
  Jsii::Type.check_type(new_target, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5DZm5SZXNvdXJjZSJ9")), "newTarget")
  jsii_call_method("replaceDependency", [target, new_target])
end

#role_arnString

The ARN of the IAM role that Amazon SageMaker can assume to access model artifacts and container images, and manage Amazon SageMaker Inference endpoints for model deployment.

Returns:

  • (String)


346
347
348
# File 'sagemaker/cfn_inference_experiment.rb', line 346

def role_arn()
  jsii_get_property("roleArn")
end

#role_arn=(value) ⇒ Object



350
351
352
353
# File 'sagemaker/cfn_inference_experiment.rb', line 350

def role_arn=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "roleArn")
  jsii_set_property("roleArn", value)
end

#scheduleAWSCDK::IResolvable, ...

The duration for which the inference experiment ran or will run.



421
422
423
# File 'sagemaker/cfn_inference_experiment.rb', line 421

def schedule()
  jsii_get_property("schedule")
end

#schedule=(value) ⇒ Object



425
426
427
428
429
# File 'sagemaker/cfn_inference_experiment.rb', line 425

def schedule=(value)
  value = value.is_a?(Hash) ? ::AWSCDK::Sagemaker::CfnInferenceExperiment::InferenceExperimentScheduleProperty.new(**value.transform_keys(&:to_sym)) : value
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zYWdlbWFrZXIuQ2ZuSW5mZXJlbmNlRXhwZXJpbWVudC5JbmZlcmVuY2VFeHBlcmltZW50U2NoZWR1bGVQcm9wZXJ0eSJ9XX19")), "schedule") unless value.nil?
  jsii_set_property("schedule", value)
end

#shadow_mode_configAWSCDK::IResolvable, ...

The configuration of ShadowMode inference experiment type, which shows the production variant that takes all the inference requests, and the shadow variant to which Amazon SageMaker replicates a percentage of the inference requests.



434
435
436
# File 'sagemaker/cfn_inference_experiment.rb', line 434

def shadow_mode_config()
  jsii_get_property("shadowModeConfig")
end

#shadow_mode_config=(value) ⇒ Object



438
439
440
441
442
# File 'sagemaker/cfn_inference_experiment.rb', line 438

def shadow_mode_config=(value)
  value = value.is_a?(Hash) ? ::AWSCDK::Sagemaker::CfnInferenceExperiment::ShadowModeConfigProperty.new(**value.transform_keys(&:to_sym)) : value
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJ1bmlvbiI6eyJ0eXBlcyI6W3siZnFuIjoiYXdzLWNkay1saWIuSVJlc29sdmFibGUifSx7ImZxbiI6ImF3cy1jZGstbGliLmF3c19zYWdlbWFrZXIuQ2ZuSW5mZXJlbmNlRXhwZXJpbWVudC5TaGFkb3dNb2RlQ29uZmlnUHJvcGVydHkifV19fQ==")), "shadowModeConfig") unless value.nil?
  jsii_set_property("shadowModeConfig", value)
end

#should_synthesizeBoolean

Can be overridden by subclasses to determine if this resource will be rendered into the cloudformation template.

Returns:

  • (Boolean)

    true if the resource should be included or false is the resource should be omitted.



740
741
742
# File 'sagemaker/cfn_inference_experiment.rb', line 740

def should_synthesize()
  jsii_call_method("shouldSynthesize", [])
end

#stackAWSCDK::Stack

The stack in which this element is defined.

CfnElements must be defined within a stack scope (directly or indirectly).

Returns:



166
167
168
# File 'sagemaker/cfn_inference_experiment.rb', line 166

def stack()
  jsii_get_property("stack")
end

#status_reasonString?

The error message for the inference experiment status result.

Returns:

  • (String, nil)


447
448
449
# File 'sagemaker/cfn_inference_experiment.rb', line 447

def status_reason()
  jsii_get_property("statusReason")
end

#status_reason=(value) ⇒ Object



451
452
453
454
# File 'sagemaker/cfn_inference_experiment.rb', line 451

def status_reason=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "statusReason") unless value.nil?
  jsii_set_property("statusReason", value)
end

#tagsAWSCDK::TagManager

Tag Manager which manages the tags for this resource.

Returns:



303
304
305
# File 'sagemaker/cfn_inference_experiment.rb', line 303

def tags()
  jsii_get_property("tags")
end

#tags_rawArray<AWSCDK::CfnTag>?

An array of key-value pairs to apply to this resource.

Returns:



459
460
461
# File 'sagemaker/cfn_inference_experiment.rb', line 459

def tags_raw()
  jsii_get_property("tagsRaw")
end

#tags_raw=(value) ⇒ Object



463
464
465
466
467
# File 'sagemaker/cfn_inference_experiment.rb', line 463

def tags_raw=(value)
  value = value.is_a?(Array) ? value.map { |jsii_v0| jsii_v0.is_a?(Hash) ? ::AWSCDK::CfnTag.new(**jsii_v0.transform_keys(&:to_sym)) : jsii_v0 } : value
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7ImZxbiI6ImF3cy1jZGstbGliLkNmblRhZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "tagsRaw") unless value.nil?
  jsii_set_property("tagsRaw", value)
end

#to_stringString

Returns a string representation of this construct.

Returns:

  • (String)

    a string representation of this resource



472
473
474
# File 'sagemaker/cfn_inference_experiment.rb', line 472

def to_string()
  jsii_call_method("toString", [])
end

#typeString

The type of the inference experiment.

Returns:

  • (String)


358
359
360
# File 'sagemaker/cfn_inference_experiment.rb', line 358

def type()
  jsii_get_property("type")
end

#type=(value) ⇒ Object



362
363
364
365
# File 'sagemaker/cfn_inference_experiment.rb', line 362

def type=(value)
  Jsii::Type.check_type(value, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJzdHJpbmcifQ==")), "type")
  jsii_set_property("type", value)
end

#updated_properitesHash{String => Object}

Deprecated.

use updatedProperties Return properties modified after initiation Resources that expose mutable properties should override this function to collect and return the properties object for this resource.

Deprecated.

Returns:

  • (Hash{String => Object})


213
214
215
# File 'sagemaker/cfn_inference_experiment.rb', line 213

def updated_properites()
  jsii_get_property("updatedProperites")
end

#updated_propertiesHash{String => Object}

Return properties modified after initiation.

Resources that expose mutable properties should override this function to collect and return the properties object for this resource.

Returns:

  • (Hash{String => Object})


223
224
225
# File 'sagemaker/cfn_inference_experiment.rb', line 223

def updated_properties()
  jsii_get_property("updatedProperties")
end

#validate_properties(_properties) ⇒ void

This method returns an undefined value.

Parameters:

  • _properties (Object)


746
747
748
749
# File 'sagemaker/cfn_inference_experiment.rb', line 746

def validate_properties(_properties)
  Jsii::Type.check_type(_properties, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJhbnkifQ==")), "_properties")
  jsii_call_method("validateProperties", [_properties])
end

#with(*mixins) ⇒ Constructs::IConstruct

Applies one or more mixins to this construct.

Mixins are applied in order. The list of constructs is captured at the start of the call, so constructs added by a mixin will not be visited. Use multiple with() calls if subsequent mixins should apply to added constructs.

Parameters:

  • mixins (Array<Constructs::IMixin>)

Returns:

  • (Constructs::IConstruct)


485
486
487
488
489
490
# File 'sagemaker/cfn_inference_experiment.rb', line 485

def with(*mixins)
  mixins.each_with_index do |item, index|
    Jsii::Type.check_type(item, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJjb25zdHJ1Y3RzLklNaXhpbiJ9")), "mixins[#{index}]")
  end
  jsii_call_method("with", [*mixins])
end