aws-sdk-sagemaker 1.339.0 → 1.341.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,33 @@
10
10
  module Aws::SageMaker
11
11
  module Types
12
12
 
13
+ # Configuration for allocating accelerator partitions.
14
+ #
15
+ # @!attribute [rw] type
16
+ # The Multi-Instance GPU (MIG) profile type that defines the partition
17
+ # configuration. The profile specifies the compute and memory
18
+ # allocation for each partition instance. The available profile types
19
+ # depend on the instance type specified in the compute quota
20
+ # configuration.
21
+ # @return [String]
22
+ #
23
+ # @!attribute [rw] count
24
+ # The number of accelerator partitions to allocate with the specified
25
+ # partition type. If you don't specify a value for vCPU and
26
+ # MemoryInGiB, SageMaker AI automatically allocates ratio-based values
27
+ # for those parameters based on the accelerator partition count you
28
+ # provide.
29
+ # @return [Integer]
30
+ #
31
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/AcceleratorPartitionConfig AWS API Documentation
32
+ #
33
+ class AcceleratorPartitionConfig < Struct.new(
34
+ :type,
35
+ :count)
36
+ SENSITIVE = []
37
+ include Aws::Structure
38
+ end
39
+
13
40
  # A structure describing the source of an action.
14
41
  #
15
42
  # @!attribute [rw] source_uri
@@ -3452,6 +3479,348 @@ module Aws::SageMaker
3452
3479
  include Aws::Structure
3453
3480
  end
3454
3481
 
