aws-sdk-sagemaker 1.359.0 → 1.361.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -10,6 +10,684 @@
10
10
  module Aws::SageMaker
11
11
  module Types
12
12
 
13
+ # The SageMaker endpoint configuration for benchmarking.
14
+ #
15
+ # @!attribute [rw] identifier
16
+ # The name or Amazon Resource Name (ARN) of the SageMaker endpoint to
17
+ # benchmark.
18
+ # @return [String]
19
+ #
20
+ # @!attribute [rw] target_container_hostname
21
+ # The hostname of the specific container to target within a
22
+ # multi-container endpoint.
23
+ # @return [String]
24
+ #
25
+ # @!attribute [rw] inference_components
26
+ # The list of inference components to benchmark on the endpoint.
27
+ # @return [Array<Types::AIBenchmarkInferenceComponent>]
28
+ #
29
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIBenchmarkEndpoint AWS API Documentation
30
+ #
31
+ class AIBenchmarkEndpoint < Struct.new(
32
+ :identifier,
33
+ :target_container_hostname,
34
+ :inference_components)
35
+ SENSITIVE = []
36
+ include Aws::Structure
37
+ end
38
+
39
+ # An inference component to benchmark.
40
+ #
41
+ # @!attribute [rw] identifier
42
+ # The name or Amazon Resource Name (ARN) of the inference component.
43
+ # @return [String]
44
+ #
45
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIBenchmarkInferenceComponent AWS API Documentation
46
+ #
47
+ class AIBenchmarkInferenceComponent < Struct.new(
48
+ :identifier)
49
+ SENSITIVE = []
50
+ include Aws::Structure
51
+ end
52
+
53
+ # Summary information about an AI benchmark job.
54
+ #
55
+ # @!attribute [rw] ai_benchmark_job_name
56
+ # The name of the benchmark job.
57
+ # @return [String]
58
+ #
59
+ # @!attribute [rw] ai_benchmark_job_arn
60
+ # The Amazon Resource Name (ARN) of the benchmark job.
61
+ # @return [String]
62
+ #
63
+ # @!attribute [rw] ai_benchmark_job_status
64
+ # The status of the benchmark job.
65
+ # @return [String]
66
+ #
67
+ # @!attribute [rw] creation_time
68
+ # A timestamp that indicates when the benchmark job was created.
69
+ # @return [Time]
70
+ #
71
+ # @!attribute [rw] end_time
72
+ # A timestamp that indicates when the benchmark job completed.
73
+ # @return [Time]
74
+ #
75
+ # @!attribute [rw] ai_workload_config_name
76
+ # The name of the AI workload configuration used by the benchmark job.
77
+ # @return [String]
78
+ #
79
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIBenchmarkJobSummary AWS API Documentation
80
+ #
81
+ class AIBenchmarkJobSummary < Struct.new(
82
+ :ai_benchmark_job_name,
83
+ :ai_benchmark_job_arn,
84
+ :ai_benchmark_job_status,
85
+ :creation_time,
86
+ :end_time,
87
+ :ai_workload_config_name)
88
+ SENSITIVE = []
89
+ include Aws::Structure
90
+ end
91
+
92
+ # The network configuration for an AI benchmark job.
93
+ #
94
+ # @!attribute [rw] vpc_config
95
+ # The VPC configuration, including security group IDs and subnet IDs.
96
+ # @return [Types::VpcConfig]
97
+ #
98
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIBenchmarkNetworkConfig AWS API Documentation
99
+ #
100
+ class AIBenchmarkNetworkConfig < Struct.new(
101
+ :vpc_config)
102
+ SENSITIVE = []
103
+ include Aws::Structure
104
+ end
105
+
106
+ # The output configuration for an AI benchmark job.
107
+ #
108
+ # @!attribute [rw] s3_output_location
109
+ # The Amazon S3 URI where benchmark results are stored.
110
+ # @return [String]
111
+ #
112
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIBenchmarkOutputConfig AWS API Documentation
113
+ #
114
+ class AIBenchmarkOutputConfig < Struct.new(
115
+ :s3_output_location)
116
+ SENSITIVE = []
117
+ include Aws::Structure
118
+ end
119
+
120
+ # The output result of an AI benchmark job, including the Amazon S3
121
+ # location and CloudWatch log information.
122
+ #
123
+ # @!attribute [rw] s3_output_location
124
+ # The Amazon S3 URI where benchmark results are stored.
125
+ # @return [String]
126
+ #
127
+ # @!attribute [rw] cloud_watch_logs
128
+ # The CloudWatch log information for the benchmark job.
129
+ # @return [Array<Types::AICloudWatchLogs>]
130
+ #
131
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIBenchmarkOutputResult AWS API Documentation
132
+ #
133
+ class AIBenchmarkOutputResult < Struct.new(
134
+ :s3_output_location,
135
+ :cloud_watch_logs)
136
+ SENSITIVE = []
137
+ include Aws::Structure
138
+ end
139
+
140
+ # The target for an AI benchmark job. This is a union type — specify one
141
+ # of the members.
142
+ #
143
+ # @note AIBenchmarkTarget is a union - when making an API calls you must set exactly one of the members.
144
+ #
145
+ # @note AIBenchmarkTarget is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of AIBenchmarkTarget corresponding to the set member.
146
+ #
147
+ # @!attribute [rw] endpoint
148
+ # The SageMaker endpoint to benchmark.
149
+ # @return [Types::AIBenchmarkEndpoint]
150
+ #
151
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIBenchmarkTarget AWS API Documentation
152
+ #
153
+ class AIBenchmarkTarget < Struct.new(
154
+ :endpoint,
155
+ :unknown)
156
+ SENSITIVE = []
157
+ include Aws::Structure
158
+ include Aws::Structure::Union
159
+
160
+ class Endpoint < AIBenchmarkTarget; end
161
+ class Unknown < AIBenchmarkTarget; end
162
+ end
163
+
164
+ # The capacity reservation configuration for an AI recommendation job.
165
+ #
166
+ # @!attribute [rw] capacity_reservation_preference
167
+ # The capacity reservation preference. The only valid value is
168
+ # `capacity-reservations-only`.
169
+ # @return [String]
170
+ #
171
+ # @!attribute [rw] ml_reservation_arns
172
+ # The list of ML reservation ARNs to use.
173
+ # @return [Array<String>]
174
+ #
175
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AICapacityReservationConfig AWS API Documentation
176
+ #
177
+ class AICapacityReservationConfig < Struct.new(
178
+ :capacity_reservation_preference,
179
+ :ml_reservation_arns)
180
+ SENSITIVE = []
181
+ include Aws::Structure
182
+ end
183
+
184
+ # CloudWatch log information for an AI benchmark or recommendation job.
185
+ #
186
+ # @!attribute [rw] log_group_arn
187
+ # The Amazon Resource Name (ARN) of the CloudWatch log group.
188
+ # @return [String]
189
+ #
190
+ # @!attribute [rw] log_stream_name
191
+ # The name of the CloudWatch log stream.
192
+ # @return [String]
193
+ #
194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AICloudWatchLogs AWS API Documentation
195
+ #
196
+ class AICloudWatchLogs < Struct.new(
197
+ :log_group_arn,
198
+ :log_stream_name)
199
+ SENSITIVE = []
200
+ include Aws::Structure
201
+ end
202
+
203
+ # The dataset configuration for an AI workload. This is a union type —
204
+ # specify one of the members.
205
+ #
206
+ # @note AIDatasetConfig is a union - when making an API calls you must set exactly one of the members.
207
+ #
208
+ # @note AIDatasetConfig is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of AIDatasetConfig corresponding to the set member.
209
+ #
210
+ # @!attribute [rw] input_data_config
211
+ # An array of input data channel configurations for the workload.
212
+ # @return [Array<Types::AIWorkloadInputDataConfig>]
213
+ #
214
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIDatasetConfig AWS API Documentation
215
+ #
216
+ class AIDatasetConfig < Struct.new(
217
+ :input_data_config,
218
+ :unknown)
219
+ SENSITIVE = []
220
+ include Aws::Structure
221
+ include Aws::Structure::Union
222
+
223
+ class InputDataConfig < AIDatasetConfig; end
224
+ class Unknown < AIDatasetConfig; end
225
+ end
226
+
227
+ # The source of the model for an AI recommendation job. This is a union
228
+ # type.
229
+ #
230
+ # @note AIModelSource is a union - when making an API calls you must set exactly one of the members.
231
+ #
232
+ # @note AIModelSource is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of AIModelSource corresponding to the set member.
233
+ #
234
+ # @!attribute [rw] s3
235
+ # The Amazon S3 location of the model artifacts.
236
+ # @return [Types::AIModelSourceS3]
237
+ #
238
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIModelSource AWS API Documentation
239
+ #
240
+ class AIModelSource < Struct.new(
241
+ :s3,
242
+ :unknown)
243
+ SENSITIVE = []
244
+ include Aws::Structure
245
+ include Aws::Structure::Union
246
+
247
+ class S3 < AIModelSource; end
248
+ class Unknown < AIModelSource; end
249
+ end
250
+
251
+ # The Amazon S3 model source configuration.
252
+ #
253
+ # @!attribute [rw] s3_uri
254
+ # The Amazon S3 URI of the model artifacts.
255
+ # @return [String]
256
+ #
257
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIModelSourceS3 AWS API Documentation
258
+ #
259
+ class AIModelSourceS3 < Struct.new(
260
+ :s3_uri)
261
+ SENSITIVE = []
262
+ include Aws::Structure
263
+ end
264
+
265
+ # An optimization recommendation generated by an AI recommendation job.
266
+ #
267
+ # @!attribute [rw] recommendation_description
268
+ # A description of the recommendation.
269
+ # @return [String]
270
+ #
271
+ # @!attribute [rw] optimization_details
272
+ # The optimization techniques applied in this recommendation.
273
+ # @return [Array<Types::AIRecommendationOptimizationDetail>]
274
+ #
275
+ # @!attribute [rw] model_details
276
+ # Details about the model package associated with this recommendation.
277
+ # @return [Types::AIRecommendationModelDetails]
278
+ #
279
+ # @!attribute [rw] deployment_configuration
280
+ # The deployment configuration for this recommendation, including the
281
+ # container image, instance type, instance count, and environment
282
+ # variables.
283
+ # @return [Types::AIRecommendationDeploymentConfiguration]
284
+ #
285
+ # @!attribute [rw] ai_benchmark_job_arn
286
+ # The Amazon Resource Name (ARN) of the benchmark job associated with
287
+ # this recommendation.
288
+ # @return [String]
289
+ #
290
+ # @!attribute [rw] expected_performance
291
+ # The expected performance metrics for this recommendation.
292
+ # @return [Array<Types::AIRecommendationPerformanceMetric>]
293
+ #
294
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendation AWS API Documentation
295
+ #
296
+ class AIRecommendation < Struct.new(
297
+ :recommendation_description,
298
+ :optimization_details,
299
+ :model_details,
300
+ :deployment_configuration,
301
+ :ai_benchmark_job_arn,
302
+ :expected_performance)
303
+ SENSITIVE = []
304
+ include Aws::Structure
305
+ end
306
+
307
+ # The compute resource specification for an AI recommendation job.
308
+ #
309
+ # @!attribute [rw] instance_types
310
+ # The list of instance types to consider for recommendations. You can
311
+ # specify up to 3 instance types.
312
+ # @return [Array<String>]
313
+ #
314
+ # @!attribute [rw] capacity_reservation_config
315
+ # The capacity reservation configuration.
316
+ # @return [Types::AICapacityReservationConfig]
317
+ #
318
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationComputeSpec AWS API Documentation
319
+ #
320
+ class AIRecommendationComputeSpec < Struct.new(
321
+ :instance_types,
322
+ :capacity_reservation_config)
323
+ SENSITIVE = []
324
+ include Aws::Structure
325
+ end
326
+
327
+ # A performance constraint for an AI recommendation job.
328
+ #
329
+ # @!attribute [rw] metric
330
+ # The performance metric. Valid values are `ttft-ms` (time to first
331
+ # token in milliseconds), `throughput`, and `cost`.
332
+ # @return [String]
333
+ #
334
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationConstraint AWS API Documentation
335
+ #
336
+ class AIRecommendationConstraint < Struct.new(
337
+ :metric)
338
+ SENSITIVE = []
339
+ include Aws::Structure
340
+ end
341
+
342
+ # The deployment configuration for a recommendation.
343
+ #
344
+ # @!attribute [rw] s3
345
+ # The Amazon S3 data channels for the deployment.
346
+ # @return [Array<Types::AIRecommendationDeploymentS3Channel>]
347
+ #
348
+ # @!attribute [rw] image_uri
349
+ # The URI of the container image for the deployment.
350
+ # @return [String]
351
+ #
352
+ # @!attribute [rw] instance_type
353
+ # The recommended instance type for the deployment.
354
+ # @return [String]
355
+ #
356
+ # @!attribute [rw] instance_count
357
+ # The recommended number of instances for the deployment.
358
+ # @return [Integer]
359
+ #
360
+ # @!attribute [rw] copy_count_per_instance
361
+ # The number of model copies per instance.
362
+ # @return [Integer]
363
+ #
364
+ # @!attribute [rw] environment_variables
365
+ # The environment variables for the deployment.
366
+ # @return [Hash<String,String>]
367
+ #
368
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationDeploymentConfiguration AWS API Documentation
369
+ #
370
+ class AIRecommendationDeploymentConfiguration < Struct.new(
371
+ :s3,
372
+ :image_uri,
373
+ :instance_type,
374
+ :instance_count,
375
+ :copy_count_per_instance,
376
+ :environment_variables)
377
+ SENSITIVE = []
378
+ include Aws::Structure
379
+ end
380
+
381
+ # An Amazon S3 data channel for a recommended deployment configuration,
382
+ # containing model artifacts or optimized model outputs.
383
+ #
384
+ # @!attribute [rw] channel_name
385
+ # A custom name for this Amazon S3 data channel.
386
+ # @return [String]
387
+ #
388
+ # @!attribute [rw] uri
389
+ # The Amazon S3 URI of the data for this channel.
390
+ # @return [String]
391
+ #
392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationDeploymentS3Channel AWS API Documentation
393
+ #
394
+ class AIRecommendationDeploymentS3Channel < Struct.new(
395
+ :channel_name,
396
+ :uri)
397
+ SENSITIVE = []
398
+ include Aws::Structure
399
+ end
400
+
401
+ # The inference framework for an AI recommendation job.
402
+ #
403
+ # @!attribute [rw] framework
404
+ # The inference framework. Valid values are `LMI` and `VLLM`.
405
+ # @return [String]
406
+ #
407
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationInferenceSpecification AWS API Documentation
408
+ #
409
+ class AIRecommendationInferenceSpecification < Struct.new(
410
+ :framework)
411
+ SENSITIVE = []
412
+ include Aws::Structure
413
+ end
414
+
415
+ # Instance details for a recommendation.
416
+ #
417
+ # @!attribute [rw] instance_type
418
+ # The recommended instance type.
419
+ # @return [String]
420
+ #
421
+ # @!attribute [rw] instance_count
422
+ # The recommended number of instances.
423
+ # @return [Integer]
424
+ #
425
+ # @!attribute [rw] copy_count_per_instance
426
+ # The number of model copies per instance.
427
+ # @return [Integer]
428
+ #
429
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationInstanceDetail AWS API Documentation
430
+ #
431
+ class AIRecommendationInstanceDetail < Struct.new(
432
+ :instance_type,
433
+ :instance_count,
434
+ :copy_count_per_instance)
435
+ SENSITIVE = []
436
+ include Aws::Structure
437
+ end
438
+
439
+ # Summary information about an AI recommendation job.
440
+ #
441
+ # @!attribute [rw] ai_recommendation_job_name
442
+ # The name of the recommendation job.
443
+ # @return [String]
444
+ #
445
+ # @!attribute [rw] ai_recommendation_job_arn
446
+ # The Amazon Resource Name (ARN) of the recommendation job.
447
+ # @return [String]
448
+ #
449
+ # @!attribute [rw] ai_recommendation_job_status
450
+ # The status of the recommendation job.
451
+ # @return [String]
452
+ #
453
+ # @!attribute [rw] creation_time
454
+ # A timestamp that indicates when the recommendation job was created.
455
+ # @return [Time]
456
+ #
457
+ # @!attribute [rw] end_time
458
+ # A timestamp that indicates when the recommendation job completed.
459
+ # @return [Time]
460
+ #
461
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationJobSummary AWS API Documentation
462
+ #
463
+ class AIRecommendationJobSummary < Struct.new(
464
+ :ai_recommendation_job_name,
465
+ :ai_recommendation_job_arn,
466
+ :ai_recommendation_job_status,
467
+ :creation_time,
468
+ :end_time)
469
+ SENSITIVE = []
470
+ include Aws::Structure
471
+ end
472
+
473
+ # Details about the model package in a recommendation.
474
+ #
475
+ # @!attribute [rw] model_package_arn
476
+ # The Amazon Resource Name (ARN) of the model package.
477
+ # @return [String]
478
+ #
479
+ # @!attribute [rw] inference_specification_name
480
+ # The name of the inference specification within the model package.
481
+ # @return [String]
482
+ #
483
+ # @!attribute [rw] instance_details
484
+ # The instance details for this recommendation, including instance
485
+ # type, count, and model copies per instance.
486
+ # @return [Array<Types::AIRecommendationInstanceDetail>]
487
+ #
488
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationModelDetails AWS API Documentation
489
+ #
490
+ class AIRecommendationModelDetails < Struct.new(
491
+ :model_package_arn,
492
+ :inference_specification_name,
493
+ :instance_details)
494
+ SENSITIVE = []
495
+ include Aws::Structure
496
+ end
497
+
498
+ # Details about an optimization technique applied in a recommendation.
499
+ #
500
+ # @!attribute [rw] optimization_type
501
+ # The type of optimization. Valid values are `SpeculativeDecoding` and
502
+ # `KernelTuning`.
503
+ # @return [String]
504
+ #
505
+ # @!attribute [rw] optimization_config
506
+ # A map of configuration parameters for the optimization technique.
507
+ # @return [Hash<String,String>]
508
+ #
509
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationOptimizationDetail AWS API Documentation
510
+ #
511
+ class AIRecommendationOptimizationDetail < Struct.new(
512
+ :optimization_type,
513
+ :optimization_config)
514
+ SENSITIVE = []
515
+ include Aws::Structure
516
+ end
517
+
518
+ # The output configuration for an AI recommendation job.
519
+ #
520
+ # @!attribute [rw] s3_output_location
521
+ # The Amazon S3 URI where recommendation results are stored.
522
+ # @return [String]
523
+ #
524
+ # @!attribute [rw] model_package_group_identifier
525
+ # The name or Amazon Resource Name (ARN) of the model package group
526
+ # where the optimized model is registered as a new model package
527
+ # version.
528
+ # @return [String]
529
+ #
530
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationOutputConfig AWS API Documentation
531
+ #
532
+ class AIRecommendationOutputConfig < Struct.new(
533
+ :s3_output_location,
534
+ :model_package_group_identifier)
535
+ SENSITIVE = []
536
+ include Aws::Structure
537
+ end
538
+
539
+ # The output configuration for an AI recommendation job, including the
540
+ # S3 location for results and the model package group for deployment.
541
+ #
542
+ # @!attribute [rw] s3_output_location
543
+ # The Amazon S3 URI where the recommendation job writes its output
544
+ # results.
545
+ # @return [String]
546
+ #
547
+ # @!attribute [rw] model_package_group_identifier
548
+ # The name or Amazon Resource Name (ARN) of the model package group
549
+ # where deployment-ready model packages are registered.
550
+ # @return [String]
551
+ #
552
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationOutputResult AWS API Documentation
553
+ #
554
+ class AIRecommendationOutputResult < Struct.new(
555
+ :s3_output_location,
556
+ :model_package_group_identifier)
557
+ SENSITIVE = []
558
+ include Aws::Structure
559
+ end
560
+
561
+ # An expected performance metric for a recommendation.
562
+ #
563
+ # @!attribute [rw] metric
564
+ # The name of the performance metric.
565
+ # @return [String]
566
+ #
567
+ # @!attribute [rw] stat
568
+ # The statistical measure for the metric.
569
+ # @return [String]
570
+ #
571
+ # @!attribute [rw] value
572
+ # The value of the metric.
573
+ # @return [String]
574
+ #
575
+ # @!attribute [rw] unit
576
+ # The unit of the metric value.
577
+ # @return [String]
578
+ #
579
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationPerformanceMetric AWS API Documentation
580
+ #
581
+ class AIRecommendationPerformanceMetric < Struct.new(
582
+ :metric,
583
+ :stat,
584
+ :value,
585
+ :unit)
586
+ SENSITIVE = []
587
+ include Aws::Structure
588
+ end
589
+
590
+ # The performance targets for an AI recommendation job.
591
+ #
592
+ # @!attribute [rw] constraints
593
+ # An array of performance constraints that define the optimization
594
+ # objectives.
595
+ # @return [Array<Types::AIRecommendationConstraint>]
596
+ #
597
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIRecommendationPerformanceTarget AWS API Documentation
598
+ #
599
+ class AIRecommendationPerformanceTarget < Struct.new(
600
+ :constraints)
601
+ SENSITIVE = []
602
+ include Aws::Structure
603
+ end
604
+
605
+ # Summary information about an AI workload configuration.
606
+ #
607
+ # @!attribute [rw] ai_workload_config_name
608
+ # The name of the AI workload configuration.
609
+ # @return [String]
610
+ #
611
+ # @!attribute [rw] ai_workload_config_arn
612
+ # The Amazon Resource Name (ARN) of the AI workload configuration.
613
+ # @return [String]
614
+ #
615
+ # @!attribute [rw] creation_time
616
+ # A timestamp that indicates when the configuration was created.
617
+ # @return [Time]
618
+ #
619
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIWorkloadConfigSummary AWS API Documentation
620
+ #
621
+ class AIWorkloadConfigSummary < Struct.new(
622
+ :ai_workload_config_name,
623
+ :ai_workload_config_arn,
624
+ :creation_time)
625
+ SENSITIVE = []
626
+ include Aws::Structure
627
+ end
628
+
629
+ # The benchmark tool configuration for an AI workload.
630
+ #
631
+ # @!attribute [rw] workload_spec
632
+ # The workload specification that defines benchmark parameters.
633
+ # @return [Types::WorkloadSpec]
634
+ #
635
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIWorkloadConfigs AWS API Documentation
636
+ #
637
+ class AIWorkloadConfigs < Struct.new(
638
+ :workload_spec)
639
+ SENSITIVE = []
640
+ include Aws::Structure
641
+ end
642
+
643
+ # The data source for an AI workload input data channel.
644
+ #
645
+ # @!attribute [rw] s3_data_source
646
+ # The Amazon S3 data source configuration.
647
+ # @return [Types::AIWorkloadS3DataSource]
648
+ #
649
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIWorkloadDataSource AWS API Documentation
650
+ #
651
+ class AIWorkloadDataSource < Struct.new(
652
+ :s3_data_source)
653
+ SENSITIVE = []
654
+ include Aws::Structure
655
+ end
656
+
657
+ # A channel of input data for an AI workload configuration. Each channel
658
+ # has a name and a data source.
659
+ #
660
+ # @!attribute [rw] channel_name
661
+ # The logical name for the data channel.
662
+ # @return [String]
663
+ #
664
+ # @!attribute [rw] data_source
665
+ # The data source for this channel.
666
+ # @return [Types::AIWorkloadDataSource]
667
+ #
668
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIWorkloadInputDataConfig AWS API Documentation
669
+ #
670
+ class AIWorkloadInputDataConfig < Struct.new(
671
+ :channel_name,
672
+ :data_source)
673
+ SENSITIVE = []
674
+ include Aws::Structure
675
+ end
676
+
677
+ # The Amazon S3 data source for an AI workload.
678
+ #
679
+ # @!attribute [rw] s3_uri
680
+ # The Amazon S3 URI of the data.
681
+ # @return [String]
682
+ #
683
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AIWorkloadS3DataSource AWS API Documentation
684
+ #
685
+ class AIWorkloadS3DataSource < Struct.new(
686
+ :s3_uri)
687
+ SENSITIVE = []
688
+ include Aws::Structure
689
+ end
690
+
13
691
  # Configuration for allocating accelerator partitions.
