aws-sdk-sagemaker 1.200.0 → 1.202.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0e5369f5bb546bc4a434084786180743b3c465f88f079270f4aeb875104a2f5e
4
- data.tar.gz: 4b21b756570b018c4f72496c571dbc8dcd58138e3851bab0a50d971df7771782
3
+ metadata.gz: 20447a1093ec62eddc28f9ba37e3c9e30df3384af011d2d49a49be70a65ec6f6
4
+ data.tar.gz: 19d9212fdeaaccbf50e1239a7d5ef527d4f02dcda19aa64e1da88bb3d4c5ca89
5
5
  SHA512:
6
- metadata.gz: bbf4fd1b274d7c25a5d3722e91e30bbcb5817b13a8d32d978a9800a31e4abfc94bc0c1b7e2089380e09cf0deecbbe9e36d4ec7ab397902afd93d64eaf15d5d41
7
- data.tar.gz: 528122c7a215f0a6901a12249845b09e8c08fff72f3928ee3800700fd9ea3b168e0af011197f6cd04c5f2094081da87f535af0f73d452202880f0efd1bcf9fe3
6
+ metadata.gz: bed0f6fa8acb414c51c6ae9a730509b24a5528e22e5b1248e4ad6613826d0a734f3ba0966e0d4c8fd6c0e45707c3b02b48bcf9af7ff10b7db4f174757a9bdc0e
7
+ data.tar.gz: 3895b91eb914ad77ad5630383dac5d16879587685de544e820de1fecea84e43a8963c832942d898ea5b5ff148a76eed70b7d64bae3934eef7052ef8081f5b62b
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.202.0 (2023-08-02)
5
+ ------------------
6
+
7
+ * Feature - SageMaker Inference Recommender introduces a new API GetScalingConfigurationRecommendation to recommend auto scaling policies based on completed Inference Recommender jobs.
8
+
9
+ 1.201.0 (2023-08-01)
10
+ ------------------
11
+
12
+ * Feature - Add Stairs TrafficPattern and FlatInvocations to RecommendationJobStoppingConditions
13
+
4
14
  1.200.0 (2023-07-27)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.200.0
1
+ 1.202.0
@@ -4463,7 +4463,7 @@ module Aws::SageMaker
4463
4463
  # model_package_version_arn: "ModelPackageArn",
4464
4464
  # job_duration_in_seconds: 1,
4465
4465
  # traffic_pattern: {
4466
- # traffic_type: "PHASES", # accepts PHASES
4466
+ # traffic_type: "PHASES", # accepts PHASES, STAIRS
4467
4467
  # phases: [
4468
4468
  # {
4469
4469
  # initial_number_of_users: 1,
@@ -4471,6 +4471,11 @@ module Aws::SageMaker
4471
4471
  # duration_in_seconds: 1,
4472
4472
  # },
4473
4473
  # ],
4474
+ # stairs: {
4475
+ # duration_in_seconds: 1,
4476
+ # number_of_steps: 1,
4477
+ # users_per_step: 1,
4478
+ # },
4474
4479
  # },
4475
4480
  # resource_limit: {
4476
4481
  # max_number_of_tests: 1,
@@ -4530,6 +4535,7 @@ module Aws::SageMaker
4530
4535
  # value_in_milliseconds: 1,
4531
4536
  # },
4532
4537
  # ],
4538
+ # flat_invocations: "Continue", # accepts Continue, Stop
4533
4539
  # },
4534
4540
  # output_config: {
4535
4541
  # kms_key_id: "KmsKeyId",
@@ -12315,11 +12321,14 @@ module Aws::SageMaker
12315
12321
  # resp.failure_reason #=> String
12316
12322
  # resp.input_config.model_package_version_arn #=> String
12317
12323
  # resp.input_config.job_duration_in_seconds #=> Integer
12318
- # resp.input_config.traffic_pattern.traffic_type #=> String, one of "PHASES"
12324
+ # resp.input_config.traffic_pattern.traffic_type #=> String, one of "PHASES", "STAIRS"
12319
12325
  # resp.input_config.traffic_pattern.phases #=> Array
12320
12326
  # resp.input_config.traffic_pattern.phases[0].initial_number_of_users #=> Integer
12321
12327
  # resp.input_config.traffic_pattern.phases[0].spawn_rate #=> Integer
12322
12328
  # resp.input_config.traffic_pattern.phases[0].duration_in_seconds #=> Integer
12329
+ # resp.input_config.traffic_pattern.stairs.duration_in_seconds #=> Integer
12330
+ # resp.input_config.traffic_pattern.stairs.number_of_steps #=> Integer
12331
+ # resp.input_config.traffic_pattern.stairs.users_per_step #=> Integer
12323
12332
  # resp.input_config.resource_limit.max_number_of_tests #=> Integer
12324
12333
  # resp.input_config.resource_limit.max_parallel_of_tests #=> Integer
12325
12334
  # resp.input_config.endpoint_configurations #=> Array
@@ -12356,6 +12365,7 @@ module Aws::SageMaker
12356
12365
  # resp.stopping_conditions.model_latency_thresholds #=> Array
12357
12366
  # resp.stopping_conditions.model_latency_thresholds[0].percentile #=> String
12358
12367
  # resp.stopping_conditions.model_latency_thresholds[0].value_in_milliseconds #=> Integer
12368
+ # resp.stopping_conditions.flat_invocations #=> String, one of "Continue", "Stop"
12359
12369
  # resp.inference_recommendations #=> Array
12360
12370
  # resp.inference_recommendations[0].metrics.cost_per_hour #=> Float
12361
12371
  # resp.inference_recommendations[0].metrics.cost_per_inference #=> Float
@@ -14866,6 +14876,90 @@ module Aws::SageMaker
14866
14876
  req.send_request(options)
14867
14877
  end
14868
14878
 