3482
+ # Represents an error encountered when rebooting a node (identified by
3483
+ # its logical node ID) from a SageMaker HyperPod cluster.
3484
+ #
3485
+ # @!attribute [rw] node_logical_id
3486
+ # The logical node ID of the node that encountered an error during the
3487
+ # reboot operation.
3488
+ # @return [String]
3489
+ #
3490
+ # @!attribute [rw] error_code
3491
+ # The error code associated with the error encountered when rebooting
3492
+ # a node by logical node ID.
3493
+ #
3494
+ # Possible values:
3495
+ #
3496
+ # * `InstanceIdNotFound`: The node does not exist in the specified
3497
+ # cluster.
3498
+ #
3499
+ # * `InvalidInstanceStatus`: The node is in a state that does not
3500
+ # allow rebooting. Wait for the node to finish any ongoing changes
3501
+ # before retrying.
3502
+ #
3503
+ # * `InstanceIdInUse`: Another operation is already in progress for
3504
+ # this node. Wait for the operation to complete before retrying.
3505
+ #
3506
+ # * `InternalServerError`: An internal error occurred while processing
3507
+ # this node.
3508
+ # @return [String]
3509
+ #
3510
+ # @!attribute [rw] message
3511
+ # A human-readable message describing the error encountered when
3512
+ # rebooting a node by logical node ID.
3513
+ # @return [String]
3514
+ #
3515
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/BatchRebootClusterNodeLogicalIdsError AWS API Documentation
3516
+ #
3517
+ class BatchRebootClusterNodeLogicalIdsError < Struct.new(
3518
+ :node_logical_id,
3519
+ :error_code,
3520
+ :message)
3521
+ SENSITIVE = []
3522
+ include Aws::Structure
3523
+ end
3524
+
3525
+ # Represents an error encountered when rebooting a node from a SageMaker
3526
+ # HyperPod cluster.
3527
+ #
3528
+ # @!attribute [rw] node_id
3529
+ # The EC2 instance ID of the node that encountered an error during the
3530
+ # reboot operation.
3531
+ # @return [String]
3532
+ #
3533
+ # @!attribute [rw] error_code
3534
+ # The error code associated with the error encountered when rebooting
3535
+ # a node.
3536
+ #
3537
+ # Possible values:
3538
+ #
3539
+ # * `InstanceIdNotFound`: The instance does not exist in the specified
3540
+ # cluster.
3541
+ #
3542
+ # * `InvalidInstanceStatus`: The instance is in a state that does not
3543
+ # allow rebooting. Wait for the instance to finish any ongoing
3544
+ # changes before retrying.
3545
+ #
3546
+ # * `InstanceIdInUse`: Another operation is already in progress for
3547
+ # this node. Wait for the operation to complete before retrying.
3548
+ #
3549
+ # * `InternalServerError`: An internal error occurred while processing
3550
+ # this node.
3551
+ # @return [String]
3552
+ #
3553
+ # @!attribute [rw] message
3554
+ # A human-readable message describing the error encountered when
3555
+ # rebooting a node.
3556
+ # @return [String]
3557
+ #
3558
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/BatchRebootClusterNodesError AWS API Documentation
3559
+ #
3560
+ class BatchRebootClusterNodesError < Struct.new(
3561
+ :node_id,
3562
+ :error_code,
3563
+ :message)
3564
+ SENSITIVE = []
3565
+ include Aws::Structure
3566
+ end
3567
+
3568
+ # @!attribute [rw] cluster_name
3569
+ # The name or Amazon Resource Name (ARN) of the SageMaker HyperPod
3570
+ # cluster containing the nodes to reboot.
3571
+ # @return [String]
3572
+ #
3573
+ # @!attribute [rw] node_ids
3574
+ # A list of EC2 instance IDs to reboot using soft recovery. You can
3575
+ # specify between 1 and 25 instance IDs.
3576
+ #
3577
+ # <note markdown="1"> * Either `NodeIds` or `NodeLogicalIds` must be provided (or both),
3578
+ # but at least one is required.
3579
+ #
3580
+ # * Each instance ID must follow the pattern `i-` followed by 17
3581
+ # hexadecimal characters (for example, `i-0123456789abcdef0`).
3582
+ #
3583
+ # </note>
3584
+ # @return [Array<String>]
3585
+ #
3586
+ # @!attribute [rw] node_logical_ids
3587
+ # A list of logical node IDs to reboot using soft recovery. You can
3588
+ # specify between 1 and 25 logical node IDs.
3589
+ #
3590
+ # The `NodeLogicalId` is a unique identifier that persists throughout
3591
+ # the node's lifecycle and can be used to track nodes that are still
3592
+ # being provisioned and don't yet have an EC2 instance ID assigned.
3593
+ #
3594
+ # * This parameter is only supported for clusters using `Continuous`
3595
+ # as the `NodeProvisioningMode`. For clusters using the default
3596
+ # provisioning mode, use `NodeIds` instead.
3597
+ #
3598
+ # * Either `NodeIds` or `NodeLogicalIds` must be provided (or both),
3599
+ # but at least one is required.
3600
+ # @return [Array<String>]
3601
+ #
3602
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/BatchRebootClusterNodesRequest AWS API Documentation
3603
+ #
3604
+ class BatchRebootClusterNodesRequest < Struct.new(
3605
+ :cluster_name,
3606
+ :node_ids,
3607
+ :node_logical_ids)
3608
+ SENSITIVE = []
3609
+ include Aws::Structure
3610
+ end
3611
+
3612
+ # @!attribute [rw] successful
3613
+ # A list of EC2 instance IDs for which the reboot operation was
3614
+ # successfully initiated.
3615
+ # @return [Array<String>]
3616
+ #
3617
+ # @!attribute [rw] failed
3618
+ # A list of errors encountered for EC2 instance IDs that could not be
3619
+ # rebooted. Each error includes the instance ID, an error code, and a
3620
+ # descriptive message.
3621
+ # @return [Array<Types::BatchRebootClusterNodesError>]
3622
+ #
3623
+ # @!attribute [rw] failed_node_logical_ids
3624
+ # A list of errors encountered for logical node IDs that could not be
3625
+ # rebooted. Each error includes the logical node ID, an error code,
3626
+ # and a descriptive message. This field is only present when
3627
+ # `NodeLogicalIds` were provided in the request.
3628
+ # @return [Array<Types::BatchRebootClusterNodeLogicalIdsError>]
3629
+ #
3630
+ # @!attribute [rw] successful_node_logical_ids
3631
+ # A list of logical node IDs for which the reboot operation was
3632
+ # successfully initiated. This field is only present when
3633
+ # `NodeLogicalIds` were provided in the request.
3634
+ # @return [Array<String>]
3635
+ #
3636
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/BatchRebootClusterNodesResponse AWS API Documentation
3637
+ #
3638
+ class BatchRebootClusterNodesResponse < Struct.new(
3639
+ :successful,
3640
+ :failed,
3641
+ :failed_node_logical_ids,
3642
+ :successful_node_logical_ids)
3643
+ SENSITIVE = []
3644
+ include Aws::Structure
3645
+ end
3646
+
3647
+ # Represents an error encountered when replacing a node (identified by
3648
+ # its logical node ID) in a SageMaker HyperPod cluster.
3649
+ #
3650
+ # @!attribute [rw] node_logical_id
3651
+ # The logical node ID of the node that encountered an error during the
3652
+ # replacement operation.
3653
+ # @return [String]
3654
+ #
3655
+ # @!attribute [rw] error_code
3656
+ # The error code associated with the error encountered when replacing
3657
+ # a node by logical node ID.
3658
+ #
3659
+ # Possible values:
3660
+ #
3661
+ # * `InstanceIdNotFound`: The node does not exist in the specified
3662
+ # cluster.
3663
+ #
3664
+ # * `InvalidInstanceStatus`: The node is in a state that does not
3665
+ # allow replacement. Wait for the node to finish any ongoing changes
3666
+ # before retrying.
3667
+ #
3668
+ # * `InstanceIdInUse`: Another operation is already in progress for
3669
+ # this node. Wait for the operation to complete before retrying.
3670
+ #
3671
+ # * `InternalServerError`: An internal error occurred while processing
3672
+ # this node.
3673
+ # @return [String]
3674
+ #
3675
+ # @!attribute [rw] message
3676
+ # A human-readable message describing the error encountered when
3677
+ # replacing a node by logical node ID.
3678
+ # @return [String]
3679
+ #
3680
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/BatchReplaceClusterNodeLogicalIdsError AWS API Documentation
3681
+ #
3682
+ class BatchReplaceClusterNodeLogicalIdsError < Struct.new(
3683
+ :node_logical_id,
3684
+ :error_code,
3685
+ :message)
3686
+ SENSITIVE = []
3687
+ include Aws::Structure
3688
+ end
3689
+
3690
+ # Represents an error encountered when replacing a node in a SageMaker
3691
+ # HyperPod cluster.
3692
+ #
3693
+ # @!attribute [rw] node_id
3694
+ # The EC2 instance ID of the node that encountered an error during the
3695
+ # replacement operation.
3696
+ # @return [String]
3697
+ #
3698
+ # @!attribute [rw] error_code
3699
+ # The error code associated with the error encountered when replacing
3700
+ # a node.
3701
+ #
3702
+ # Possible values:
3703
+ #
3704
+ # * `InstanceIdNotFound`: The instance does not exist in the specified
3705
+ # cluster.
3706
+ #
3707
+ # * `InvalidInstanceStatus`: The instance is in a state that does not
3708
+ # allow replacement. Wait for the instance to finish any ongoing
3709
+ # changes before retrying.
3710
+ #
3711
+ # * `InstanceIdInUse`: Another operation is already in progress for
3712
+ # this node. Wait for the operation to complete before retrying.
3713
+ #
3714
+ # * `InternalServerError`: An internal error occurred while processing
3715
+ # this node.
3716
+ # @return [String]
3717
+ #
3718
+ # @!attribute [rw] message
3719
+ # A human-readable message describing the error encountered when
3720
+ # replacing a node.
3721
+ # @return [String]
3722
+ #
3723
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/BatchReplaceClusterNodesError AWS API Documentation
3724
+ #
3725
+ class BatchReplaceClusterNodesError < Struct.new(
3726
+ :node_id,
3727
+ :error_code,
3728
+ :message)
3729
+ SENSITIVE = []
3730
+ include Aws::Structure
3731
+ end
3732
+
3733
+ # @!attribute [rw] cluster_name
3734
+ # The name or Amazon Resource Name (ARN) of the SageMaker HyperPod
3735
+ # cluster containing the nodes to replace.
3736
+ # @return [String]
3737
+ #
3738
+ # @!attribute [rw] node_ids
3739
+ # A list of EC2 instance IDs to replace with new hardware. You can
3740
+ # specify between 1 and 25 instance IDs.
3741
+ #
3742
+ # Replace operations destroy all instance volumes (root and
3743
+ # secondary). Ensure you have backed up any important data before
3744
+ # proceeding.
3745
+ #
3746
+ # <note markdown="1"> * Either `NodeIds` or `NodeLogicalIds` must be provided (or both),
3747
+ # but at least one is required.
3748
+ #
3749
+ # * Each instance ID must follow the pattern `i-` followed by 17
3750
+ # hexadecimal characters (for example, `i-0123456789abcdef0`).
3751
+ #
3752
+ # * For SageMaker HyperPod clusters using the Slurm workload manager,
3753
+ # you cannot replace instances that are configured as Slurm
3754
+ # controller nodes.
3755
+ #
3756
+ # </note>
3757
+ # @return [Array<String>]
3758
+ #
3759
+ # @!attribute [rw] node_logical_ids
3760
+ # A list of logical node IDs to replace with new hardware. You can
3761
+ # specify between 1 and 25 logical node IDs.
3762
+ #
3763
+ # The `NodeLogicalId` is a unique identifier that persists throughout
3764
+ # the node's lifecycle and can be used to track nodes that are still
3765
+ # being provisioned and don't yet have an EC2 instance ID assigned.
3766
+ #
3767
+ # * Replace operations destroy all instance volumes (root and
3768
+ # secondary). Ensure you have backed up any important data before
3769
+ # proceeding.
3770
+ #
3771
+ # * This parameter is only supported for clusters using `Continuous`
3772
+ # as the `NodeProvisioningMode`. For clusters using the default
3773
+ # provisioning mode, use `NodeIds` instead.
3774
+ #
3775
+ # * Either `NodeIds` or `NodeLogicalIds` must be provided (or both),
3776
+ # but at least one is required.
3777
+ # @return [Array<String>]
3778
+ #
3779
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/BatchReplaceClusterNodesRequest AWS API Documentation
3780
+ #
3781
+ class BatchReplaceClusterNodesRequest < Struct.new(
3782
+ :cluster_name,
3783
+ :node_ids,
3784
+ :node_logical_ids)
3785
+ SENSITIVE = []
3786
+ include Aws::Structure
3787
+ end
3788
+
3789
+ # @!attribute [rw] successful
3790
+ # A list of EC2 instance IDs for which the replacement operation was
3791
+ # successfully initiated.
3792
+ # @return [Array<String>]
3793
+ #
3794
+ # @!attribute [rw] failed
3795
+ # A list of errors encountered for EC2 instance IDs that could not be
3796
+ # replaced. Each error includes the instance ID, an error code, and a
3797
+ # descriptive message.
3798
+ # @return [Array<Types::BatchReplaceClusterNodesError>]
3799
+ #
3800
+ # @!attribute [rw] failed_node_logical_ids
3801
+ # A list of errors encountered for logical node IDs that could not be
3802
+ # replaced. Each error includes the logical node ID, an error code,
3803
+ # and a descriptive message. This field is only present when
3804
+ # `NodeLogicalIds` were provided in the request.
3805
+ # @return [Array<Types::BatchReplaceClusterNodeLogicalIdsError>]
3806
+ #
3807
+ # @!attribute [rw] successful_node_logical_ids
3808
+ # A list of logical node IDs for which the replacement operation was
3809
+ # successfully initiated. This field is only present when
3810
+ # `NodeLogicalIds` were provided in the request.
3811
+ # @return [Array<String>]
3812
+ #
3813
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/BatchReplaceClusterNodesResponse AWS API Documentation
3814
+ #
3815
+ class BatchReplaceClusterNodesResponse < Struct.new(
3816
+ :successful,
3817
+ :failed,
3818
+ :failed_node_logical_ids,
3819
+ :successful_node_logical_ids)
3820
+ SENSITIVE = []
3821
+ include Aws::Structure
3822
+ end
3823
+
3455
3824
  # Input object for the batch transform job.