14
692
  #
15
693
  # @!attribute [rw] type
@@ -5698,6 +6376,10 @@ module Aws::SageMaker
5698
6376
  # The Slurm configuration for the instance group.
5699
6377
  # @return [Types::ClusterSlurmConfigDetails]
5700
6378
  #
6379
+ # @!attribute [rw] network_interface
6380
+ # The network interface configuration for the instance group.
6381
+ # @return [Types::ClusterNetworkInterfaceDetails]
6382
+ #
5701
6383
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterInstanceGroupDetails AWS API Documentation
5702
6384
  #
5703
6385
  class ClusterInstanceGroupDetails < Struct.new(
@@ -5726,7 +6408,8 @@ module Aws::SageMaker
5726
6408
  :target_state_count,
5727
6409
  :software_update_status,
5728
6410
  :active_software_update_config,
5729
- :slurm_config)
6411
+ :slurm_config,
6412
+ :network_interface)
5730
6413
  SENSITIVE = []
5731
6414
  include Aws::Structure
5732
6415
  end
@@ -5897,6 +6580,10 @@ module Aws::SageMaker
5897
6580
  # Specifies the capacity requirements for the instance group.
5898
6581
  # @return [Types::ClusterCapacityRequirements]
5899
6582
  #
6583
+ # @!attribute [rw] network_interface
6584
+ # The network interface configuration for the instance group.
6585
+ # @return [Types::ClusterNetworkInterface]
6586
+ #
5900
6587
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterInstanceGroupSpecification AWS API Documentation
5901
6588
  #