14879
+ # Starts an Amazon SageMaker Inference Recommender autoscaling
14880
+ # recommendation job. Returns recommendations for autoscaling policies
14881
+ # that you can apply to your SageMaker endpoint.
14882
+ #
14883
+ # @option params [required, String] :inference_recommendations_job_name
14884
+ # The name of a previously completed Inference Recommender job.
14885
+ #
14886
+ # @option params [String] :recommendation_id
14887
+ # The recommendation ID of a previously completed inference
14888
+ # recommendation. This ID should come from one of the recommendations
14889
+ # returned by the job specified in the `InferenceRecommendationsJobName`
14890
+ # field.
14891
+ #
14892
+ # Specify either this field or the `EndpointName` field.
14893
+ #
14894
+ # @option params [String] :endpoint_name
14895
+ # The name of an endpoint benchmarked during a previously completed
14896
+ # inference recommendation job. This name should come from one of the
14897
+ # recommendations returned by the job specified in the
14898
+ # `InferenceRecommendationsJobName` field.
14899
+ #
14900
+ # Specify either this field or the `RecommendationId` field.
14901
+ #
14902
+ # @option params [Integer] :target_cpu_utilization_per_core
14903
+ # The percentage of how much utilization you want an instance to use
14904
+ # before autoscaling. The default value is 50%.
14905
+ #
14906
+ # @option params [Types::ScalingPolicyObjective] :scaling_policy_objective
14907
+ # An object where you specify the anticipated traffic pattern for an
14908
+ # endpoint.
14909
+ #
14910
+ # @return [Types::GetScalingConfigurationRecommendationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
14911
+ #
14912
+ # * {Types::GetScalingConfigurationRecommendationResponse#inference_recommendations_job_name #inference_recommendations_job_name} => String
14913
+ # * {Types::GetScalingConfigurationRecommendationResponse#recommendation_id #recommendation_id} => String
14914
+ # * {Types::GetScalingConfigurationRecommendationResponse#endpoint_name #endpoint_name} => String
14915
+ # * {Types::GetScalingConfigurationRecommendationResponse#target_cpu_utilization_per_core #target_cpu_utilization_per_core} => Integer
14916
+ # * {Types::GetScalingConfigurationRecommendationResponse#scaling_policy_objective #scaling_policy_objective} => Types::ScalingPolicyObjective
14917
+ # * {Types::GetScalingConfigurationRecommendationResponse#metric #metric} => Types::ScalingPolicyMetric
14918
+ # * {Types::GetScalingConfigurationRecommendationResponse#dynamic_scaling_configuration #dynamic_scaling_configuration} => Types::DynamicScalingConfiguration
14919
+ #
14920
+ # @example Request syntax with placeholder values
14921
+ #
14922
+ # resp = client.get_scaling_configuration_recommendation({
14923
+ # inference_recommendations_job_name: "RecommendationJobName", # required
14924
+ # recommendation_id: "String",
14925
+ # endpoint_name: "EndpointName",
14926
+ # target_cpu_utilization_per_core: 1,
14927
+ # scaling_policy_objective: {
14928
+ # min_invocations_per_minute: 1,
14929
+ # max_invocations_per_minute: 1,
14930
+ # },
14931
+ # })
14932
+ #
14933
+ # @example Response structure
14934
+ #
14935
+ # resp.inference_recommendations_job_name #=> String
14936
+ # resp.recommendation_id #=> String
14937
+ # resp.endpoint_name #=> String
14938
+ # resp.target_cpu_utilization_per_core #=> Integer
14939
+ # resp.scaling_policy_objective.min_invocations_per_minute #=> Integer
14940
+ # resp.scaling_policy_objective.max_invocations_per_minute #=> Integer
14941
+ # resp.metric.invocations_per_instance #=> Integer
14942
+ # resp.metric.model_latency #=> Integer
14943
+ # resp.dynamic_scaling_configuration.min_capacity #=> Integer
14944
+ # resp.dynamic_scaling_configuration.max_capacity #=> Integer
14945
+ # resp.dynamic_scaling_configuration.scale_in_cooldown #=> Integer
14946
+ # resp.dynamic_scaling_configuration.scale_out_cooldown #=> Integer
14947
+ # resp.dynamic_scaling_configuration.scaling_policies #=> Array
14948
+ # resp.dynamic_scaling_configuration.scaling_policies[0].target_tracking.metric_specification.predefined.predefined_metric_type #=> String
14949
+ # resp.dynamic_scaling_configuration.scaling_policies[0].target_tracking.metric_specification.customized.metric_name #=> String
14950
+ # resp.dynamic_scaling_configuration.scaling_policies[0].target_tracking.metric_specification.customized.namespace #=> String
14951
+ # resp.dynamic_scaling_configuration.scaling_policies[0].target_tracking.metric_specification.customized.statistic #=> String, one of "Average", "Minimum", "Maximum", "SampleCount", "Sum"
14952
+ # resp.dynamic_scaling_configuration.scaling_policies[0].target_tracking.target_value #=> Float
14953
+ #
14954
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/GetScalingConfigurationRecommendation AWS API Documentation
14955
+ #
14956
+ # @overload get_scaling_configuration_recommendation(params = {})
14957
+ # @param [Hash] params ({})
14958
+ def get_scaling_configuration_recommendation(params = {}, options = {})
14959
+ req = build_request(:get_scaling_configuration_recommendation, params)
14960
+ req.send_request(options)
14961
+ end
14962
+
14869
14963
  # An auto-complete API for the search functionality in the SageMaker
14870
14964
  # console. It returns suggestions of possible matches for the property
14871
14965
  # name to use in `Search` queries. Provides suggestions for
@@ -23997,7 +24091,7 @@ module Aws::SageMaker
23997
24091
  params: params,
23998
24092
  config: config)
23999
24093
  context[:gem_name] = 'aws-sdk-sagemaker'
24000
- context[:gem_version] = '1.200.0'
24094
+ context[:gem_version] = '1.202.0'
24001
24095
  Seahorse::Client::Request.new(handlers, context)
24002
24096
  end
24003
24097
 
@@ -410,6 +410,7 @@ module Aws::SageMaker
410
410
  CustomerMetadataKeyList = Shapes::ListShape.new(name: 'CustomerMetadataKeyList')
411
411
  CustomerMetadataMap = Shapes::MapShape.new(name: 'CustomerMetadataMap')
412
412
  CustomerMetadataValue = Shapes::StringShape.new(name: 'CustomerMetadataValue')
413
+ CustomizedMetricSpecification = Shapes::StructureShape.new(name: 'CustomizedMetricSpecification')
413
414
  DataCaptureConfig = Shapes::StructureShape.new(name: 'DataCaptureConfig')
414
415
  DataCaptureConfigSummary = Shapes::StructureShape.new(name: 'DataCaptureConfigSummary')
415
416
  DataCatalogConfig = Shapes::StructureShape.new(name: 'DataCatalogConfig')
@@ -667,12 +668,14 @@ module Aws::SageMaker
667
668
  DomainSettings = Shapes::StructureShape.new(name: 'DomainSettings')
668
669
  DomainSettingsForUpdate = Shapes::StructureShape.new(name: 'DomainSettingsForUpdate')
669
670
  DomainStatus = Shapes::StringShape.new(name: 'DomainStatus')
671
+ Double = Shapes::FloatShape.new(name: 'Double')
670
672
  DoubleParameterValue = Shapes::FloatShape.new(name: 'DoubleParameterValue')
671
673
  DriftCheckBaselines = Shapes::StructureShape.new(name: 'DriftCheckBaselines')
672
674
  DriftCheckBias = Shapes::StructureShape.new(name: 'DriftCheckBias')
673
675
  DriftCheckExplainability = Shapes::StructureShape.new(name: 'DriftCheckExplainability')
674
676
  DriftCheckModelDataQuality = Shapes::StructureShape.new(name: 'DriftCheckModelDataQuality')
675
677
  DriftCheckModelQuality = Shapes::StructureShape.new(name: 'DriftCheckModelQuality')
678
+ DynamicScalingConfiguration = Shapes::StructureShape.new(name: 'DynamicScalingConfiguration')
676
679
  EMRStepMetadata = Shapes::StructureShape.new(name: 'EMRStepMetadata')
677
680
  Edge = Shapes::StructureShape.new(name: 'Edge')
678
681
  EdgeDeploymentConfig = Shapes::StructureShape.new(name: 'EdgeDeploymentConfig')
@@ -796,6 +799,7 @@ module Aws::SageMaker
796
799
  FinalAutoMLJobObjectiveMetric = Shapes::StructureShape.new(name: 'FinalAutoMLJobObjectiveMetric')
797
800
  FinalHyperParameterTuningJobObjectiveMetric = Shapes::StructureShape.new(name: 'FinalHyperParameterTuningJobObjectiveMetric')
798
801
  FinalMetricDataList = Shapes::ListShape.new(name: 'FinalMetricDataList')
802
+ FlatInvocations = Shapes::StringShape.new(name: 'FlatInvocations')
799
803
  Float = Shapes::FloatShape.new(name: 'Float')
800
804
  FlowDefinitionArn = Shapes::StringShape.new(name: 'FlowDefinitionArn')
801
805
  FlowDefinitionName = Shapes::StringShape.new(name: 'FlowDefinitionName')
@@ -825,6 +829,8 @@ module Aws::SageMaker
825
829
  GetModelPackageGroupPolicyOutput = Shapes::StructureShape.new(name: 'GetModelPackageGroupPolicyOutput')
826
830
  GetSagemakerServicecatalogPortfolioStatusInput = Shapes::StructureShape.new(name: 'GetSagemakerServicecatalogPortfolioStatusInput')
827
831
  GetSagemakerServicecatalogPortfolioStatusOutput = Shapes::StructureShape.new(name: 'GetSagemakerServicecatalogPortfolioStatusOutput')
832
+ GetScalingConfigurationRecommendationRequest = Shapes::StructureShape.new(name: 'GetScalingConfigurationRecommendationRequest')
833
+ GetScalingConfigurationRecommendationResponse = Shapes::StructureShape.new(name: 'GetScalingConfigurationRecommendationResponse')
828
834
  GetSearchSuggestionsRequest = Shapes::StructureShape.new(name: 'GetSearchSuggestionsRequest')