3456
3825
  #
3457
3826
  # @!attribute [rw] data_captured_destination_s3_uri
@@ -4776,6 +5145,26 @@ module Aws::SageMaker
4776
5145
  include Aws::Structure
4777
5146
  end
4778
5147
 
5148
+ # Defines the instance capacity requirements for an instance group,
5149
+ # including configurations for both Spot and On-Demand capacity types.
5150
+ #
5151
+ # @!attribute [rw] spot
5152
+ # Configuration options specific to Spot instances.
5153
+ # @return [Types::ClusterSpotOptions]
5154
+ #
5155
+ # @!attribute [rw] on_demand
5156
+ # Configuration options specific to On-Demand instances.
5157
+ # @return [Types::ClusterOnDemandOptions]
5158
+ #
5159
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterCapacityRequirements AWS API Documentation
5160
+ #
5161
+ class ClusterCapacityRequirements < Struct.new(
5162
+ :spot,
5163
+ :on_demand)
5164
+ SENSITIVE = []
5165
+ include Aws::Structure
5166
+ end
5167
+
4779
5168
  # Defines the configuration for attaching an additional Amazon Elastic
4780
5169
  # Block Store (EBS) volume to each instance of the SageMaker HyperPod
4781
5170
  # cluster instance group. To learn more, see [SageMaker HyperPod release