5902
6589
  class ClusterInstanceGroupSpecification < Struct.new(
@@ -5916,7 +6603,8 @@ module Aws::SageMaker
5916
6603
  :image_id,
5917
6604
  :kubernetes_config,
5918
6605
  :slurm_config,
5919
- :capacity_requirements)
6606
+ :capacity_requirements,
6607
+ :network_interface)
5920
6608
  SENSITIVE = []
5921
6609
  include Aws::Structure
5922
6610
  end
@@ -6207,11 +6895,18 @@ module Aws::SageMaker
6207
6895
  # `SourceS3Uri`. This entrypoint script runs during cluster creation.
6208
6896
  # @return [String]
6209
6897
  #
6898
+ # @!attribute [rw] on_init_complete
6899
+ # The file name of the entrypoint script of lifecycle scripts under
6900
+ # `SourceS3Uri`. This script runs on the node after the AMI-based
6901
+ # initialization is complete.
6902
+ # @return [String]
6903
+ #
6210
6904
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterLifeCycleConfig AWS API Documentation
6211
6905
  #
6212
6906
  class ClusterLifeCycleConfig < Struct.new(
6213
6907
  :source_s3_uri,
6214
- :on_create)
6908
+ :on_create,
6909
+ :on_init_complete)
6215
6910
  SENSITIVE = []