829
835
  GetSearchSuggestionsResponse = Shapes::StructureShape.new(name: 'GetSearchSuggestionsResponse')
830
836
  GitConfig = Shapes::StructureShape.new(name: 'GitConfig')
@@ -1232,6 +1238,7 @@ module Aws::SageMaker
1232
1238
  MetricName = Shapes::StringShape.new(name: 'MetricName')
1233
1239
  MetricRegex = Shapes::StringShape.new(name: 'MetricRegex')
1234
1240
  MetricSetSource = Shapes::StringShape.new(name: 'MetricSetSource')
1241
+ MetricSpecification = Shapes::UnionShape.new(name: 'MetricSpecification')
1235
1242
  MetricValue = Shapes::FloatShape.new(name: 'MetricValue')
1236
1243
  MetricsSource = Shapes::StructureShape.new(name: 'MetricsSource')
1237
1244
  MinimumInstanceMetadataServiceVersion = Shapes::StringShape.new(name: 'MinimumInstanceMetadataServiceVersion')
@@ -1432,6 +1439,7 @@ module Aws::SageMaker
1432
1439
  NotificationConfiguration = Shapes::StructureShape.new(name: 'NotificationConfiguration')
1433
1440
  NotificationTopicArn = Shapes::StringShape.new(name: 'NotificationTopicArn')
1434
1441
  NumberOfHumanWorkersPerDataObject = Shapes::IntegerShape.new(name: 'NumberOfHumanWorkersPerDataObject')
1442
+ NumberOfSteps = Shapes::IntegerShape.new(name: 'NumberOfSteps')
1435
1443
  ObjectiveStatus = Shapes::StringShape.new(name: 'ObjectiveStatus')
1436
1444
  ObjectiveStatusCounter = Shapes::IntegerShape.new(name: 'ObjectiveStatusCounter')
1437
1445
  ObjectiveStatusCounters = Shapes::StructureShape.new(name: 'ObjectiveStatusCounters')
@@ -1502,6 +1510,7 @@ module Aws::SageMaker
1502
1510
  PipelineSummaryList = Shapes::ListShape.new(name: 'PipelineSummaryList')
1503
1511
  PlatformIdentifier = Shapes::StringShape.new(name: 'PlatformIdentifier')
1504
1512
  PolicyString = Shapes::StringShape.new(name: 'PolicyString')
1513
+ PredefinedMetricSpecification = Shapes::StructureShape.new(name: 'PredefinedMetricSpecification')
1505
1514
  PresignedDomainUrl = Shapes::StringShape.new(name: 'PresignedDomainUrl')
1506
1515
  ProbabilityThresholdAttribute = Shapes::FloatShape.new(name: 'ProbabilityThresholdAttribute')
1507
1516
  ProblemType = Shapes::StringShape.new(name: 'ProblemType')
@@ -1701,6 +1710,10 @@ module Aws::SageMaker
1701
1710
  SagemakerServicecatalogStatus = Shapes::StringShape.new(name: 'SagemakerServicecatalogStatus')
1702
1711
  SampleWeightAttributeName = Shapes::StringShape.new(name: 'SampleWeightAttributeName')
1703
1712
  SamplingPercentage = Shapes::IntegerShape.new(name: 'SamplingPercentage')
1713
+ ScalingPolicies = Shapes::ListShape.new(name: 'ScalingPolicies')
1714
+ ScalingPolicy = Shapes::UnionShape.new(name: 'ScalingPolicy')
1715
+ ScalingPolicyMetric = Shapes::StructureShape.new(name: 'ScalingPolicyMetric')
1716
+ ScalingPolicyObjective = Shapes::StructureShape.new(name: 'ScalingPolicyObjective')
1704
1717
  ScheduleConfig = Shapes::StructureShape.new(name: 'ScheduleConfig')
1705
1718
  ScheduleExpression = Shapes::StringShape.new(name: 'ScheduleExpression')
1706
1719
  ScheduleStatus = Shapes::StringShape.new(name: 'ScheduleStatus')
@@ -1770,6 +1783,7 @@ module Aws::SageMaker
1770
1783
  SpawnRate = Shapes::IntegerShape.new(name: 'SpawnRate')
1771
1784
  SplitType = Shapes::StringShape.new(name: 'SplitType')
1772
1785
  StageStatus = Shapes::StringShape.new(name: 'StageStatus')
1786
+ Stairs = Shapes::StructureShape.new(name: 'Stairs')
1773
1787
  StartEdgeDeploymentStageRequest = Shapes::StructureShape.new(name: 'StartEdgeDeploymentStageRequest')
1774
1788
  StartInferenceExperimentRequest = Shapes::StructureShape.new(name: 'StartInferenceExperimentRequest')
1775
1789
  StartInferenceExperimentResponse = Shapes::StructureShape.new(name: 'StartInferenceExperimentResponse')
@@ -1777,6 +1791,7 @@ module Aws::SageMaker
1777
1791
  StartNotebookInstanceInput = Shapes::StructureShape.new(name: 'StartNotebookInstanceInput')
1778
1792
  StartPipelineExecutionRequest = Shapes::StructureShape.new(name: 'StartPipelineExecutionRequest')
1779
1793
  StartPipelineExecutionResponse = Shapes::StructureShape.new(name: 'StartPipelineExecutionResponse')
1794
+ Statistic = Shapes::StringShape.new(name: 'Statistic')
1780
1795
  StatusDetails = Shapes::StringShape.new(name: 'StatusDetails')
1781
1796
  StatusMessage = Shapes::StringShape.new(name: 'StatusMessage')
1782
1797
  StepDescription = Shapes::StringShape.new(name: 'StepDescription')
@@ -1841,6 +1856,7 @@ module Aws::SageMaker
1841
1856
  TargetPlatformAccelerator = Shapes::StringShape.new(name: 'TargetPlatformAccelerator')
1842
1857
  TargetPlatformArch = Shapes::StringShape.new(name: 'TargetPlatformArch')
1843
1858
  TargetPlatformOs = Shapes::StringShape.new(name: 'TargetPlatformOs')
1859
+ TargetTrackingScalingPolicyConfiguration = Shapes::StructureShape.new(name: 'TargetTrackingScalingPolicyConfiguration')
1844
1860
  TaskAvailabilityLifetimeInSeconds = Shapes::IntegerShape.new(name: 'TaskAvailabilityLifetimeInSeconds')
1845
1861
  TaskCount = Shapes::IntegerShape.new(name: 'TaskCount')
1846
1862
  TaskDescription = Shapes::StringShape.new(name: 'TaskDescription')
@@ -2027,7 +2043,9 @@ module Aws::SageMaker
2027
2043
  UserProfileSortKey = Shapes::StringShape.new(name: 'UserProfileSortKey')
2028
2044
  UserProfileStatus = Shapes::StringShape.new(name: 'UserProfileStatus')
2029
2045
  UserSettings = Shapes::StructureShape.new(name: 'UserSettings')
2046
+ UsersPerStep = Shapes::IntegerShape.new(name: 'UsersPerStep')
2030
2047
  UtilizationMetric = Shapes::FloatShape.new(name: 'UtilizationMetric')
2048
+ UtilizationPercentagePerCore = Shapes::IntegerShape.new(name: 'UtilizationPercentagePerCore')
2031
2049
  ValidationFraction = Shapes::FloatShape.new(name: 'ValidationFraction')
2032
2050
  VariantName = Shapes::StringShape.new(name: 'VariantName')
2033
2051
  VariantProperty = Shapes::StructureShape.new(name: 'VariantProperty')
@@ -3396,6 +3414,11 @@ module Aws::SageMaker
3396
3414
  CustomerMetadataMap.key = Shapes::ShapeRef.new(shape: CustomerMetadataKey)
3397
3415
  CustomerMetadataMap.value = Shapes::ShapeRef.new(shape: CustomerMetadataValue)