@@ -4960,6 +5349,12 @@ module Aws::SageMaker
4960
5349
  # of a SageMaker HyperPod cluster.
4961
5350
  # @return [Integer]
4962
5351
  #
5352
+ # @!attribute [rw] min_count
5353
+ # The minimum number of instances that must be available in the
5354
+ # instance group of a SageMaker HyperPod cluster before it transitions
5355
+ # to `InService` status.
5356
+ # @return [Integer]
5357
+ #
4963
5358
  # @!attribute [rw] instance_group_name
4964
5359
  # The name of the instance group of a SageMaker HyperPod cluster.
4965
5360
  # @return [String]
@@ -5054,6 +5449,23 @@ module Aws::SageMaker
5054
5449
  # group.
5055
5450
  # @return [String]
5056
5451
  #
5452
+ # @!attribute [rw] active_operations
5453
+ # A map indicating active operations currently in progress for the
5454
+ # instance group of a SageMaker HyperPod cluster. When there is a
5455
+ # scaling operation in progress, this map contains a key `Scaling`
5456
+ # with value 1.
5457
+ # @return [Hash<String,Integer>]
5458
+ #
5459
+ # @!attribute [rw] kubernetes_config
5460
+ # The Kubernetes configuration for the instance group that contains
5461
+ # labels and taints to be applied for the nodes in this instance
5462
+ # group.
5463
+ # @return [Types::ClusterKubernetesConfigDetails]
5464
+ #
5465
+ # @!attribute [rw] capacity_requirements
5466
+ # The instance capacity requirements for the instance group.
5467
+ # @return [Types::ClusterCapacityRequirements]
5468
+ #
5057
5469
  # @!attribute [rw] target_state_count
5058
5470
  # The number of nodes running a specific image ID since the last
5059
5471
  # software update request.
@@ -5072,6 +5484,7 @@ module Aws::SageMaker
5072
5484
  class ClusterInstanceGroupDetails < Struct.new(
5073
5485
  :current_count,
5074
5486
  :target_count,
5487
+ :min_count,
5075
5488
  :instance_group_name,
5076
5489
  :instance_type,
5077
5490
  :life_cycle_config,
@@ -5086,6 +5499,9 @@ module Aws::SageMaker
5086
5499
  :scheduled_update_config,
5087
5500
  :current_image_id,
5088
5501
  :desired_image_id,
5502
+ :active_operations,
5503
+ :kubernetes_config,
5504
+ :capacity_requirements,
5089
5505
  :target_state_count,
5090
5506
  :software_update_status,
5091
5507
  :active_software_update_config)
@@ -5100,6 +5516,16 @@ module Aws::SageMaker
5100
5516
  # SageMaker HyperPod cluster.
5101
5517
  # @return [Integer]
5102
5518
  #
5519
+ # @!attribute [rw] min_instance_count
5520
+ # Defines the minimum number of instances required for an instance
5521
+ # group to become `InService`. If this threshold isn't met within 3
5522
+ # hours, the instance group rolls back to its previous state - zero
5523
+ # instances for new instance groups, or previous settings for existing
5524
+ # instance groups. `MinInstanceCount` only affects the initial
5525
+ # transition to `InService` and does not guarantee maintaining this
5526
+ # minimum afterward.
5527
+ # @return [Integer]
5528
+ #
5103
5529
  # @!attribute [rw] instance_group_name
5104
5530
  # Specifies the name of the instance group.
5105
5531
  # @return [String]
@@ -5227,10 +5653,22 @@ module Aws::SageMaker
5227
5653
  # patched with the specified image.
5228
5654
  # @return [String]
5229
5655
  #
5656
+ # @!attribute [rw] kubernetes_config
5657
+ # Specifies the Kubernetes configuration for the instance group. You
5658
+ # describe what you want the labels and taints to look like, and the
5659
+ # cluster works to reconcile the actual state with the declared state
5660
+ # for nodes in this instance group.
5661
+ # @return [Types::ClusterKubernetesConfig]
5662
+ #
5663
+ # @!attribute [rw] capacity_requirements
5664
+ # Specifies the capacity requirements for the instance group.
5665
+ # @return [Types::ClusterCapacityRequirements]
5666
+ #
5230
5667
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterInstanceGroupSpecification AWS API Documentation
5231
5668
  #
5232
5669
  class ClusterInstanceGroupSpecification < Struct.new(
5233
5670
  :instance_count,
5671
+ :min_instance_count,
5234
5672
  :instance_group_name,
5235
5673
  :instance_type,
5236
5674
  :life_cycle_config,
@@ -5241,7 +5679,9 @@ module Aws::SageMaker
5241
5679
  :training_plan_arn,
5242
5680
  :override_vpc_config,
5243
5681
  :scheduled_update_config,
5244
- :image_id)
5682
+ :image_id,
5683
+ :kubernetes_config,
5684
+ :capacity_requirements)
5245
5685
  SENSITIVE = []
5246
5686
  include Aws::Structure
5247
5687
  end
@@ -5321,6 +5761,113 @@ module Aws::SageMaker
5321
5761
  class Unknown < ClusterInstanceStorageConfig; end