6216
6911
  include Aws::Structure
6217
6912
  end
@@ -6247,6 +6942,51 @@ module Aws::SageMaker
6247
6942
  include Aws::Structure
6248
6943
  end
6249
6944
 
6945
+ # The network interface configuration for a Amazon SageMaker HyperPod
6946
+ # cluster instance group.
6947
+ #
6948
+ # @!attribute [rw] interface_type
6949
+ # The type of network interface for the instance group. Valid values:
6950
+ #
6951
+ # * `efa` – An EFA with ENA interface, which provides both the EFA
6952
+ # device for low-latency, high-throughput communication and the ENA
6953
+ # device for IP networking.
6954
+ #
6955
+ # * `efa-only` – An EFA-only interface, which provides only the EFA
6956
+ # device capabilities without the ENA device for traditional IP
6957
+ # networking.
6958
+ #
6959
+ # For more information, see [Elastic Fabric Adapter][1].
6960
+ #
6961
+ #
6962
+ #
6963
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html
6964
+ # @return [String]
6965
+ #
6966
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterNetworkInterface AWS API Documentation
6967
+ #
6968
+ class ClusterNetworkInterface < Struct.new(
6969
+ :interface_type)
6970
+ SENSITIVE = []
6971
+ include Aws::Structure
6972
+ end
6973
+
6974
+ # The network interface configuration details for a Amazon SageMaker
6975
+ # HyperPod cluster instance group.
6976
+ #
6977
+ # @!attribute [rw] interface_type
6978
+ # The type of network interface for the instance group. Valid values
6979
+ # are `efa` and `efa-only`.
6980
+ # @return [String]
6981
+ #
6982
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterNetworkInterfaceDetails AWS API Documentation
6983
+ #
6984
+ class ClusterNetworkInterfaceDetails < Struct.new(
6985
+ :interface_type)
6986
+ SENSITIVE = []
6987
+ include Aws::Structure
6988
+ end
6989
+
6250
6990
  # Details of an instance (also called a *node* interchangeably) in a
6251
6991
  # SageMaker HyperPod cluster.
6252
6992
  #
@@ -6348,6 +7088,10 @@ module Aws::SageMaker
6348
7088
  # instance.
6349
7089
  # @return [String]
6350
7090
  #
7091
+ # @!attribute [rw] network_interface
7092
+ # The network interface configuration for the cluster node.
7093
+ # @return [Types::ClusterNetworkInterfaceDetails]
7094
+ #
6351
7095
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterNodeDetails AWS API Documentation
6352
7096
  #
6353
7097
  class ClusterNodeDetails < Struct.new(
@@ -6370,7 +7114,8 @@ module Aws::SageMaker
6370
7114
  :desired_image_id,
6371
7115
  :ultra_server_info,
6372
7116
  :kubernetes_config,
6373
- :capacity_type)
7117
+ :capacity_type,
7118
+ :network_interface)
6374
7119
  SENSITIVE = []
6375
7120
  include Aws::Structure
6376
7121
  end
@@ -7748,6 +8493,204 @@ module Aws::SageMaker
7748
8493
  include Aws::Structure
7749
8494
  end
7750
8495
 