3398
3416
 
3417
+ CustomizedMetricSpecification.add_member(:metric_name, Shapes::ShapeRef.new(shape: String, location_name: "MetricName"))
3418
+ CustomizedMetricSpecification.add_member(:namespace, Shapes::ShapeRef.new(shape: String, location_name: "Namespace"))
3419
+ CustomizedMetricSpecification.add_member(:statistic, Shapes::ShapeRef.new(shape: Statistic, location_name: "Statistic"))
3420
+ CustomizedMetricSpecification.struct_class = Types::CustomizedMetricSpecification
3421
+
3399
3422
  DataCaptureConfig.add_member(:enable_capture, Shapes::ShapeRef.new(shape: EnableCapture, location_name: "EnableCapture"))
3400
3423
  DataCaptureConfig.add_member(:initial_sampling_percentage, Shapes::ShapeRef.new(shape: SamplingPercentage, required: true, location_name: "InitialSamplingPercentage"))
3401
3424
  DataCaptureConfig.add_member(:destination_s3_uri, Shapes::ShapeRef.new(shape: DestinationS3Uri, required: true, location_name: "DestinationS3Uri"))
@@ -4854,6 +4877,13 @@ module Aws::SageMaker
4854
4877
  DriftCheckModelQuality.add_member(:constraints, Shapes::ShapeRef.new(shape: MetricsSource, location_name: "Constraints"))
4855
4878
  DriftCheckModelQuality.struct_class = Types::DriftCheckModelQuality
4856
4879
 
4880
+ DynamicScalingConfiguration.add_member(:min_capacity, Shapes::ShapeRef.new(shape: Integer, location_name: "MinCapacity"))
4881
+ DynamicScalingConfiguration.add_member(:max_capacity, Shapes::ShapeRef.new(shape: Integer, location_name: "MaxCapacity"))
4882
+ DynamicScalingConfiguration.add_member(:scale_in_cooldown, Shapes::ShapeRef.new(shape: Integer, location_name: "ScaleInCooldown"))
4883
+ DynamicScalingConfiguration.add_member(:scale_out_cooldown, Shapes::ShapeRef.new(shape: Integer, location_name: "ScaleOutCooldown"))
4884
+ DynamicScalingConfiguration.add_member(:scaling_policies, Shapes::ShapeRef.new(shape: ScalingPolicies, location_name: "ScalingPolicies"))
4885
+ DynamicScalingConfiguration.struct_class = Types::DynamicScalingConfiguration
4886
+
4857
4887
  EMRStepMetadata.add_member(:cluster_id, Shapes::ShapeRef.new(shape: String256, location_name: "ClusterId"))
4858
4888
  EMRStepMetadata.add_member(:step_id, Shapes::ShapeRef.new(shape: String256, location_name: "StepId"))
4859
4889
  EMRStepMetadata.add_member(:step_name, Shapes::ShapeRef.new(shape: String256, location_name: "StepName"))
@@ -5221,6 +5251,22 @@ module Aws::SageMaker
5221
5251
  GetSagemakerServicecatalogPortfolioStatusOutput.add_member(:status, Shapes::ShapeRef.new(shape: SagemakerServicecatalogStatus, location_name: "Status"))
5222
5252
  GetSagemakerServicecatalogPortfolioStatusOutput.struct_class = Types::GetSagemakerServicecatalogPortfolioStatusOutput
5223
5253
 
5254
+ GetScalingConfigurationRecommendationRequest.add_member(:inference_recommendations_job_name, Shapes::ShapeRef.new(shape: RecommendationJobName, required: true, location_name: "InferenceRecommendationsJobName"))
5255
+ GetScalingConfigurationRecommendationRequest.add_member(:recommendation_id, Shapes::ShapeRef.new(shape: String, location_name: "RecommendationId"))
5256
+ GetScalingConfigurationRecommendationRequest.add_member(:endpoint_name, Shapes::ShapeRef.new(shape: EndpointName, location_name: "EndpointName"))
5257
+ GetScalingConfigurationRecommendationRequest.add_member(:target_cpu_utilization_per_core, Shapes::ShapeRef.new(shape: UtilizationPercentagePerCore, location_name: "TargetCpuUtilizationPerCore"))
5258
+ GetScalingConfigurationRecommendationRequest.add_member(:scaling_policy_objective, Shapes::ShapeRef.new(shape: ScalingPolicyObjective, location_name: "ScalingPolicyObjective"))
5259
+ GetScalingConfigurationRecommendationRequest.struct_class = Types::GetScalingConfigurationRecommendationRequest
5260
+
5261
+ GetScalingConfigurationRecommendationResponse.add_member(:inference_recommendations_job_name, Shapes::ShapeRef.new(shape: RecommendationJobName, location_name: "InferenceRecommendationsJobName"))
5262
+ GetScalingConfigurationRecommendationResponse.add_member(:recommendation_id, Shapes::ShapeRef.new(shape: String, location_name: "RecommendationId"))
5263
+ GetScalingConfigurationRecommendationResponse.add_member(:endpoint_name, Shapes::ShapeRef.new(shape: EndpointName, location_name: "EndpointName"))
5264
+ GetScalingConfigurationRecommendationResponse.add_member(:target_cpu_utilization_per_core, Shapes::ShapeRef.new(shape: UtilizationPercentagePerCore, location_name: "TargetCpuUtilizationPerCore"))
5265
+ GetScalingConfigurationRecommendationResponse.add_member(:scaling_policy_objective, Shapes::ShapeRef.new(shape: ScalingPolicyObjective, location_name: "ScalingPolicyObjective"))
5266
+ GetScalingConfigurationRecommendationResponse.add_member(:metric, Shapes::ShapeRef.new(shape: ScalingPolicyMetric, location_name: "Metric"))
5267
+ GetScalingConfigurationRecommendationResponse.add_member(:dynamic_scaling_configuration, Shapes::ShapeRef.new(shape: DynamicScalingConfiguration, location_name: "DynamicScalingConfiguration"))
5268
+ GetScalingConfigurationRecommendationResponse.struct_class = Types::GetScalingConfigurationRecommendationResponse
5269
+
5224
5270
  GetSearchSuggestionsRequest.add_member(:resource, Shapes::ShapeRef.new(shape: ResourceType, required: true, location_name: "Resource"))
5225
5271
  GetSearchSuggestionsRequest.add_member(:suggestion_query, Shapes::ShapeRef.new(shape: SuggestionQuery, location_name: "SuggestionQuery"))
5226
5272
  GetSearchSuggestionsRequest.struct_class = Types::GetSearchSuggestionsRequest
@@ -6782,6 +6828,14 @@ module Aws::SageMaker
6782
6828
 
6783
6829
  MetricDefinitionList.member = Shapes::ShapeRef.new(shape: MetricDefinition)
6784
6830
 
6831
+ MetricSpecification.add_member(:predefined, Shapes::ShapeRef.new(shape: PredefinedMetricSpecification, location_name: "Predefined"))
6832
+ MetricSpecification.add_member(:customized, Shapes::ShapeRef.new(shape: CustomizedMetricSpecification, location_name: "Customized"))
6833
+ MetricSpecification.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
6834
+ MetricSpecification.add_member_subclass(:predefined, Types::MetricSpecification::Predefined)
6835
+ MetricSpecification.add_member_subclass(:customized, Types::MetricSpecification::Customized)
6836
+ MetricSpecification.add_member_subclass(:unknown, Types::MetricSpecification::Unknown)
6837
+ MetricSpecification.struct_class = Types::MetricSpecification
6838
+
6785
6839
  MetricsSource.add_member(:content_type, Shapes::ShapeRef.new(shape: ContentType, required: true, location_name: "ContentType"))
6786
6840
  MetricsSource.add_member(:content_digest, Shapes::ShapeRef.new(shape: ContentDigest, location_name: "ContentDigest"))
6787
6841
  MetricsSource.add_member(:s3_uri, Shapes::ShapeRef.new(shape: S3Uri, required: true, location_name: "S3Uri"))