5322
5762
  end
5323
5763
 
5764
+ # Kubernetes configuration that specifies labels and taints to be
5765
+ # applied to cluster nodes in an instance group.
5766
+ #
5767
+ # @!attribute [rw] labels
5768
+ # Key-value pairs of labels to be applied to cluster nodes.
5769
+ # @return [Hash<String,String>]
5770
+ #
5771
+ # @!attribute [rw] taints
5772
+ # List of taints to be applied to cluster nodes.
5773
+ # @return [Array<Types::ClusterKubernetesTaint>]
5774
+ #
5775
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterKubernetesConfig AWS API Documentation
5776
+ #
5777
+ class ClusterKubernetesConfig < Struct.new(
5778
+ :labels,
5779
+ :taints)
5780
+ SENSITIVE = []
5781
+ include Aws::Structure
5782
+ end
5783
+
5784
+ # Detailed Kubernetes configuration showing both the current and desired
5785
+ # state of labels and taints for cluster nodes.
5786
+ #
5787
+ # @!attribute [rw] current_labels
5788
+ # The current labels applied to cluster nodes of an instance group.
5789
+ # @return [Hash<String,String>]
5790
+ #
5791
+ # @!attribute [rw] desired_labels
5792
+ # The desired labels to be applied to cluster nodes of an instance
5793
+ # group.
5794
+ # @return [Hash<String,String>]
5795
+ #
5796
+ # @!attribute [rw] current_taints
5797
+ # The current taints applied to cluster nodes of an instance group.
5798
+ # @return [Array<Types::ClusterKubernetesTaint>]
5799
+ #
5800
+ # @!attribute [rw] desired_taints
5801
+ # The desired taints to be applied to cluster nodes of an instance
5802
+ # group.
5803
+ # @return [Array<Types::ClusterKubernetesTaint>]
5804
+ #
5805
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterKubernetesConfigDetails AWS API Documentation
5806
+ #
5807
+ class ClusterKubernetesConfigDetails < Struct.new(
5808
+ :current_labels,
5809
+ :desired_labels,
5810
+ :current_taints,
5811
+ :desired_taints)
5812
+ SENSITIVE = []
5813
+ include Aws::Structure
5814
+ end
5815
+
5816
+ # Node-specific Kubernetes configuration showing both current and
5817
+ # desired state of labels and taints for an individual cluster node.
5818
+ #
5819
+ # @!attribute [rw] current_labels
5820
+ # The current labels applied to the cluster node.
5821
+ # @return [Hash<String,String>]
5822
+ #
5823
+ # @!attribute [rw] desired_labels
5824
+ # The desired labels to be applied to the cluster node.
5825
+ # @return [Hash<String,String>]
5826
+ #
5827
+ # @!attribute [rw] current_taints
5828
+ # The current taints applied to the cluster node.
5829
+ # @return [Array<Types::ClusterKubernetesTaint>]
5830
+ #
5831
+ # @!attribute [rw] desired_taints
5832
+ # The desired taints to be applied to the cluster node.
5833
+ # @return [Array<Types::ClusterKubernetesTaint>]
5834
+ #
5835
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterKubernetesConfigNodeDetails AWS API Documentation
5836
+ #
5837
+ class ClusterKubernetesConfigNodeDetails < Struct.new(
5838
+ :current_labels,
5839
+ :desired_labels,
5840
+ :current_taints,
5841
+ :desired_taints)
5842
+ SENSITIVE = []
5843
+ include Aws::Structure
5844
+ end
5845
+
5846
+ # A Kubernetes taint that can be applied to cluster nodes.
5847
+ #
5848
+ # @!attribute [rw] key
5849
+ # The key of the taint.
5850
+ # @return [String]
5851
+ #
5852
+ # @!attribute [rw] value
5853
+ # The value of the taint.
5854
+ # @return [String]
5855
+ #
5856
+ # @!attribute [rw] effect
5857
+ # The effect of the taint. Valid values are `NoSchedule`,
5858
+ # `PreferNoSchedule`, and `NoExecute`.
5859
+ # @return [String]
5860
+ #
5861
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterKubernetesTaint AWS API Documentation
5862
+ #
5863
+ class ClusterKubernetesTaint < Struct.new(
5864
+ :key,
5865
+ :value,
5866
+ :effect)
5867
+ SENSITIVE = []
5868
+ include Aws::Structure
5869
+ end
5870
+
5324
5871
  # The lifecycle configuration for a SageMaker HyperPod cluster.
5325
5872
  #
5326
5873
  # @!attribute [rw] source_s3_uri
@@ -5470,6 +6017,19 @@ module Aws::SageMaker
5470
6017
  # Contains information about the UltraServer.
5471
6018
  # @return [Types::UltraServerInfo]
5472
6019
  #
6020
+ # @!attribute [rw] kubernetes_config
6021
+ # The Kubernetes configuration applied to this node, showing both the
6022
+ # current and desired state of labels and taints. The cluster works to
6023
+ # reconcile the actual state with the declared state.
6024
+ # @return [Types::ClusterKubernetesConfigNodeDetails]
6025
+ #
6026
+ # @!attribute [rw] capacity_type
6027
+ # The capacity type of the node. Valid values are `OnDemand` and
6028
+ # `Spot`. When set to `OnDemand`, the node is launched as an On-Demand
6029
+ # instance. When set to `Spot`, the node is launched as a Spot
6030
+ # instance.
6031
+ # @return [String]
6032
+ #
5473
6033
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterNodeDetails AWS API Documentation
5474
6034
  #