8496
+ # @!attribute [rw] ai_benchmark_job_name
8497
+ # The name of the AI benchmark job. The name must be unique within
8498
+ # your Amazon Web Services account in the current Amazon Web Services
8499
+ # Region.
8500
+ # @return [String]
8501
+ #
8502
+ # @!attribute [rw] benchmark_target
8503
+ # The target endpoint to benchmark. Specify a SageMaker endpoint by
8504
+ # providing its name or Amazon Resource Name (ARN).
8505
+ # @return [Types::AIBenchmarkTarget]
8506
+ #
8507
+ # @!attribute [rw] output_config
8508
+ # The output configuration for the benchmark job, including the Amazon
8509
+ # S3 location where benchmark results are stored.
8510
+ # @return [Types::AIBenchmarkOutputConfig]
8511
+ #
8512
+ # @!attribute [rw] ai_workload_config_identifier
8513
+ # The name or Amazon Resource Name (ARN) of the AI workload
8514
+ # configuration to use for this benchmark job.
8515
+ # @return [String]
8516
+ #
8517
+ # @!attribute [rw] role_arn
8518
+ # The Amazon Resource Name (ARN) of an IAM role that enables Amazon
8519
+ # SageMaker AI to perform tasks on your behalf.
8520
+ # @return [String]
8521
+ #
8522
+ # @!attribute [rw] network_config
8523
+ # The network configuration for the benchmark job, including VPC
8524
+ # settings.
8525
+ # @return [Types::AIBenchmarkNetworkConfig]
8526
+ #
8527
+ # @!attribute [rw] tags
8528
+ # The metadata that you apply to Amazon Web Services resources to help
8529
+ # you categorize and organize them. Each tag consists of a key and a
8530
+ # value, both of which you define.
8531
+ # @return [Array<Types::Tag>]
8532
+ #
8533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateAIBenchmarkJobRequest AWS API Documentation
8534
+ #
8535
+ class CreateAIBenchmarkJobRequest < Struct.new(
8536
+ :ai_benchmark_job_name,
8537
+ :benchmark_target,
8538
+ :output_config,
8539
+ :ai_workload_config_identifier,
8540
+ :role_arn,
8541
+ :network_config,
8542
+ :tags)
8543
+ SENSITIVE = []
8544
+ include Aws::Structure
8545
+ end
8546
+
8547
+ # @!attribute [rw] ai_benchmark_job_arn
8548
+ # The Amazon Resource Name (ARN) of the created benchmark job.
8549
+ # @return [String]
8550
+ #
8551
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateAIBenchmarkJobResponse AWS API Documentation
8552
+ #
8553
+ class CreateAIBenchmarkJobResponse < Struct.new(
8554
+ :ai_benchmark_job_arn)
8555
+ SENSITIVE = []
8556
+ include Aws::Structure
8557
+ end
8558
+
8559
+ # @!attribute [rw] ai_recommendation_job_name
8560
+ # The name of the AI recommendation job. The name must be unique
8561
+ # within your Amazon Web Services account in the current Amazon Web
8562
+ # Services Region.
8563
+ # @return [String]
8564
+ #
8565
+ # @!attribute [rw] model_source
8566
+ # The source of the model to optimize. Specify the Amazon S3 location
8567
+ # of the model artifacts.
8568
+ # @return [Types::AIModelSource]
8569
+ #
8570
+ # @!attribute [rw] output_config
8571
+ # The output configuration for the recommendation job, including the
8572
+ # Amazon S3 location for results and an optional model package group
8573
+ # where the optimized model is registered.
8574
+ # @return [Types::AIRecommendationOutputConfig]
8575
+ #
8576
+ # @!attribute [rw] ai_workload_config_identifier
8577
+ # The name or Amazon Resource Name (ARN) of the AI workload
8578
+ # configuration to use for this recommendation job.
8579
+ # @return [String]
8580
+ #
8581
+ # @!attribute [rw] performance_target
8582
+ # The performance targets for the recommendation job. Specify
8583
+ # constraints on metrics such as time to first token (`ttft-ms`),
8584
+ # `throughput`, or `cost`.
8585
+ # @return [Types::AIRecommendationPerformanceTarget]
8586
+ #
8587
+ # @!attribute [rw] role_arn
8588
+ # The Amazon Resource Name (ARN) of an IAM role that enables Amazon
8589
+ # SageMaker AI to perform tasks on your behalf.
8590
+ # @return [String]
8591
+ #
8592
+ # @!attribute [rw] inference_specification
8593
+ # The inference framework configuration. Specify the framework (such
8594
+ # as LMI or vLLM) for the recommendation job.
8595
+ # @return [Types::AIRecommendationInferenceSpecification]
8596
+ #
8597
+ # @!attribute [rw] optimize_model
8598
+ # Whether to allow model optimization techniques such as quantization,
8599
+ # speculative decoding, and kernel tuning. The default is `true`.
8600
+ # @return [Boolean]
8601
+ #
8602
+ # @!attribute [rw] compute_spec
8603
+ # The compute resource specification for the recommendation job. You
8604
+ # can specify up to 3 instance types to consider, and optionally
8605
+ # provide capacity reservation configuration.
8606
+ # @return [Types::AIRecommendationComputeSpec]
8607
+ #
8608
+ # @!attribute [rw] tags
8609
+ # The metadata that you apply to Amazon Web Services resources to help
8610
+ # you categorize and organize them.
8611
+ # @return [Array<Types::Tag>]
8612
+ #
8613
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateAIRecommendationJobRequest AWS API Documentation
8614
+ #
8615
+ class CreateAIRecommendationJobRequest < Struct.new(
8616
+ :ai_recommendation_job_name,
8617
+ :model_source,
8618
+ :output_config,
8619
+ :ai_workload_config_identifier,
8620
+ :performance_target,
8621
+ :role_arn,
8622
+ :inference_specification,
8623
+ :optimize_model,
8624
+ :compute_spec,
8625
+ :tags)
8626
+ SENSITIVE = []
8627
+ include Aws::Structure
8628
+ end
8629
+
8630
+ # @!attribute [rw] ai_recommendation_job_arn
8631
+ # The Amazon Resource Name (ARN) of the created recommendation job.
8632
+ # @return [String]
8633
+ #
8634
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateAIRecommendationJobResponse AWS API Documentation
8635
+ #
8636
+ class CreateAIRecommendationJobResponse < Struct.new(
8637
+ :ai_recommendation_job_arn)
8638
+ SENSITIVE = []
8639
+ include Aws::Structure
8640
+ end
8641
+
8642
+ # @!attribute [rw] ai_workload_config_name
8643
+ # The name of the AI workload configuration. The name must be unique
8644
+ # within your Amazon Web Services account in the current Amazon Web
8645
+ # Services Region.
8646
+ # @return [String]
8647
+ #
8648
+ # @!attribute [rw] dataset_config
8649
+ # The dataset configuration for the workload. Specify input data
8650
+ # channels with their data sources for benchmark workloads.
8651
+ # @return [Types::AIDatasetConfig]
8652
+ #
8653
+ # @!attribute [rw] ai_workload_configs
8654
+ # The benchmark tool configuration and workload specification. Provide
8655
+ # the specification as an inline YAML or JSON string.
8656
+ # @return [Types::AIWorkloadConfigs]
8657
+ #
8658
+ # @!attribute [rw] tags
8659
+ # The metadata that you apply to Amazon Web Services resources to help
8660
+ # you categorize and organize them. Each tag consists of a key and a
8661
+ # value, both of which you define. For more information, see [Tagging
8662
+ # Amazon Web Services Resources][1] in the Amazon Web Services General
8663
+ # Reference.
8664
+ #
8665
+ #
8666
+ #
8667
+ # [1]: https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html
8668
+ # @return [Array<Types::Tag>]
8669
+ #
8670
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateAIWorkloadConfigRequest AWS API Documentation
8671
+ #
8672
+ class CreateAIWorkloadConfigRequest < Struct.new(
8673
+ :ai_workload_config_name,
8674
+ :dataset_config,
8675
+ :ai_workload_configs,
8676
+ :tags)
8677
+ SENSITIVE = []
8678
+ include Aws::Structure
8679
+ end
8680
+
8681
+ # @!attribute [rw] ai_workload_config_arn
8682
+ # The Amazon Resource Name (ARN) of the created AI workload
8683
+ # configuration.
8684
+ # @return [String]
8685
+ #
8686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/CreateAIWorkloadConfigResponse AWS API Documentation
8687
+ #
8688
+ class CreateAIWorkloadConfigResponse < Struct.new(
8689
+ :ai_workload_config_arn)
8690
+ SENSITIVE = []
8691
+ include Aws::Structure
8692
+ end
8693
+
7751
8694
  # @!attribute [rw] action_name
7752
8695
  # The name of the action. Must be unique to your account in an Amazon
7753
8696
  # Web Services Region.
@@ -14310,6 +15253,79 @@ module Aws::SageMaker
14310
15253
  include Aws::Structure
14311
15254
  end
14312
15255
 
15256
+ # @!attribute [rw] ai_benchmark_job_name
15257
+ # The name of the AI benchmark job to delete.
15258
+ # @return [String]
15259
+ #
15260
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteAIBenchmarkJobRequest AWS API Documentation
15261
+ #
15262
+ class DeleteAIBenchmarkJobRequest < Struct.new(
15263
+ :ai_benchmark_job_name)
15264
+ SENSITIVE = []
15265
+ include Aws::Structure
15266
+ end
15267
+
15268
+ # @!attribute [rw] ai_benchmark_job_arn
15269
+ # The Amazon Resource Name (ARN) of the deleted benchmark job.
15270
+ # @return [String]
15271
+ #
15272
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteAIBenchmarkJobResponse AWS API Documentation
15273
+ #
15274
+ class DeleteAIBenchmarkJobResponse < Struct.new(
15275
+ :ai_benchmark_job_arn)
15276
+ SENSITIVE = []
15277
+ include Aws::Structure
15278
+ end
15279
+
15280
+ # @!attribute [rw] ai_recommendation_job_name
15281
+ # The name of the AI recommendation job to delete.
15282
+ # @return [String]
15283
+ #
15284
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteAIRecommendationJobRequest AWS API Documentation
15285
+ #
15286
+ class DeleteAIRecommendationJobRequest < Struct.new(
15287
+ :ai_recommendation_job_name)
15288
+ SENSITIVE = []
15289
+ include Aws::Structure
15290
+ end
15291
+
15292
+ # @!attribute [rw] ai_recommendation_job_arn
15293
+ # The Amazon Resource Name (ARN) of the deleted recommendation job.
15294
+ # @return [String]
15295
+ #
15296
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteAIRecommendationJobResponse AWS API Documentation
15297
+ #
15298
+ class DeleteAIRecommendationJobResponse < Struct.new(
15299
+ :ai_recommendation_job_arn)
15300
+ SENSITIVE = []
15301
+ include Aws::Structure
15302
+ end
15303
+
15304
+ # @!attribute [rw] ai_workload_config_name
15305
+ # The name of the AI workload configuration to delete.
15306
+ # @return [String]
15307
+ #
15308
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteAIWorkloadConfigRequest AWS API Documentation
15309
+ #
15310
+ class DeleteAIWorkloadConfigRequest < Struct.new(
15311
+ :ai_workload_config_name)
15312
+ SENSITIVE = []
15313
+ include Aws::Structure
15314
+ end
15315
+
15316
+ # @!attribute [rw] ai_workload_config_arn
15317
+ # The Amazon Resource Name (ARN) of the deleted AI workload
15318
+ # configuration.
15319
+ # @return [String]
15320
+ #
15321
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DeleteAIWorkloadConfigResponse AWS API Documentation
15322
+ #
15323
+ class DeleteAIWorkloadConfigResponse < Struct.new(
15324
+ :ai_workload_config_arn)
15325
+ SENSITIVE = []
15326
+ include Aws::Structure
15327
+ end
15328
+
14313
15329
  # @!attribute [rw] action_name
14314
15330
  # The name of the action to delete.
14315
15331
  # @return [String]