@@ -7586,6 +7640,9 @@ module Aws::SageMaker
7586
7640
 
7587
7641
  PipelineSummaryList.member = Shapes::ShapeRef.new(shape: PipelineSummary)
7588
7642
 
7643
+ PredefinedMetricSpecification.add_member(:predefined_metric_type, Shapes::ShapeRef.new(shape: String, location_name: "PredefinedMetricType"))
7644
+ PredefinedMetricSpecification.struct_class = Types::PredefinedMetricSpecification
7645
+
7589
7646
  ProcessingClusterConfig.add_member(:instance_count, Shapes::ShapeRef.new(shape: ProcessingInstanceCount, required: true, location_name: "InstanceCount"))
7590
7647
  ProcessingClusterConfig.add_member(:instance_type, Shapes::ShapeRef.new(shape: ProcessingInstanceType, required: true, location_name: "InstanceType"))
7591
7648
  ProcessingClusterConfig.add_member(:volume_size_in_gb, Shapes::ShapeRef.new(shape: ProcessingVolumeSizeInGB, required: true, location_name: "VolumeSizeInGB"))
@@ -7936,6 +7993,7 @@ module Aws::SageMaker
7936
7993
 
7937
7994
  RecommendationJobStoppingConditions.add_member(:max_invocations, Shapes::ShapeRef.new(shape: Integer, location_name: "MaxInvocations"))
7938
7995
  RecommendationJobStoppingConditions.add_member(:model_latency_thresholds, Shapes::ShapeRef.new(shape: ModelLatencyThresholds, location_name: "ModelLatencyThresholds"))
7996
+ RecommendationJobStoppingConditions.add_member(:flat_invocations, Shapes::ShapeRef.new(shape: FlatInvocations, location_name: "FlatInvocations"))
7939
7997
  RecommendationJobStoppingConditions.struct_class = Types::RecommendationJobStoppingConditions
7940
7998
 
7941
7999
  RecommendationJobSupportedContentTypes.member = Shapes::ShapeRef.new(shape: String)
@@ -8088,6 +8146,22 @@ module Aws::SageMaker
8088
8146
 
8089
8147
  SageMakerImageVersionAliases.member = Shapes::ShapeRef.new(shape: SageMakerImageVersionAlias)
8090
8148
 
8149
+ ScalingPolicies.member = Shapes::ShapeRef.new(shape: ScalingPolicy)
8150
+
8151
+ ScalingPolicy.add_member(:target_tracking, Shapes::ShapeRef.new(shape: TargetTrackingScalingPolicyConfiguration, location_name: "TargetTracking"))
8152
+ ScalingPolicy.add_member(:unknown, Shapes::ShapeRef.new(shape: nil, location_name: 'unknown'))
8153
+ ScalingPolicy.add_member_subclass(:target_tracking, Types::ScalingPolicy::TargetTracking)
8154
+ ScalingPolicy.add_member_subclass(:unknown, Types::ScalingPolicy::Unknown)
8155
+ ScalingPolicy.struct_class = Types::ScalingPolicy
8156
+
8157
+ ScalingPolicyMetric.add_member(:invocations_per_instance, Shapes::ShapeRef.new(shape: Integer, location_name: "InvocationsPerInstance"))
8158
+ ScalingPolicyMetric.add_member(:model_latency, Shapes::ShapeRef.new(shape: Integer, location_name: "ModelLatency"))
8159
+ ScalingPolicyMetric.struct_class = Types::ScalingPolicyMetric
8160
+
8161
+ ScalingPolicyObjective.add_member(:min_invocations_per_minute, Shapes::ShapeRef.new(shape: Integer, location_name: "MinInvocationsPerMinute"))
8162
+ ScalingPolicyObjective.add_member(:max_invocations_per_minute, Shapes::ShapeRef.new(shape: Integer, location_name: "MaxInvocationsPerMinute"))
8163
+ ScalingPolicyObjective.struct_class = Types::ScalingPolicyObjective
8164
+
8091
8165
  ScheduleConfig.add_member(:schedule_expression, Shapes::ShapeRef.new(shape: ScheduleExpression, required: true, location_name: "ScheduleExpression"))
8092
8166
  ScheduleConfig.struct_class = Types::ScheduleConfig
8093
8167
 
@@ -8226,6 +8300,11 @@ module Aws::SageMaker
8226
8300
  SpaceSettings.add_member(:kernel_gateway_app_settings, Shapes::ShapeRef.new(shape: KernelGatewayAppSettings, location_name: "KernelGatewayAppSettings"))
8227
8301
  SpaceSettings.struct_class = Types::SpaceSettings
8228
8302
 
8303
+ Stairs.add_member(:duration_in_seconds, Shapes::ShapeRef.new(shape: TrafficDurationInSeconds, location_name: "DurationInSeconds"))
8304
+ Stairs.add_member(:number_of_steps, Shapes::ShapeRef.new(shape: NumberOfSteps, location_name: "NumberOfSteps"))
8305
+ Stairs.add_member(:users_per_step, Shapes::ShapeRef.new(shape: UsersPerStep, location_name: "UsersPerStep"))
8306
+ Stairs.struct_class = Types::Stairs
8307
+
8229
8308
  StartEdgeDeploymentStageRequest.add_member(:edge_deployment_plan_name, Shapes::ShapeRef.new(shape: EntityName, required: true, location_name: "EdgeDeploymentPlanName"))
8230
8309
  StartEdgeDeploymentStageRequest.add_member(:stage_name, Shapes::ShapeRef.new(shape: EntityName, required: true, location_name: "StageName"))
8231
8310
  StartEdgeDeploymentStageRequest.struct_class = Types::StartEdgeDeploymentStageRequest
@@ -8361,6 +8440,10 @@ module Aws::SageMaker
8361
8440
  TargetPlatform.add_member(:accelerator, Shapes::ShapeRef.new(shape: TargetPlatformAccelerator, location_name: "Accelerator"))
8362
8441
  TargetPlatform.struct_class = Types::TargetPlatform
8363
8442
 
8443
+ TargetTrackingScalingPolicyConfiguration.add_member(:metric_specification, Shapes::ShapeRef.new(shape: MetricSpecification, location_name: "MetricSpecification"))
8444
+ TargetTrackingScalingPolicyConfiguration.add_member(:target_value, Shapes::ShapeRef.new(shape: Double, location_name: "TargetValue"))
8445
+ TargetTrackingScalingPolicyConfiguration.struct_class = Types::TargetTrackingScalingPolicyConfiguration
8446
+
8364
8447
  TaskKeywords.member = Shapes::ShapeRef.new(shape: TaskKeyword)
8365
8448
 
8366
8449
  TensorBoardAppSettings.add_member(:default_resource_spec, Shapes::ShapeRef.new(shape: ResourceSpec, location_name: "DefaultResourceSpec"))
@@ -8400,6 +8483,7 @@ module Aws::SageMaker
8400
8483
 
8401
8484
  TrafficPattern.add_member(:traffic_type, Shapes::ShapeRef.new(shape: TrafficType, location_name: "TrafficType"))
8402
8485
  TrafficPattern.add_member(:phases, Shapes::ShapeRef.new(shape: Phases, location_name: "Phases"))
8486
+ TrafficPattern.add_member(:stairs, Shapes::ShapeRef.new(shape: Stairs, location_name: "Stairs"))
8403
8487
  TrafficPattern.struct_class = Types::TrafficPattern
8404
8488
 
8405
8489
  TrafficRoutingConfig.add_member(:type, Shapes::ShapeRef.new(shape: TrafficRoutingConfigType, required: true, location_name: "Type"))
@@ -10686,6 +10770,15 @@ module Aws::SageMaker
10686
10770
  o.output = Shapes::ShapeRef.new(shape: GetSagemakerServicecatalogPortfolioStatusOutput)
10687
10771
  end)
10688
10772
 