5475
6035
  class ClusterNodeDetails < Struct.new(
@@ -5490,7 +6050,9 @@ module Aws::SageMaker
5490
6050
  :placement,
5491
6051
  :current_image_id,
5492
6052
  :desired_image_id,
5493
- :ultra_server_info)
6053
+ :ultra_server_info,
6054
+ :kubernetes_config,
6055
+ :capacity_type)
5494
6056
  SENSITIVE = []
5495
6057
  include Aws::Structure
5496
6058
  end
@@ -5536,6 +6098,10 @@ module Aws::SageMaker
5536
6098
  # Contains information about the UltraServer.
5537
6099
  # @return [Types::UltraServerInfo]
5538
6100
  #
6101
+ # @!attribute [rw] private_dns_hostname
6102
+ # The private DNS hostname of the SageMaker HyperPod cluster node.
6103
+ # @return [String]
6104
+ #
5539
6105
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterNodeSummary AWS API Documentation
5540
6106
  #
5541
6107
  class ClusterNodeSummary < Struct.new(
@@ -5546,11 +6112,20 @@ module Aws::SageMaker
5546
6112
  :launch_time,
5547
6113
  :last_software_update_time,
5548
6114
  :instance_status,
5549
- :ultra_server_info)
6115
+ :ultra_server_info,
6116
+ :private_dns_hostname)
5550
6117
  SENSITIVE = []
5551
6118
  include Aws::Structure
5552
6119
  end
5553
6120
 
6121
+ # Configuration options specific to On-Demand instances.
6122
+ #
6123
+ # @api private
6124
+ #
6125
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterOnDemandOptions AWS API Documentation
6126
+ #
6127
+ class ClusterOnDemandOptions < Aws::EmptyStructure; end
6128
+
5554
6129
  # The type of orchestrator used for the SageMaker HyperPod cluster.
5555
6130
  #
5556
6131
  # @!attribute [rw] eks
@@ -5847,6 +6422,14 @@ module Aws::SageMaker
5847
6422
  include Aws::Structure
5848
6423
  end
5849
6424
 
6425
+ # Configuration options specific to Spot instances.
6426
+ #
6427
+ # @api private
6428
+ #
6429
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ClusterSpotOptions AWS API Documentation
6430
+ #
6431
+ class ClusterSpotOptions < Aws::EmptyStructure; end
6432
+
5850
6433
  # Lists a summary of the properties of a SageMaker HyperPod cluster.
5851
6434
  #
5852
6435
  # @!attribute [rw] cluster_arn
@@ -6294,6 +6877,11 @@ module Aws::SageMaker
6294
6877
  # Accelerators are set to 0.
6295
6878
  # @return [Float]
6296
6879
  #
6880
+ # @!attribute [rw] accelerator_partition
6881
+ # The accelerator partition configuration for fractional GPU
6882
+ # allocation.
6883
+ # @return [Types::AcceleratorPartitionConfig]
6884
+ #
6297
6885
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ComputeQuotaResourceConfig AWS API Documentation
6298
6886
  #
6299
6887
  class ComputeQuotaResourceConfig < Struct.new(
@@ -6301,7 +6889,8 @@ module Aws::SageMaker
6301
6889
  :count,
6302
6890
  :accelerators,
6303
6891
  :v_cpu,
6304
- :memory_in_gi_b)
6892
+ :memory_in_gi_b,
6893
+ :accelerator_partition)
6305
6894
  SENSITIVE = []
6306
6895
  include Aws::Structure
6307
6896
  end
@@ -10809,6 +11398,10 @@ module Aws::SageMaker
10809
11398
  # with the optimization job.
10810
11399
  # @return [String]
10811
11400
  #
11401
+ # @!attribute [rw] max_instance_count
11402
+ # The maximum number of instances to use for the optimization job.
11403
+ # @return [Integer]
11404
+ #
10812
11405
  # @!attribute [rw] optimization_environment
10813
11406
  # The environment variables to set in the model container.
10814
11407
  # @return [Hash<String,String>]
@@ -10868,6 +11461,7 @@ module Aws::SageMaker
10868
11461
  :role_arn,
10869
11462
  :model_source,
10870
11463
  :deployment_instance_type,
11464
+ :max_instance_count,
10871
11465
  :optimization_environment,
10872
11466
  :optimization_configs,
10873
11467
  :output_config,
@@ -19380,6 +19974,10 @@ module Aws::SageMaker
19380
19974
  # with the optimization job.
19381
19975
  # @return [String]
19382
19976
  #
19977
+ # @!attribute [rw] max_instance_count
19978
+ # The maximum number of instances to use for the optimization job.
19979
+ # @return [Integer]
19980
+ #
19383
19981
  # @!attribute [rw] optimization_configs
19384
19982
  # Settings for each of the optimization techniques that the job
19385
19983
  # applies.
@@ -19440,6 +20038,7 @@ module Aws::SageMaker
19440
20038
  :model_source,
19441
20039
  :optimization_environment,
19442
20040
  :deployment_instance_type,
20041
+ :max_instance_count,
19443
20042
  :optimization_configs,
19444
20043
  :output_config,
19445
20044
  :optimization_output,
@@ -20816,7 +21415,7 @@ module Aws::SageMaker
20816
21415
  #
20817
21416
  # @!attribute [rw] target_resources
20818
21417
  # The target resources (e.g., SageMaker Training Jobs, SageMaker
20819
- # HyperPod) that can use this training plan.
21418
+ # HyperPod, SageMaker Endpoints) that can use this training plan.
20820
21419
  #
20821
21420
  # Training plans are specific to their target resource.
20822
21421
  #
@@ -20825,6 +21424,10 @@ module Aws::SageMaker
20825
21424
  #
20826
21425
  # * A training plan for HyperPod clusters can be used exclusively to
20827
21426
  # provide compute resources to a cluster's instance group.