@@ -15553,6 +16569,253 @@ module Aws::SageMaker
15553
16569
  include Aws::Structure
15554
16570
  end
15555
16571
 
16572
+ # @!attribute [rw] ai_benchmark_job_name
16573
+ # The name of the AI benchmark job to describe.
16574
+ # @return [String]
16575
+ #
16576
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeAIBenchmarkJobRequest AWS API Documentation
16577
+ #
16578
+ class DescribeAIBenchmarkJobRequest < Struct.new(
16579
+ :ai_benchmark_job_name)
16580
+ SENSITIVE = []
16581
+ include Aws::Structure
16582
+ end
16583
+
16584
+ # @!attribute [rw] ai_benchmark_job_name
16585
+ # The name of the AI benchmark job.
16586
+ # @return [String]
16587
+ #
16588
+ # @!attribute [rw] ai_benchmark_job_arn
16589
+ # The Amazon Resource Name (ARN) of the AI benchmark job.
16590
+ # @return [String]
16591
+ #
16592
+ # @!attribute [rw] ai_benchmark_job_status
16593
+ # The status of the AI benchmark job.
16594
+ # @return [String]
16595
+ #
16596
+ # @!attribute [rw] failure_reason
16597
+ # If the benchmark job failed, the reason it failed.
16598
+ # @return [String]
16599
+ #
16600
+ # @!attribute [rw] benchmark_target
16601
+ # The target endpoint that was benchmarked.
16602
+ # @return [Types::AIBenchmarkTarget]
16603
+ #
16604
+ # @!attribute [rw] output_config
16605
+ # The output configuration for the benchmark job, including the Amazon
16606
+ # S3 output location and CloudWatch log information.
16607
+ # @return [Types::AIBenchmarkOutputResult]
16608
+ #
16609
+ # @!attribute [rw] ai_workload_config_identifier
16610
+ # The name or Amazon Resource Name (ARN) of the AI workload
16611
+ # configuration used for this benchmark job.
16612
+ # @return [String]
16613
+ #
16614
+ # @!attribute [rw] role_arn
16615
+ # The Amazon Resource Name (ARN) of the IAM role used by the benchmark
16616
+ # job.
16617
+ # @return [String]
16618
+ #
16619
+ # @!attribute [rw] network_config
16620
+ # The network configuration for the benchmark job.
16621
+ # @return [Types::AIBenchmarkNetworkConfig]
16622
+ #
16623
+ # @!attribute [rw] creation_time
16624
+ # A timestamp that indicates when the benchmark job was created.
16625
+ # @return [Time]
16626
+ #
16627
+ # @!attribute [rw] start_time
16628
+ # A timestamp that indicates when the benchmark job started running.
16629
+ # @return [Time]
16630
+ #
16631
+ # @!attribute [rw] end_time
16632
+ # A timestamp that indicates when the benchmark job completed.
16633
+ # @return [Time]
16634
+ #
16635
+ # @!attribute [rw] tags
16636
+ # The tags associated with the benchmark job.
16637
+ # @return [Array<Types::Tag>]
16638
+ #
16639
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeAIBenchmarkJobResponse AWS API Documentation
16640
+ #
16641
+ class DescribeAIBenchmarkJobResponse < Struct.new(
16642
+ :ai_benchmark_job_name,
16643
+ :ai_benchmark_job_arn,
16644
+ :ai_benchmark_job_status,
16645
+ :failure_reason,
16646
+ :benchmark_target,
16647
+ :output_config,
16648
+ :ai_workload_config_identifier,
16649
+ :role_arn,
16650
+ :network_config,
16651
+ :creation_time,
16652
+ :start_time,
16653
+ :end_time,
16654
+ :tags)
16655
+ SENSITIVE = []
16656
+ include Aws::Structure
16657
+ end
16658
+
16659
+ # @!attribute [rw] ai_recommendation_job_name
16660
+ # The name of the AI recommendation job to describe.
16661
+ # @return [String]
16662
+ #
16663
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeAIRecommendationJobRequest AWS API Documentation
16664
+ #
16665
+ class DescribeAIRecommendationJobRequest < Struct.new(
16666
+ :ai_recommendation_job_name)
16667
+ SENSITIVE = []
16668
+ include Aws::Structure
16669
+ end
16670
+
16671
+ # @!attribute [rw] ai_recommendation_job_name
16672
+ # The name of the AI recommendation job.
16673
+ # @return [String]
16674
+ #
16675
+ # @!attribute [rw] ai_recommendation_job_arn
16676
+ # The Amazon Resource Name (ARN) of the AI recommendation job.
16677
+ # @return [String]
16678
+ #
16679
+ # @!attribute [rw] ai_recommendation_job_status
16680
+ # The status of the AI recommendation job.
16681
+ # @return [String]
16682
+ #
16683
+ # @!attribute [rw] failure_reason
16684
+ # If the recommendation job failed, the reason it failed.
16685
+ # @return [String]
16686
+ #
16687
+ # @!attribute [rw] model_source
16688
+ # The source of the model that was analyzed.
16689
+ # @return [Types::AIModelSource]
16690
+ #
16691
+ # @!attribute [rw] output_config
16692
+ # The output configuration for the recommendation job.
16693
+ # @return [Types::AIRecommendationOutputResult]
16694
+ #
16695
+ # @!attribute [rw] inference_specification
16696
+ # The inference framework configuration.
16697
+ # @return [Types::AIRecommendationInferenceSpecification]
16698
+ #
16699
+ # @!attribute [rw] ai_workload_config_identifier
16700
+ # The name or Amazon Resource Name (ARN) of the AI workload
16701
+ # configuration used for this recommendation job.
16702
+ # @return [String]
16703
+ #
16704
+ # @!attribute [rw] optimize_model
16705
+ # Whether model optimization techniques were allowed.
16706
+ # @return [Boolean]
16707
+ #
16708
+ # @!attribute [rw] performance_target
16709
+ # The performance targets specified for the recommendation job.
16710
+ # @return [Types::AIRecommendationPerformanceTarget]
16711
+ #
16712
+ # @!attribute [rw] recommendations
16713
+ # The list of optimization recommendations generated by the job. Each
16714
+ # recommendation includes optimization details, deployment
16715
+ # configuration, expected performance metrics, and the associated
16716
+ # benchmark job ARN.
16717
+ # @return [Array<Types::AIRecommendation>]
16718
+ #
16719
+ # @!attribute [rw] role_arn
16720
+ # The Amazon Resource Name (ARN) of the IAM role used by the
16721
+ # recommendation job.
16722
+ # @return [String]
16723
+ #
16724
+ # @!attribute [rw] compute_spec
16725
+ # The compute resource specification for the recommendation job.
16726
+ # @return [Types::AIRecommendationComputeSpec]
16727
+ #
16728
+ # @!attribute [rw] creation_time
16729
+ # A timestamp that indicates when the recommendation job was created.
16730
+ # @return [Time]
16731
+ #
16732
+ # @!attribute [rw] start_time
16733
+ # A timestamp that indicates when the recommendation job started
16734
+ # running.
16735
+ # @return [Time]
16736
+ #
16737
+ # @!attribute [rw] end_time
16738
+ # A timestamp that indicates when the recommendation job completed.
16739
+ # @return [Time]
16740
+ #
16741
+ # @!attribute [rw] tags
16742
+ # The tags associated with the recommendation job.
16743
+ # @return [Array<Types::Tag>]
16744
+ #
16745
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeAIRecommendationJobResponse AWS API Documentation
16746
+ #
16747
+ class DescribeAIRecommendationJobResponse < Struct.new(
16748
+ :ai_recommendation_job_name,
16749
+ :ai_recommendation_job_arn,
16750
+ :ai_recommendation_job_status,
16751
+ :failure_reason,
16752
+ :model_source,
16753
+ :output_config,
16754
+ :inference_specification,
16755
+ :ai_workload_config_identifier,
16756
+ :optimize_model,
16757
+ :performance_target,
16758
+ :recommendations,
16759
+ :role_arn,
16760
+ :compute_spec,
16761
+ :creation_time,
16762
+ :start_time,
16763
+ :end_time,
16764
+ :tags)
16765
+ SENSITIVE = []
16766
+ include Aws::Structure
16767
+ end
16768
+
16769
+ # @!attribute [rw] ai_workload_config_name
16770
+ # The name of the AI workload configuration to describe.
16771
+ # @return [String]
16772
+ #
16773
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeAIWorkloadConfigRequest AWS API Documentation
16774
+ #
16775
+ class DescribeAIWorkloadConfigRequest < Struct.new(
16776
+ :ai_workload_config_name)
16777
+ SENSITIVE = []
16778
+ include Aws::Structure
16779
+ end
16780
+
16781
+ # @!attribute [rw] ai_workload_config_name
16782
+ # The name of the AI workload configuration.
16783
+ # @return [String]
16784
+ #
16785
+ # @!attribute [rw] ai_workload_config_arn
16786
+ # The Amazon Resource Name (ARN) of the AI workload configuration.
16787
+ # @return [String]
16788
+ #
16789
+ # @!attribute [rw] dataset_config
16790
+ # The dataset configuration for the workload.
16791
+ # @return [Types::AIDatasetConfig]
16792
+ #
16793
+ # @!attribute [rw] ai_workload_configs
16794
+ # The benchmark tool configuration and workload specification.
16795
+ # @return [Types::AIWorkloadConfigs]
16796
+ #
16797
+ # @!attribute [rw] tags
16798
+ # The tags associated with the AI workload configuration.
16799
+ # @return [Array<Types::Tag>]
16800
+ #
16801
+ # @!attribute [rw] creation_time
16802
+ # A timestamp that indicates when the AI workload configuration was
16803
+ # created.
16804
+ # @return [Time]
16805
+ #
16806
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/DescribeAIWorkloadConfigResponse AWS API Documentation
16807
+ #
16808
+ class DescribeAIWorkloadConfigResponse < Struct.new(
16809
+ :ai_workload_config_name,
16810
+ :ai_workload_config_arn,
16811
+ :dataset_config,
16812
+ :ai_workload_configs,
16813
+ :tags,
16814
+ :creation_time)
16815
+ SENSITIVE = []
16816
+ include Aws::Structure
16817
+ end
16818
+
15556
16819
  # @!attribute [rw] action_name