10773
+ api.add_operation(:get_scaling_configuration_recommendation, Seahorse::Model::Operation.new.tap do |o|
10774
+ o.name = "GetScalingConfigurationRecommendation"
10775
+ o.http_method = "POST"
10776
+ o.http_request_uri = "/"
10777
+ o.input = Shapes::ShapeRef.new(shape: GetScalingConfigurationRecommendationRequest)
10778
+ o.output = Shapes::ShapeRef.new(shape: GetScalingConfigurationRecommendationResponse)
10779
+ o.errors << Shapes::ShapeRef.new(shape: ResourceNotFound)
10780
+ end)
10781
+
10689
10782
  api.add_operation(:get_search_suggestions, Seahorse::Model::Operation.new.tap do |o|
10690
10783
  o.name = "GetSearchSuggestions"
10691
10784
  o.http_method = "POST"
@@ -2378,6 +2378,20 @@ module Aws::SageMaker
2378
2378
  end
2379
2379
  end
2380
2380
 
2381
+ class GetScalingConfigurationRecommendation
2382
+ def self.build(context)
2383
+ unless context.config.regional_endpoint
2384
+ endpoint = context.config.endpoint.to_s
2385
+ end
2386
+ Aws::SageMaker::EndpointParameters.new(
2387
+ region: context.config.region,
2388
+ use_dual_stack: context.config.use_dualstack_endpoint,
2389
+ use_fips: context.config.use_fips_endpoint,
2390
+ endpoint: endpoint,
2391
+ )
2392
+ end
2393
+ end
2394
+
2381
2395
  class GetSearchSuggestions
2382
2396
  def self.build(context)
2383
2397
  unless context.config.regional_endpoint
@@ -394,6 +394,8 @@ module Aws::SageMaker
394
394
  Aws::SageMaker::Endpoints::GetModelPackageGroupPolicy.build(context)
395
395
  when :get_sagemaker_servicecatalog_portfolio_status
396
396
  Aws::SageMaker::Endpoints::GetSagemakerServicecatalogPortfolioStatus.build(context)
397
+ when :get_scaling_configuration_recommendation
398
+ Aws::SageMaker::Endpoints::GetScalingConfigurationRecommendation.build(context)
397
399
  when :get_search_suggestions
398
400
  Aws::SageMaker::Endpoints::GetSearchSuggestions.build(context)
399
401
  when :import_hub_content
@@ -2858,7 +2858,7 @@ module Aws::SageMaker
2858
2858
  # @return [String]
2859
2859
  #
2860
2860
  # @!attribute [rw] end_time_offset
2861
- # If specified, monitoring jobs substract this time from the end time.
2861
+ # If specified, monitoring jobs subtract this time from the end time.
2862
2862
  # For information about using offsets for scheduling monitoring jobs,
2863
2863
  # see [Schedule Model Quality Monitoring Jobs][1].
2864
2864
  #
@@ -8837,6 +8837,30 @@ module Aws::SageMaker
8837
8837
  include Aws::Structure
8838
8838
  end
8839
8839
 
8840
+ # A customized metric.
8841
+ #
8842
+ # @!attribute [rw] metric_name
8843
+ # The name of the customized metric.
8844
+ # @return [String]
8845
+ #
8846
+ # @!attribute [rw] namespace
8847
+ # The namespace of the customized metric.
8848
+ # @return [String]
8849
+ #
8850
+ # @!attribute [rw] statistic
8851
+ # The statistic of the customized metric.
8852
+ # @return [String]
8853
+ #
8854
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CustomizedMetricSpecification AWS API Documentation
8855
+ #
8856
+ class CustomizedMetricSpecification < Struct.new(
8857
+ :metric_name,
8858
+ :namespace,
8859
+ :statistic)
8860
+ SENSITIVE = []
8861
+ include Aws::Structure
8862
+ end
8863
+
8840
8864
  # Configuration to control how SageMaker captures inference data.
8841
8865
  #
8842
8866
  # @!attribute [rw] enable_capture
@@ -11956,6 +11980,12 @@ module Aws::SageMaker
11956
11980
  # for information about the failure. [DeleteEndpoint][4] is the only
11957
11981
  # operation that can be performed on a failed endpoint.
11958
11982
  #
11983
+ # * `UpdateRollbackFailed`: Both the rolling deployment and
11984
+ # auto-rollback failed. Your endpoint is in service with a mix of
11985
+ # the old and new endpoint configurations. For information about how
11986
+ # to remedy this issue and restore the endpoint's status to
11987
+ # `InService`, see [Rolling Deployments][6].
11988
+ #
11959
11989
  #
11960
11990
  #
11961
11991
  # [1]: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateEndpoint.html
@@ -11963,6 +11993,7 @@ module Aws::SageMaker
11963
11993
  # [3]: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_UpdateEndpointWeightsAndCapacities.html
11964
11994
  # [4]: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DeleteEndpoint.html
11965
11995
  # [5]: https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_DescribeEndpoint.html
11996
+ # [6]: https://docs.aws.amazon.com/sagemaker/latest/dg/deployment-guardrails-rolling.html
11966
11997
  # @return [String]
11967
11998
  #
11968
11999
  # @!attribute [rw] failure_reason
@@ -16488,6 +16519,43 @@ module Aws::SageMaker
16488
16519
  include Aws::Structure
16489
16520
  end
16490
16521
 
16522
+ # An object with the recommended values for you to specify when creating
16523
+ # an autoscaling policy.
16524
+ #
16525
+ # @!attribute [rw] min_capacity
16526
+ # The recommended minimum capacity to specify for your autoscaling
16527
+ # policy.
16528
+ # @return [Integer]
16529
+ #
16530
+ # @!attribute [rw] max_capacity
16531
+ # The recommended maximum capacity to specify for your autoscaling
16532
+ # policy.
16533
+ # @return [Integer]
16534
+ #
16535
+ # @!attribute [rw] scale_in_cooldown
16536
+ # The recommended scale in cooldown time for your autoscaling policy.
16537
+ # @return [Integer]
16538
+ #
16539
+ # @!attribute [rw] scale_out_cooldown
16540
+ # The recommended scale out cooldown time for your autoscaling policy.
16541
+ # @return [Integer]
16542
+ #
16543
+ # @!attribute [rw] scaling_policies
16544
+ # An object of the scaling policies for each metric.
16545
+ # @return [Array<Types::ScalingPolicy>]
16546
+ #
16547
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DynamicScalingConfiguration AWS API Documentation
16548
+ #
16549
+ class DynamicScalingConfiguration < Struct.new(
16550
+ :min_capacity,
16551
+ :max_capacity,
16552
+ :scale_in_cooldown,
16553
+ :scale_out_cooldown,
16554
+ :scaling_policies)
16555
+ SENSITIVE = []
16556
+ include Aws::Structure
16557
+ end
16558
+
16491
16559
  # The configurations and outcomes of an Amazon EMR step execution.
16492
16560
  #
16493
16561
  # @!attribute [rw] cluster_id
@@ -18380,6 +18448,99 @@ module Aws::SageMaker
18380
18448
  include Aws::Structure
18381
18449
  end
18382
18450
 
18451
+ # @!attribute [rw] inference_recommendations_job_name
18452
+ # The name of a previously completed Inference Recommender job.
18453
+ # @return [String]
18454
+ #
18455
+ # @!attribute [rw] recommendation_id
18456
+ # The recommendation ID of a previously completed inference
18457
+ # recommendation. This ID should come from one of the recommendations
18458
+ # returned by the job specified in the
18459
+ # `InferenceRecommendationsJobName` field.
18460
+ #
18461
+ # Specify either this field or the `EndpointName` field.
18462
+ # @return [String]
18463
+ #
18464
+ # @!attribute [rw] endpoint_name
18465
+ # The name of an endpoint benchmarked during a previously completed
18466
+ # inference recommendation job. This name should come from one of the
18467
+ # recommendations returned by the job specified in the
18468
+ # `InferenceRecommendationsJobName` field.
18469
+ #
18470
+ # Specify either this field or the `RecommendationId` field.
18471
+ # @return [String]
18472
+ #
18473
+ # @!attribute [rw] target_cpu_utilization_per_core
18474
+ # The percentage of how much utilization you want an instance to use
18475
+ # before autoscaling. The default value is 50%.
18476
+ # @return [Integer]
18477
+ #
18478
+ # @!attribute [rw] scaling_policy_objective
18479
+ # An object where you specify the anticipated traffic pattern for an
18480
+ # endpoint.
18481
+ # @return [Types::ScalingPolicyObjective]
18482
+ #
18483
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/GetScalingConfigurationRecommendationRequest AWS API Documentation
18484
+ #
18485
+ class GetScalingConfigurationRecommendationRequest < Struct.new(
18486
+ :inference_recommendations_job_name,
18487
+ :recommendation_id,
18488
+ :endpoint_name,
18489
+ :target_cpu_utilization_per_core,
18490
+ :scaling_policy_objective)
18491
+ SENSITIVE = []
18492
+ include Aws::Structure
18493
+ end
18494
+
18495
+ # @!attribute [rw] inference_recommendations_job_name
18496
+ # The name of a previously completed Inference Recommender job.
18497
+ # @return [String]
18498
+ #
18499
+ # @!attribute [rw] recommendation_id
18500
+ # The recommendation ID of a previously completed inference
18501
+ # recommendation.
18502
+ # @return [String]
18503
+ #
18504
+ # @!attribute [rw] endpoint_name
18505
+ # The name of an endpoint benchmarked during a previously completed
18506
+ # Inference Recommender job.
18507
+ # @return [String]
18508
+ #
18509
+ # @!attribute [rw] target_cpu_utilization_per_core
18510
+ # The percentage of how much utilization you want an instance to use
18511
+ # before autoscaling, which you specified in the request. The default
18512
+ # value is 50%.
18513
+ # @return [Integer]
18514
+ #
18515
+ # @!attribute [rw] scaling_policy_objective
18516
+ # An object representing the anticipated traffic pattern for an
18517
+ # endpoint that you specified in the request.
18518
+ # @return [Types::ScalingPolicyObjective]
18519
+ #
18520
+ # @!attribute [rw] metric
18521
+ # An object with a list of metrics that were benchmarked during the
18522
+ # previously completed Inference Recommender job.
18523
+ # @return [Types::ScalingPolicyMetric]
18524
+ #
18525
+ # @!attribute [rw] dynamic_scaling_configuration
18526
+ # An object with the recommended values for you to specify when
18527
+ # creating an autoscaling policy.
18528
+ # @return [Types::DynamicScalingConfiguration]
18529
+ #
18530
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/GetScalingConfigurationRecommendationResponse AWS API Documentation
18531
+ #
18532
+ class GetScalingConfigurationRecommendationResponse < Struct.new(
18533
+ :inference_recommendations_job_name,
18534
+ :recommendation_id,
18535
+ :endpoint_name,
18536
+ :target_cpu_utilization_per_core,
18537
+ :scaling_policy_objective,
18538
+ :metric,
18539
+ :dynamic_scaling_configuration)
18540
+ SENSITIVE = []
18541
+ include Aws::Structure
18542
+ end
18543
+
18383
18544
  # @!attribute [rw] resource
18384
18545
  # The name of the SageMaker resource to search for.
18385
18546
  # @return [String]
@@ -27839,6 +28000,33 @@ module Aws::SageMaker
27839
28000
  include Aws::Structure
27840
28001
  end
27841
28002
 
28003
+ # An object containing information about a metric.
28004
+ #
28005
+ # @note MetricSpecification is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of MetricSpecification corresponding to the set member.
28006
+ #
28007
+ # @!attribute [rw] predefined
28008
+ # Information about a predefined metric.
28009
+ # @return [Types::PredefinedMetricSpecification]
28010
+ #
28011
+ # @!attribute [rw] customized
28012
+ # Information about a customized metric.
28013
+ # @return [Types::CustomizedMetricSpecification]
28014
+ #
28015
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/MetricSpecification AWS API Documentation
28016
+ #
28017
+ class MetricSpecification < Struct.new(
28018
+ :predefined,
28019
+ :customized,
28020
+ :unknown)
28021
+ SENSITIVE = []
28022
+ include Aws::Structure
28023
+ include Aws::Structure::Union
28024
+
28025
+ class Predefined < MetricSpecification; end
28026
+ class Customized < MetricSpecification; end
28027
+ class Unknown < MetricSpecification; end
28028
+ end
28029
+
27842
28030
  # Details about the metrics source.
27843
28031
  #
27844
28032
  # @!attribute [rw] content_type
@@ -28827,7 +29015,8 @@ module Aws::SageMaker
28827
29015
  # The model latency threshold.
28828
29016
  #
28829
29017
  # @!attribute [rw] percentile
28830
- # The model latency percentile threshold.
29018
+ # The model latency percentile threshold. For custom load tests,
29019
+ # specify the value as `P95`.
28831
29020
  # @return [String]
28832
29021
  #
28833
29022
  # @!attribute [rw] value_in_milliseconds
@@ -31739,7 +31928,8 @@ module Aws::SageMaker
31739
31928
  # Defines the traffic pattern.
31740
31929
  #
31741
31930
  # @!attribute [rw] initial_number_of_users
31742
- # Specifies how many concurrent users to start with.
31931
+ # Specifies how many concurrent users to start with. The value should
31932
+ # be between 1 and 3.
31743
31933
  # @return [Integer]
31744
31934
  #
31745
31935
  # @!attribute [rw] spawn_rate
@@ -31747,7 +31937,9 @@ module Aws::SageMaker
31747
31937
  # @return [Integer]
31748
31938
  #
31749
31939
  # @!attribute [rw] duration_in_seconds
31750
- # Specifies how long traffic phase should be.
31940
+ # Specifies how long a traffic phase should be. For custom load tests,
31941
+ # the value should be between 120 and 3600. This value should not
31942
+ # exceed `JobDurationInSeconds`.
31751
31943
  # @return [Integer]
31752
31944
  #
31753
31945
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/Phase AWS API Documentation
@@ -32257,6 +32449,21 @@ module Aws::SageMaker
32257
32449
  include Aws::Structure
32258
32450
  end
32259
32451
 
32452
+ # A specification for a predefined metric.
32453
+ #
32454
+ # @!attribute [rw] predefined_metric_type
32455
+ # The metric type. You can only apply SageMaker metric types to
32456
+ # SageMaker endpoints.
32457
+ # @return [String]
32458
+ #
32459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/PredefinedMetricSpecification AWS API Documentation
32460
+ #
32461
+ class PredefinedMetricSpecification < Struct.new(
32462
+ :predefined_metric_type)
32463
+ SENSITIVE = []
32464
+ include Aws::Structure
32465
+ end
32466
+
32260
32467
  # Configuration for the cluster used to run a processing job.
32261
32468
  #
32262
32469
  # @!attribute [rw] instance_count
@@ -34263,7 +34470,8 @@ module Aws::SageMaker
34263
34470
  # @return [String]
34264
34471
  #
34265
34472
  # @!attribute [rw] job_duration_in_seconds
34266
- # Specifies the maximum duration of the job, in seconds.&gt;
34473
+ # Specifies the maximum duration of the job, in seconds. The maximum
34474
+ # value is 7200.
34267
34475
  # @return [Integer]
34268
34476
  #
34269
34477
  # @!attribute [rw] traffic_pattern
@@ -34462,11 +34670,19 @@ module Aws::SageMaker
34462
34670
  # container.
34463
34671
  # @return [Array<Types::ModelLatencyThreshold>]
34464
34672
  #
34673
+ # @!attribute [rw] flat_invocations
34674
+ # Stops a load test when the number of invocations (TPS) peaks and
34675
+ # flattens, which means that the instance has reached capacity. The
34676
+ # default value is `Stop`. If you want the load test to continue after
34677
+ # invocations have flattened, set the value to `Continue`.
34678
+ # @return [String]
34679
+ #
34465
34680
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/RecommendationJobStoppingConditions AWS API Documentation
34466
34681
  #
34467
34682
  class RecommendationJobStoppingConditions < Struct.new(
34468
34683
  :max_invocations,
34469
- :model_latency_thresholds)
34684
+ :model_latency_thresholds,
34685
+ :flat_invocations)
34470
34686
  SENSITIVE = []