21427
+ #
21428
+ # * A training plan for SageMaker endpoints can be used exclusively to
21429
+ # provide compute resources to SageMaker endpoints for model
21430
+ # deployment.
20828
21431
  # @return [Array<String>]
20829
21432
  #
20830
21433
  # @!attribute [rw] reserved_capacity_summaries
@@ -28655,6 +29258,10 @@ module Aws::SageMaker
28655
29258
  # The desired number of instances for the group after scaling.
28656
29259
  # @return [Integer]
28657
29260
  #
29261
+ # @!attribute [rw] min_count
29262
+ # Minimum instance count of the instance group.
29263
+ # @return [Integer]
29264
+ #
28658
29265
  # @!attribute [rw] failure_message
28659
29266
  # An error message describing why the scaling operation failed, if
28660
29267
  # applicable.
@@ -28665,6 +29272,7 @@ module Aws::SageMaker
28665
29272
  class InstanceGroupScalingMetadata < Struct.new(
28666
29273
  :instance_count,
28667
29274
  :target_count,
29275
+ :min_count,
28668
29276
  :failure_message)
28669
29277
  SENSITIVE = []
28670
29278
  include Aws::Structure
@@ -38046,6 +38654,53 @@ module Aws::SageMaker
38046
38654
  include Aws::Structure
38047
38655
  end
38048
38656
 
38657
+ # Settings for the model speculative decoding technique that's applied
38658
+ # by a model optimization job.
38659
+ #
38660
+ # @!attribute [rw] technique
38661
+ # The speculative decoding technique to apply during model
38662
+ # optimization.
38663
+ # @return [String]
38664
+ #
38665
+ # @!attribute [rw] training_data_source
38666
+ # The location of the training data to use for speculative decoding.
38667
+ # The data must be formatted as ShareGPT, OpenAI Completions or OpenAI
38668
+ # Chat Completions. The input can also be unencrypted captured data
38669
+ # from a SageMaker endpoint as long as the endpoint uses one of the
38670
+ # above formats.
38671
+ # @return [Types::ModelSpeculativeDecodingTrainingDataSource]
38672
+ #
38673
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ModelSpeculativeDecodingConfig AWS API Documentation
38674
+ #
38675
+ class ModelSpeculativeDecodingConfig < Struct.new(
38676
+ :technique,
38677
+ :training_data_source)
38678
+ SENSITIVE = []
38679
+ include Aws::Structure
38680
+ end
38681
+
38682
+ # Contains information about the training data source for speculative
38683
+ # decoding.
38684
+ #
38685
+ # @!attribute [rw] s3_uri
38686
+ # The Amazon S3 URI that points to the training data for speculative
38687
+ # decoding.
38688
+ # @return [String]
38689
+ #
38690
+ # @!attribute [rw] s3_data_type
38691
+ # The type of data stored in the Amazon S3 location. Valid values are
38692
+ # `S3Prefix` or `ManifestFile`.
38693
+ # @return [String]
38694
+ #
38695
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/ModelSpeculativeDecodingTrainingDataSource AWS API Documentation
38696
+ #
38697
+ class ModelSpeculativeDecodingTrainingDataSource < Struct.new(
38698
+ :s3_uri,
38699
+ :s3_data_type)
38700
+ SENSITIVE = []
38701
+ include Aws::Structure
38702
+ end
38703
+
38049
38704
  # Metadata for Model steps.
38050
38705
  #
38051
38706
  # @!attribute [rw] arn
@@ -39658,12 +40313,18 @@ module Aws::SageMaker
39658
40313
  # optimization job.
39659
40314
  # @return [Types::ModelShardingConfig]
39660
40315
  #
40316
+ # @!attribute [rw] model_speculative_decoding_config
40317
+ # Settings for the model speculative decoding technique that's
40318
+ # applied by a model optimization job.
40319
+ # @return [Types::ModelSpeculativeDecodingConfig]
40320
+ #
39661
40321
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/OptimizationConfig AWS API Documentation
39662
40322
  #
39663
40323
  class OptimizationConfig < Struct.new(
39664
40324
  :model_quantization_config,
39665
40325
  :model_compilation_config,
39666
40326
  :model_sharding_config,
40327
+ :model_speculative_decoding_config,
39667
40328
  :unknown)
39668
40329
  SENSITIVE = []
39669
40330
  include Aws::Structure
@@ -39672,6 +40333,7 @@ module Aws::SageMaker
39672
40333
  class ModelQuantizationConfig < OptimizationConfig; end
39673
40334
  class ModelCompilationConfig < OptimizationConfig; end
39674
40335
  class ModelShardingConfig < OptimizationConfig; end
40336
+ class ModelSpeculativeDecodingConfig < OptimizationConfig; end
39675
40337
  class Unknown < OptimizationConfig; end
39676
40338
  end
39677
40339
 
@@ -39682,10 +40344,16 @@ module Aws::SageMaker
39682
40344
  # optimization job.
39683
40345
  # @return [Types::OptimizationJobModelSourceS3]
39684
40346
  #
40347
+ # @!attribute [rw] sage_maker_model
40348
+ # The name of an existing SageMaker model to optimize with an
40349
+ # optimization job.
40350
+ # @return [Types::OptimizationSageMakerModel]
40351
+ #
39685
40352
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/OptimizationJobModelSource AWS API Documentation
39686
40353
  #
39687
40354
  class OptimizationJobModelSource < Struct.new(
39688
- :s3)
40355
+ :s3,
40356
+ :sage_maker_model)
39689
40357
  SENSITIVE = []
39690
40358
  include Aws::Structure
39691
40359
  end
@@ -39727,11 +40395,17 @@ module Aws::SageMaker
39727
40395
  # create with an optimization job.