15557
16820
  # The name of the action to describe.
15558
16821
  # @return [String]
@@ -31221,6 +32484,214 @@ module Aws::SageMaker
31221
32484
  include Aws::Structure
31222
32485
  end
31223
32486
 
32487
+ # @!attribute [rw] max_results
32488
+ # The maximum number of benchmark jobs to return in the response.
32489
+ # @return [Integer]
32490
+ #
32491
+ # @!attribute [rw] next_token
32492
+ # If the previous call to `ListAIBenchmarkJobs` didn't return the
32493
+ # full set of jobs, the call returns a token for getting the next set.
32494
+ # @return [String]
32495
+ #
32496
+ # @!attribute [rw] name_contains
32497
+ # A string in the job name. This filter returns only jobs whose name
32498
+ # contains the specified string.
32499
+ # @return [String]
32500
+ #
32501
+ # @!attribute [rw] status_equals
32502
+ # A filter that returns only benchmark jobs with the specified status.
32503
+ # @return [String]
32504
+ #
32505
+ # @!attribute [rw] creation_time_after
32506
+ # A filter that returns only jobs created after the specified time.
32507
+ # @return [Time]
32508
+ #
32509
+ # @!attribute [rw] creation_time_before
32510
+ # A filter that returns only jobs created before the specified time.
32511
+ # @return [Time]
32512
+ #
32513
+ # @!attribute [rw] sort_by
32514
+ # The field to sort results by. The default is `CreationTime`.
32515
+ # @return [String]
32516
+ #
32517
+ # @!attribute [rw] sort_order
32518
+ # The sort order for results. The default is `Descending`.
32519
+ # @return [String]
32520
+ #
32521
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListAIBenchmarkJobsRequest AWS API Documentation
32522
+ #
32523
+ class ListAIBenchmarkJobsRequest < Struct.new(
32524
+ :max_results,
32525
+ :next_token,
32526
+ :name_contains,
32527
+ :status_equals,
32528
+ :creation_time_after,
32529
+ :creation_time_before,
32530
+ :sort_by,
32531
+ :sort_order)
32532
+ SENSITIVE = []
32533
+ include Aws::Structure
32534
+ end
32535
+
32536
+ # @!attribute [rw] ai_benchmark_jobs
32537
+ # An array of `AIBenchmarkJobSummary` objects, one for each benchmark
32538
+ # job that matches the specified filters.
32539
+ # @return [Array<Types::AIBenchmarkJobSummary>]
32540
+ #
32541
+ # @!attribute [rw] next_token
32542
+ # If the response is truncated, Amazon SageMaker AI returns this
32543
+ # token. To retrieve the next set of jobs, use it in the subsequent
32544
+ # request.
32545
+ # @return [String]
32546
+ #
32547
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListAIBenchmarkJobsResponse AWS API Documentation
32548
+ #
32549
+ class ListAIBenchmarkJobsResponse < Struct.new(
32550
+ :ai_benchmark_jobs,
32551
+ :next_token)
32552
+ SENSITIVE = []
32553
+ include Aws::Structure
32554
+ end
32555
+
32556
+ # @!attribute [rw] max_results
32557
+ # The maximum number of recommendation jobs to return in the response.
32558
+ # @return [Integer]
32559
+ #
32560
+ # @!attribute [rw] next_token
32561
+ # If the previous call to `ListAIRecommendationJobs` didn't return
32562
+ # the full set of jobs, the call returns a token for getting the next
32563
+ # set.
32564
+ # @return [String]
32565
+ #
32566
+ # @!attribute [rw] name_contains
32567
+ # A string in the job name. This filter returns only jobs whose name
32568
+ # contains the specified string.
32569
+ # @return [String]
32570
+ #
32571
+ # @!attribute [rw] status_equals
32572
+ # A filter that returns only recommendation jobs with the specified
32573
+ # status.
32574
+ # @return [String]
32575
+ #
32576
+ # @!attribute [rw] creation_time_after
32577
+ # A filter that returns only jobs created after the specified time.
32578
+ # @return [Time]
32579
+ #
32580
+ # @!attribute [rw] creation_time_before
32581
+ # A filter that returns only jobs created before the specified time.
32582
+ # @return [Time]
32583
+ #
32584
+ # @!attribute [rw] sort_by
32585
+ # The field to sort results by. The default is `CreationTime`.
32586
+ # @return [String]
32587
+ #
32588
+ # @!attribute [rw] sort_order
32589
+ # The sort order for results. The default is `Descending`.
32590
+ # @return [String]
32591
+ #
32592
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListAIRecommendationJobsRequest AWS API Documentation
32593
+ #
32594
+ class ListAIRecommendationJobsRequest < Struct.new(
32595
+ :max_results,
32596
+ :next_token,
32597
+ :name_contains,
32598
+ :status_equals,
32599
+ :creation_time_after,
32600
+ :creation_time_before,
32601
+ :sort_by,
32602
+ :sort_order)
32603
+ SENSITIVE = []
32604
+ include Aws::Structure
32605
+ end
32606
+
32607
+ # @!attribute [rw] ai_recommendation_jobs
32608
+ # An array of `AIRecommendationJobSummary` objects, one for each
32609
+ # recommendation job that matches the specified filters.
32610
+ # @return [Array<Types::AIRecommendationJobSummary>]
32611
+ #
32612
+ # @!attribute [rw] next_token
32613
+ # If the response is truncated, Amazon SageMaker AI returns this
32614
+ # token. To retrieve the next set of jobs, use it in the subsequent
32615
+ # request.
32616
+ # @return [String]
32617
+ #
32618
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListAIRecommendationJobsResponse AWS API Documentation
32619
+ #
32620
+ class ListAIRecommendationJobsResponse < Struct.new(
32621
+ :ai_recommendation_jobs,
32622
+ :next_token)
32623
+ SENSITIVE = []
32624
+ include Aws::Structure
32625
+ end
32626
+
32627
+ # @!attribute [rw] max_results
32628
+ # The maximum number of AI workload configurations to return in the
32629
+ # response.
32630
+ # @return [Integer]
32631
+ #
32632
+ # @!attribute [rw] next_token
32633
+ # If the previous call to `ListAIWorkloadConfigs` didn't return the
32634
+ # full set of configurations, the call returns a token for getting the
32635
+ # next set of configurations.
32636
+ # @return [String]
32637
+ #
32638
+ # @!attribute [rw] name_contains
32639
+ # A string in the configuration name. This filter returns only
32640
+ # configurations whose name contains the specified string.
32641
+ # @return [String]
32642
+ #
32643
+ # @!attribute [rw] creation_time_after
32644
+ # A filter that returns only configurations created after the
32645
+ # specified time.
32646
+ # @return [Time]
32647
+ #
32648
+ # @!attribute [rw] creation_time_before
32649
+ # A filter that returns only configurations created before the
32650
+ # specified time.
32651
+ # @return [Time]
32652
+ #
32653
+ # @!attribute [rw] sort_by
32654
+ # The field to sort results by. The default is `CreationTime`.
32655
+ # @return [String]
32656
+ #
32657
+ # @!attribute [rw] sort_order
32658
+ # The sort order for results. The default is `Descending`.
32659
+ # @return [String]
32660
+ #
32661
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListAIWorkloadConfigsRequest AWS API Documentation
32662
+ #
32663
+ class ListAIWorkloadConfigsRequest < Struct.new(
32664
+ :max_results,
32665
+ :next_token,
32666
+ :name_contains,
32667
+ :creation_time_after,
32668
+ :creation_time_before,
32669
+ :sort_by,
32670
+ :sort_order)
32671
+ SENSITIVE = []
32672
+ include Aws::Structure
32673
+ end
32674
+
32675
+ # @!attribute [rw] ai_workload_configs
32676
+ # An array of `AIWorkloadConfigSummary` objects, one for each AI
32677
+ # workload configuration that matches the specified filters.
32678
+ # @return [Array<Types::AIWorkloadConfigSummary>]
32679
+ #
32680
+ # @!attribute [rw] next_token
32681
+ # If the response is truncated, Amazon SageMaker AI returns this
32682
+ # token. To retrieve the next set of configurations, use it in the
32683
+ # subsequent request.
32684
+ # @return [String]
32685
+ #
32686
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ListAIWorkloadConfigsResponse AWS API Documentation
32687
+ #
32688
+ class ListAIWorkloadConfigsResponse < Struct.new(
32689
+ :ai_workload_configs,
32690
+ :next_token)
32691
+ SENSITIVE = []
32692
+ include Aws::Structure
32693
+ end
32694
+
31224
32695
  # @!attribute [rw] source_uri