34471
34687
  include Aws::Structure
34472
34688
  end
@@ -35450,6 +35666,75 @@ module Aws::SageMaker
35450
35666
  include Aws::Structure
35451
35667
  end
35452
35668
 
35669
+ # An object containing a recommended scaling policy.
35670
+ #
35671
+ # @note ScalingPolicy is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of ScalingPolicy corresponding to the set member.
35672
+ #
35673
+ # @!attribute [rw] target_tracking
35674
+ # A target tracking scaling policy. Includes support for predefined or
35675
+ # customized metrics.
35676
+ # @return [Types::TargetTrackingScalingPolicyConfiguration]
35677
+ #
35678
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ScalingPolicy AWS API Documentation
35679
+ #
35680
+ class ScalingPolicy < Struct.new(
35681
+ :target_tracking,
35682
+ :unknown)
35683
+ SENSITIVE = []
35684
+ include Aws::Structure
35685
+ include Aws::Structure::Union
35686
+
35687
+ class TargetTracking < ScalingPolicy; end
35688
+ class Unknown < ScalingPolicy; end
35689
+ end
35690
+
35691
+ # The metric for a scaling policy.
35692
+ #
35693
+ # @!attribute [rw] invocations_per_instance
35694
+ # The number of invocations sent to a model, normalized by
35695
+ # `InstanceCount` in each ProductionVariant. `1/numberOfInstances` is
35696
+ # sent as the value on each request, where `numberOfInstances` is the
35697
+ # number of active instances for the ProductionVariant behind the
35698
+ # endpoint at the time of the request.
35699
+ # @return [Integer]
35700
+ #
35701
+ # @!attribute [rw] model_latency
35702
+ # The interval of time taken by a model to respond as viewed from
35703
+ # SageMaker. This interval includes the local communication times
35704
+ # taken to send the request and to fetch the response from the
35705
+ # container of a model and the time taken to complete the inference in
35706
+ # the container.
35707
+ # @return [Integer]
35708
+ #
35709
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ScalingPolicyMetric AWS API Documentation
35710
+ #
35711
+ class ScalingPolicyMetric < Struct.new(
35712
+ :invocations_per_instance,
35713
+ :model_latency)
35714
+ SENSITIVE = []
35715
+ include Aws::Structure
35716
+ end
35717
+
35718
+ # An object where you specify the anticipated traffic pattern for an
35719
+ # endpoint.
35720
+ #
35721
+ # @!attribute [rw] min_invocations_per_minute
35722
+ # The minimum number of expected requests to your endpoint per minute.
35723
+ # @return [Integer]
35724
+ #
35725
+ # @!attribute [rw] max_invocations_per_minute
35726
+ # The maximum number of expected requests to your endpoint per minute.
35727
+ # @return [Integer]
35728
+ #
35729
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ScalingPolicyObjective AWS API Documentation
35730
+ #
35731
+ class ScalingPolicyObjective < Struct.new(
35732
+ :min_invocations_per_minute,
35733
+ :max_invocations_per_minute)
35734
+ SENSITIVE = []
35735
+ include Aws::Structure
35736
+ end
35737
+
35453
35738
  # Configuration details about the monitoring schedule.