39728
40396
  # @return [String]
39729
40397
  #
40398
+ # @!attribute [rw] sage_maker_model
40399
+ # The name of a SageMaker model to use as the output destination for
40400
+ # an optimization job.
40401
+ # @return [Types::OptimizationSageMakerModel]
40402
+ #
39730
40403
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/OptimizationJobOutputConfig AWS API Documentation
39731
40404
  #
39732
40405
  class OptimizationJobOutputConfig < Struct.new(
39733
40406
  :kms_key_id,
39734
- :s3_output_location)
40407
+ :s3_output_location,
40408
+ :sage_maker_model)
39735
40409
  SENSITIVE = []
39736
40410
  include Aws::Structure
39737
40411
  end
@@ -39772,6 +40446,10 @@ module Aws::SageMaker
39772
40446
  # with the optimization job.
39773
40447
  # @return [String]
39774
40448
  #
40449
+ # @!attribute [rw] max_instance_count
40450
+ # The maximum number of instances to use for the optimization job.
40451
+ # @return [Integer]
40452
+ #
39775
40453
  # @!attribute [rw] optimization_types
39776
40454
  # The optimization techniques that are applied by the optimization
39777
40455
  # job.
@@ -39788,6 +40466,7 @@ module Aws::SageMaker
39788
40466
  :optimization_end_time,
39789
40467
  :last_modified_time,
39790
40468
  :deployment_instance_type,
40469
+ :max_instance_count,
39791
40470
  :optimization_types)
39792
40471
  SENSITIVE = []
39793
40472
  include Aws::Structure
@@ -39829,6 +40508,21 @@ module Aws::SageMaker
39829
40508
  include Aws::Structure
39830
40509
  end
39831
40510
 
40511
+ # A SageMaker model to use as the source or destination for an
40512
+ # optimization job.
40513
+ #
40514
+ # @!attribute [rw] model_name
40515
+ # The name of a SageMaker model.
40516
+ # @return [String]
40517
+ #
40518
+ # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/OptimizationSageMakerModel AWS API Documentation
40519
+ #
40520
+ class OptimizationSageMakerModel < Struct.new(
40521
+ :model_name)
40522
+ SENSITIVE = []
40523
+ include Aws::Structure
40524
+ end
40525
+
39832
40526
  # A VPC in Amazon VPC that's accessible to an optimized that you create
39833
40527
  # with an optimization job. You can control access to and from your
39834
40528
  # resources by configuring a VPC. For more information, see [Give
@@ -45661,7 +46355,7 @@ module Aws::SageMaker
45661
46355
  #
45662
46356
  # @!attribute [rw] target_resources
45663
46357
  # The target resources (e.g., SageMaker Training Jobs, SageMaker
45664
- # HyperPod) to search for in the offerings.
46358
+ # HyperPod, SageMaker Endpoints) to search for in the offerings.
45665
46359
  #
45666
46360
  # Training plans are specific to their target resource.
45667
46361
  #
@@ -45670,6 +46364,10 @@ module Aws::SageMaker
45670
46364
  #
45671
46365
  # * A training plan for HyperPod clusters can be used exclusively to
45672
46366
  # provide compute resources to a cluster's instance group.
46367
+ #
46368
+ # * A training plan for SageMaker endpoints can be used exclusively to
46369
+ # provide compute resources to SageMaker endpoints for model
46370
+ # deployment.
45673
46371
  # @return [Array<String>]
45674
46372
  #
45675
46373
  # @see http://docs.aws.amazon.com/goto/WebAPI/sagemaker-2017-07-24/SearchTrainingPlanOfferingsRequest AWS API Documentation
@@ -48905,7 +49603,7 @@ module Aws::SageMaker
48905
49603
  #
48906
49604
  # @!attribute [rw] target_resources
48907
49605
  # The target resources (e.g., SageMaker Training Jobs, SageMaker
48908
- # HyperPod) for this training plan offering.
49606
+ # HyperPod, SageMaker Endpoints) for this training plan offering.
48909
49607
  #
48910
49608
  # Training plans are specific to their target resource.
48911
49609
  #
@@ -48914,6 +49612,10 @@ module Aws::SageMaker
48914
49612
  #
48915
49613
  # * A training plan for HyperPod clusters can be used exclusively to
48916
49614
  # provide compute resources to a cluster's instance group.
49615
+ #
49616
+ # * A training plan for SageMaker endpoints can be used exclusively to
49617
+ # provide compute resources to SageMaker endpoints for model
49618
+ # deployment.
48917
49619
  # @return [Array<String>]
48918
49620
  #
48919
49621
  # @!attribute [rw] requested_start_time_after
@@ -49035,8 +49737,8 @@ module Aws::SageMaker
49035
49737
  # @return [Integer]
49036
49738
  #
49037
49739
  # @!attribute [rw] target_resources
49038
- # The target resources (e.g., training jobs, HyperPod clusters) that
49039
- # can use this training plan.
49740
+ # The target resources (e.g., training jobs, HyperPod clusters,
49741
+ # Endpoints) that can use this training plan.
49040
49742
  #
49041
49743
  # Training plans are specific to their target resource.
49042
49744
  #
@@ -49045,6 +49747,10 @@ module Aws::SageMaker
49045
49747
  #
49046
49748
  # * A training plan for HyperPod clusters can be used exclusively to
49047
49749
  # provide compute resources to a cluster's instance group.
49750
+ #
49751
+ # * A training plan for SageMaker endpoints can be used exclusively to
49752
+ # provide compute resources to SageMaker endpoints for model
49753
+ # deployment.
49048
49754
  # @return [Array<String>]
49049
49755
  #
49050
49756
  # @!attribute [rw] reserved_capacity_summaries