31225
32696
  # A filter that returns only actions with the specified source URI.
31226
32697
  # @return [String]
@@ -39304,6 +40775,12 @@ module Aws::SageMaker
39304
40775
  # `ListModelMetadata`.
39305
40776
  # @return [String]
39306
40777
  #
40778
+ # @!attribute [rw] additional_model_data_sources
40779
+ # Data sources that are available to your model in addition to the one
40780
+ # that you specify for `ModelDataSource` when you use the
40781
+ # `CreateModelPackage` action.
40782
+ # @return [Array<Types::AdditionalModelDataSource>]
40783
+ #
39307
40784
  # @!attribute [rw] additional_s3_data_source
39308
40785
  # The additional data source that is used during inference in the
39309
40786
  # Docker container for your model package.
@@ -39336,6 +40813,7 @@ module Aws::SageMaker
39336
40813
  :framework,
39337
40814
  :framework_version,
39338
40815
  :nearest_model_name,
40816
+ :additional_model_data_sources,
39339
40817
  :additional_s3_data_source,
39340
40818
  :model_data_etag,
39341
40819
  :is_checkpoint,
@@ -41180,8 +42658,19 @@ module Aws::SageMaker
41180
42658
  # @!attribute [rw] disable_glue_table_creation
41181
42659
  # Set to `True` to disable the automatic creation of an Amazon Web
41182
42660
  # Services Glue table when configuring an `OfflineStore`. If set to
41183
- # `False`, Feature Store will name the `OfflineStore` Glue table
41184
- # following [Athena's naming recommendations][1].
42661
+ # `True` and `DataCatalogConfig` is provided, Feature Store associates
42662
+ # the provided catalog configuration with the feature group without
42663
+ # creating a table. In this case, you are responsible for creating and
42664
+ # managing the Glue table. If set to `True` without
42665
+ # `DataCatalogConfig`, no Glue table is created or associated with the
42666
+ # feature group. The `Iceberg` table format is only supported when
42667
+ # this is set to `False`.
42668
+ #
42669
+ # If set to `False` and `DataCatalogConfig` is provided, Feature Store
42670
+ # creates the table using the specified names. If set to `False`
42671
+ # without `DataCatalogConfig`, Feature Store auto-generates the table
42672
+ # name following [Athena's naming recommendations][1]. This applies
42673
+ # to both Glue and Apache Iceberg table formats.
41185
42674
  #
41186
42675
  # The default value is `False`.
41187
42676
  #
@@ -41191,8 +42680,11 @@ module Aws::SageMaker
41191
42680
  # @return [Boolean]
41192
42681
  #
41193
42682
  # @!attribute [rw] data_catalog_config
41194
- # The meta data of the Glue table that is autogenerated when an
41195
- # `OfflineStore` is created.
42683
+ # The meta data of the Glue table for the `OfflineStore`. If not
42684
+ # provided, Feature Store auto-generates the table name, database, and
42685
+ # catalog when the `OfflineStore` is created. You can optionally
42686
+ # provide this configuration to specify custom values. This applies to
42687
+ # both Glue and Apache Iceberg table formats.
41196
42688
  # @return [Types::DataCatalogConfig]
41197
42689
  #
41198
42690
  # @!attribute [rw] table_format
@@ -48955,6 +50447,54 @@ module Aws::SageMaker
48955
50447
  include Aws::Structure
48956
50448
  end
48957
50449
 
50450
+ # @!attribute [rw] ai_benchmark_job_name
50451
+ # The name of the AI benchmark job to stop.
50452
+ # @return [String]
50453
+ #
50454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopAIBenchmarkJobRequest AWS API Documentation
50455
+ #
50456
+ class StopAIBenchmarkJobRequest < Struct.new(
50457
+ :ai_benchmark_job_name)
50458
+ SENSITIVE = []
50459
+ include Aws::Structure
50460
+ end
50461
+
50462
+ # @!attribute [rw] ai_benchmark_job_arn
50463
+ # The Amazon Resource Name (ARN) of the stopped benchmark job.
50464
+ # @return [String]
50465
+ #
50466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopAIBenchmarkJobResponse AWS API Documentation
50467
+ #
50468
+ class StopAIBenchmarkJobResponse < Struct.new(
50469
+ :ai_benchmark_job_arn)
50470
+ SENSITIVE = []
50471
+ include Aws::Structure
50472
+ end
50473
+
50474
+ # @!attribute [rw] ai_recommendation_job_name
50475
+ # The name of the AI recommendation job to stop.
50476
+ # @return [String]
50477
+ #
50478
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopAIRecommendationJobRequest AWS API Documentation
50479
+ #
50480
+ class StopAIRecommendationJobRequest < Struct.new(
50481
+ :ai_recommendation_job_name)
50482
+ SENSITIVE = []
50483
+ include Aws::Structure
50484
+ end
50485
+
50486
+ # @!attribute [rw] ai_recommendation_job_arn
50487
+ # The Amazon Resource Name (ARN) of the stopped recommendation job.
50488
+ # @return [String]
50489
+ #
50490
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/StopAIRecommendationJobResponse AWS API Documentation
50491
+ #
50492
+ class StopAIRecommendationJobResponse < Struct.new(
50493
+ :ai_recommendation_job_arn)
50494
+ SENSITIVE = []
50495
+ include Aws::Structure
50496
+ end
50497
+
48958
50498
  # @!attribute [rw] auto_ml_job_name
48959
50499
  # The name of the object you are requesting.
48960
50500
  # @return [String]
@@ -56252,6 +57792,30 @@ module Aws::SageMaker
56252
57792
  include Aws::Structure
56253
57793
  end
56254
57794
 
57795
+ # The workload specification for benchmark tool configuration. Provide
57796
+ # an inline YAML or JSON string.
57797
+ #
57798
+ # @note WorkloadSpec is a union - when making an API calls you must set exactly one of the members.
57799
+ #
57800
+ # @note WorkloadSpec is a union - when returned from an API call exactly one value will be set and the returned type will be a subclass of WorkloadSpec corresponding to the set member.
57801
+ #
57802
+ # @!attribute [rw] inline
57803
+ # An inline YAML or JSON string that defines benchmark parameters.
57804
+ # @return [String]
57805
+ #
57806
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/WorkloadSpec AWS API Documentation
57807
+ #
57808
+ class WorkloadSpec < Struct.new(
57809
+ :inline,
57810
+ :unknown)
57811
+ SENSITIVE = []
57812
+ include Aws::Structure
57813
+ include Aws::Structure::Union
57814
+
57815
+ class Inline < WorkloadSpec; end
57816
+ class Unknown < WorkloadSpec; end
57817
+ end
57818
+
56255
57819
  # The workspace settings for the SageMaker Canvas application.
56256
57820
  #
56257
57821
  # @!attribute [rw] s3_artifact_path