35454
35739
  #
35455
35740
  # @!attribute [rw] schedule_expression
@@ -36338,6 +36623,34 @@ module Aws::SageMaker
36338
36623
  include Aws::Structure
36339
36624
  end
36340
36625
 
36626
+ # Defines the stairs traffic pattern for an Inference Recommender load
36627
+ # test. This pattern type consists of multiple steps where the number of
36628
+ # users increases at each step.
36629
+ #
36630
+ # Specify either the stairs or phases traffic pattern.
36631
+ #
36632
+ # @!attribute [rw] duration_in_seconds
36633
+ # Defines how long each traffic step should be.
36634
+ # @return [Integer]
36635
+ #
36636
+ # @!attribute [rw] number_of_steps
36637
+ # Specifies how many steps to perform during traffic.
36638
+ # @return [Integer]
36639
+ #
36640
+ # @!attribute [rw] users_per_step
36641
+ # Specifies how many new users to spawn in each step.
36642
+ # @return [Integer]
36643
+ #
36644
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/Stairs AWS API Documentation
36645
+ #
36646
+ class Stairs < Struct.new(
36647
+ :duration_in_seconds,
36648
+ :number_of_steps,
36649
+ :users_per_step)
36650
+ SENSITIVE = []
36651
+ include Aws::Structure
36652
+ end
36653
+
36341
36654
  # @!attribute [rw] edge_deployment_plan_name
36342
36655
  # The name of the edge deployment plan to start.
36343
36656
  # @return [String]
@@ -37111,6 +37424,35 @@ module Aws::SageMaker
37111
37424
  include Aws::Structure
37112
37425
  end
37113
37426
 
37427
+ # A target tracking scaling policy. Includes support for predefined or
37428
+ # customized metrics.
37429
+ #
37430
+ # When using the [PutScalingPolicy][1] API, this parameter is required
37431
+ # when you are creating a policy with the policy type
37432
+ # `TargetTrackingScaling`.
37433
+ #
37434
+ #
37435
+ #
37436
+ # [1]: https://docs.aws.amazon.com/autoscaling/application/APIReference/API_PutScalingPolicy.html
37437
+ #
37438
+ # @!attribute [rw] metric_specification
37439
+ # An object containing information about a metric.
37440
+ # @return [Types::MetricSpecification]
37441
+ #
37442
+ # @!attribute [rw] target_value
37443
+ # The recommended target value to specify for the metric when creating
37444
+ # a scaling policy.
37445
+ # @return [Float]
37446
+ #
37447
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/TargetTrackingScalingPolicyConfiguration AWS API Documentation
37448
+ #
37449
+ class TargetTrackingScalingPolicyConfiguration < Struct.new(
37450
+ :metric_specification,
37451
+ :target_value)
37452
+ SENSITIVE = []
37453
+ include Aws::Structure
37454
+ end
37455
+
37114
37456
  # The TensorBoard app settings.
37115
37457
  #
37116
37458
  # @!attribute [rw] default_resource_spec
@@ -37402,18 +37744,23 @@ module Aws::SageMaker
37402
37744
  # Defines the traffic pattern of the load test.
37403
37745
  #
37404
37746
  # @!attribute [rw] traffic_type
37405
- # Defines the traffic patterns.
37747
+ # Defines the traffic patterns. Choose either `PHASES` or `STAIRS`.
37406
37748
  # @return [String]
37407
37749
  #
37408
37750
  # @!attribute [rw] phases
37409
37751
  # Defines the phases traffic specification.
37410
37752
  # @return [Array<Types::Phase>]
37411
37753
  #
37754
+ # @!attribute [rw] stairs
37755
+ # Defines the stairs traffic pattern.
37756
+ # @return [Types::Stairs]
37757
+ #
37412
37758
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/TrafficPattern AWS API Documentation
37413
37759
  #
37414
37760
  class TrafficPattern < Struct.new(
37415
37761
  :traffic_type,
37416
- :phases)
37762
+ :phases,
37763
+ :stairs)
37417
37764
  SENSITIVE = []
37418
37765
  include Aws::Structure
37419
37766
  end
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-sagemaker/customizations'
53
53
  # @!group service
54
54
  module Aws::SageMaker
55
55
 
56
- GEM_VERSION = '1.200.0'
56
+ GEM_VERSION = '1.202.0'
57
57
 
58
58
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-sagemaker
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.200.0
4
+ version: 1.202.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-07-27 00:00:00.000000000 Z
11
+ date: 2023-08-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core