sagemaker-core 1.0.16__py3-none-any.whl → 1.0.17__py3-none-any.whl

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.

Potentially problematic release.


This version of sagemaker-core might be problematic. Click here for more details.

@@ -967,6 +967,7 @@ class ResourceConfig(Base):
967
967
  volume_kms_key_id: The Amazon Web Services KMS key that SageMaker uses to encrypt data on the storage volume attached to the ML compute instance(s) that run the training job. Certain Nitro-based instances include local storage, dependent on the instance type. Local storage volumes are encrypted using a hardware module on the instance. You can't request a VolumeKmsKeyId when using an instance type with local storage. For a list of instance types that support local instance storage, see Instance Store Volumes. For more information about local instance storage encryption, see SSD Instance Store Volumes. The VolumeKmsKeyId can be in any of the following formats: // KMS Key ID "1234abcd-12ab-34cd-56ef-1234567890ab" // Amazon Resource Name (ARN) of a KMS Key "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab"
968
968
  keep_alive_period_in_seconds: The duration of time in seconds to retain configured resources in a warm pool for subsequent training jobs.
969
969
  instance_groups: The configuration of a heterogeneous cluster in JSON format.
970
+ training_plan_arn: The Amazon Resource Name (ARN); of the training plan to use for this resource configuration.
970
971
  """
971
972
 
972
973
  volume_size_in_gb: int
@@ -975,6 +976,7 @@ class ResourceConfig(Base):
975
976
  volume_kms_key_id: Optional[str] = Unassigned()
976
977
  keep_alive_period_in_seconds: Optional[int] = Unassigned()
977
978
  instance_groups: Optional[List[InstanceGroup]] = Unassigned()
979
+ training_plan_arn: Optional[str] = Unassigned()
978
980
 
979
981
 
980
982
  class StoppingCondition(Base):
@@ -3140,6 +3142,9 @@ class ClusterInstanceGroupDetails(Base):
3140
3142
  threads_per_core: The number you specified to TreadsPerCore in CreateCluster for enabling or disabling multithreading. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading. For more information, see the reference table of CPU cores and threads per CPU core per instance type in the Amazon Elastic Compute Cloud User Guide.
3141
3143
  instance_storage_configs: The additional storage configurations for the instances in the SageMaker HyperPod cluster instance group.
3142
3144
  on_start_deep_health_checks: A flag indicating whether deep health checks should be performed when the cluster instance group is created or updated.
3145
+ status: The current status of the cluster instance group. InService: The instance group is active and healthy. Creating: The instance group is being provisioned. Updating: The instance group is being updated. Failed: The instance group has failed to provision or is no longer healthy. Degraded: The instance group is degraded, meaning that some instances have failed to provision or are no longer healthy. Deleting: The instance group is being deleted.
3146
+ training_plan_arn: The Amazon Resource Name (ARN); of the training plan associated with this cluster instance group. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
3147
+ training_plan_status: The current status of the training plan associated with this cluster instance group.
3143
3148
  override_vpc_config
3144
3149
  """
3145
3150
 
@@ -3152,6 +3157,9 @@ class ClusterInstanceGroupDetails(Base):
3152
3157
  threads_per_core: Optional[int] = Unassigned()
3153
3158
  instance_storage_configs: Optional[List[ClusterInstanceStorageConfig]] = Unassigned()
3154
3159
  on_start_deep_health_checks: Optional[List[str]] = Unassigned()
3160
+ status: Optional[str] = Unassigned()
3161
+ training_plan_arn: Optional[str] = Unassigned()
3162
+ training_plan_status: Optional[str] = Unassigned()
3155
3163
  override_vpc_config: Optional[VpcConfig] = Unassigned()
3156
3164
 
3157
3165
 
@@ -3170,6 +3178,7 @@ class ClusterInstanceGroupSpecification(Base):
3170
3178
  threads_per_core: Specifies the value for Threads per core. For instance types that support multithreading, you can specify 1 for disabling multithreading and 2 for enabling multithreading. For instance types that doesn't support multithreading, specify 1. For more information, see the reference table of CPU cores and threads per CPU core per instance type in the Amazon Elastic Compute Cloud User Guide.
3171
3179
  instance_storage_configs: Specifies the additional storage configurations for the instances in the SageMaker HyperPod cluster instance group.
3172
3180
  on_start_deep_health_checks: A flag indicating whether deep health checks should be performed when the cluster instance group is created or updated.
3181
+ training_plan_arn: The Amazon Resource Name (ARN); of the training plan to use for this cluster instance group. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
3173
3182
  override_vpc_config
3174
3183
  """
3175
3184
 
@@ -3181,6 +3190,7 @@ class ClusterInstanceGroupSpecification(Base):
3181
3190
  threads_per_core: Optional[int] = Unassigned()
3182
3191
  instance_storage_configs: Optional[List[ClusterInstanceStorageConfig]] = Unassigned()
3183
3192
  on_start_deep_health_checks: Optional[List[str]] = Unassigned()
3193
+ training_plan_arn: Optional[str] = Unassigned()
3184
3194
  override_vpc_config: Optional[VpcConfig] = Unassigned()
3185
3195
 
3186
3196
 
@@ -3296,6 +3306,33 @@ class ClusterOrchestrator(Base):
3296
3306
  eks: ClusterOrchestratorEksConfig
3297
3307
 
3298
3308
 
3309
+ class ClusterSchedulerConfigSummary(Base):
3310
+ """
3311
+ ClusterSchedulerConfigSummary
3312
+ Summary of the cluster policy.
3313
+
3314
+ Attributes
3315
+ ----------------------
3316
+ cluster_scheduler_config_arn: ARN of the cluster policy.
3317
+ cluster_scheduler_config_id: ID of the cluster policy.
3318
+ cluster_scheduler_config_version: Version of the cluster policy.
3319
+ name: Name of the cluster policy.
3320
+ creation_time: Creation time of the cluster policy.
3321
+ last_modified_time: Last modified time of the cluster policy.
3322
+ status: Status of the cluster policy.
3323
+ cluster_arn: ARN of the cluster.
3324
+ """
3325
+
3326
+ cluster_scheduler_config_arn: str
3327
+ cluster_scheduler_config_id: str
3328
+ name: str
3329
+ creation_time: datetime.datetime
3330
+ status: str
3331
+ cluster_scheduler_config_version: Optional[int] = Unassigned()
3332
+ last_modified_time: Optional[datetime.datetime] = Unassigned()
3333
+ cluster_arn: Optional[str] = Unassigned()
3334
+
3335
+
3299
3336
  class ClusterSummary(Base):
3300
3337
  """
3301
3338
  ClusterSummary
@@ -3307,12 +3344,14 @@ class ClusterSummary(Base):
3307
3344
  cluster_name: The name of the SageMaker HyperPod cluster.
3308
3345
  creation_time: The time when the SageMaker HyperPod cluster is created.
3309
3346
  cluster_status: The status of the SageMaker HyperPod cluster.
3347
+ training_plan_arns: A list of Amazon Resource Names (ARNs) of the training plans associated with this cluster. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
3310
3348
  """
3311
3349
 
3312
3350
  cluster_arn: str
3313
3351
  cluster_name: Union[str, object]
3314
3352
  creation_time: datetime.datetime
3315
3353
  cluster_status: str
3354
+ training_plan_arns: Optional[List[str]] = Unassigned()
3316
3355
 
3317
3356
 
3318
3357
  class CustomImage(Base):
@@ -3510,6 +3549,101 @@ class CompilationJobSummary(Base):
3510
3549
  last_modified_time: Optional[datetime.datetime] = Unassigned()
3511
3550
 
3512
3551
 
3552
+ class ComputeQuotaResourceConfig(Base):
3553
+ """
3554
+ ComputeQuotaResourceConfig
3555
+ Configuration of the resources used for the compute allocation definition.
3556
+
3557
+ Attributes
3558
+ ----------------------
3559
+ instance_type: The instance type of the instance group for the cluster.
3560
+ count: The number of instances to add to the instance group of a SageMaker HyperPod cluster.
3561
+ """
3562
+
3563
+ instance_type: str
3564
+ count: int
3565
+
3566
+
3567
+ class ResourceSharingConfig(Base):
3568
+ """
3569
+ ResourceSharingConfig
3570
+ Resource sharing configuration.
3571
+
3572
+ Attributes
3573
+ ----------------------
3574
+ strategy: The strategy of how idle compute is shared within the cluster. The following are the options of strategies. DontLend: entities do not lend idle compute. Lend: entities can lend idle compute to entities that can borrow. LendandBorrow: entities can lend idle compute and borrow idle compute from other entities. Default is LendandBorrow.
3575
+ borrow_limit: The limit on how much idle compute can be borrowed.The values can be 1 - 500 percent of idle compute that the team is allowed to borrow. Default is 50.
3576
+ """
3577
+
3578
+ strategy: str
3579
+ borrow_limit: Optional[int] = Unassigned()
3580
+
3581
+
3582
+ class ComputeQuotaConfig(Base):
3583
+ """
3584
+ ComputeQuotaConfig
3585
+ Configuration of the compute allocation definition for an entity. This includes the resource sharing option and the setting to preempt low priority tasks.
3586
+
3587
+ Attributes
3588
+ ----------------------
3589
+ compute_quota_resources: Allocate compute resources by instance types.
3590
+ resource_sharing_config: Resource sharing configuration. This defines how an entity can lend and borrow idle compute with other entities within the cluster.
3591
+ preempt_team_tasks: Allows workloads from within an entity to preempt same-team workloads. When set to LowerPriority, the entity's lower priority tasks are preempted by their own higher priority tasks. Default is LowerPriority.
3592
+ """
3593
+
3594
+ compute_quota_resources: Optional[List[ComputeQuotaResourceConfig]] = Unassigned()
3595
+ resource_sharing_config: Optional[ResourceSharingConfig] = Unassigned()
3596
+ preempt_team_tasks: Optional[str] = Unassigned()
3597
+
3598
+
3599
+ class ComputeQuotaTarget(Base):
3600
+ """
3601
+ ComputeQuotaTarget
3602
+ The target entity to allocate compute resources to.
3603
+
3604
+ Attributes
3605
+ ----------------------
3606
+ team_name: Name of the team to allocate compute resources to.
3607
+ fair_share_weight: Assigned entity fair-share weight. Idle compute will be shared across entities based on these assigned weights. This weight is only used when FairShare is enabled. A weight of 0 is the lowest priority and 100 is the highest. Weight 0 is the default.
3608
+ """
3609
+
3610
+ team_name: str
3611
+ fair_share_weight: Optional[int] = Unassigned()
3612
+
3613
+
3614
+ class ComputeQuotaSummary(Base):
3615
+ """
3616
+ ComputeQuotaSummary
3617
+ Summary of the compute allocation definition.
3618
+
3619
+ Attributes
3620
+ ----------------------
3621
+ compute_quota_arn: ARN of the compute allocation definition.
3622
+ compute_quota_id: ID of the compute allocation definition.
3623
+ name: Name of the compute allocation definition.
3624
+ compute_quota_version: Version of the compute allocation definition.
3625
+ status: Status of the compute allocation definition.
3626
+ cluster_arn: ARN of the cluster.
3627
+ compute_quota_config: Configuration of the compute allocation definition. This includes the resource sharing option, and the setting to preempt low priority tasks.
3628
+ compute_quota_target: The target entity to allocate compute resources to.
3629
+ activation_state: The state of the compute allocation being described. Use to enable or disable compute allocation. Default is Enabled.
3630
+ creation_time: Creation time of the compute allocation definition.
3631
+ last_modified_time: Last modified time of the compute allocation definition.
3632
+ """
3633
+
3634
+ compute_quota_arn: str
3635
+ compute_quota_id: str
3636
+ name: str
3637
+ status: str
3638
+ compute_quota_target: ComputeQuotaTarget
3639
+ creation_time: datetime.datetime
3640
+ compute_quota_version: Optional[int] = Unassigned()
3641
+ cluster_arn: Optional[str] = Unassigned()
3642
+ compute_quota_config: Optional[ComputeQuotaConfig] = Unassigned()
3643
+ activation_state: Optional[str] = Unassigned()
3644
+ last_modified_time: Optional[datetime.datetime] = Unassigned()
3645
+
3646
+
3513
3647
  class ConditionStepMetadata(Base):
3514
3648
  """
3515
3649
  ConditionStepMetadata
@@ -3840,6 +3974,36 @@ class ModelDeployConfig(Base):
3840
3974
  endpoint_name: Optional[Union[str, object]] = Unassigned()
3841
3975
 
3842
3976
 
3977
+ class PriorityClass(Base):
3978
+ """
3979
+ PriorityClass
3980
+ Priority class configuration. When included in PriorityClasses, these class configurations define how tasks are queued.
3981
+
3982
+ Attributes
3983
+ ----------------------
3984
+ name: Name of the priority class.
3985
+ weight: Weight of the priority class. The value is within a range from 0 to 100, where 0 is the default. A weight of 0 is the lowest priority and 100 is the highest. Weight 0 is the default.
3986
+ """
3987
+
3988
+ name: str
3989
+ weight: int
3990
+
3991
+
3992
+ class SchedulerConfig(Base):
3993
+ """
3994
+ SchedulerConfig
3995
+ Cluster policy configuration. This policy is used for task prioritization and fair-share allocation. This helps prioritize critical workloads and distributes idle compute across entities.
3996
+
3997
+ Attributes
3998
+ ----------------------
3999
+ priority_classes: List of the priority classes, PriorityClass, of the cluster policy. When specified, these class configurations define how tasks are queued.
4000
+ fair_share: When enabled, entities borrow idle compute based on their assigned FairShareWeight. When disabled, entities borrow idle compute based on a first-come first-serve basis. Default is Enabled.
4001
+ """
4002
+
4003
+ priority_classes: Optional[List[PriorityClass]] = Unassigned()
4004
+ fair_share: Optional[str] = Unassigned()
4005
+
4006
+
3843
4007
  class InputConfig(Base):
3844
4008
  """
3845
4009
  InputConfig
@@ -4344,6 +4508,21 @@ class EFSFileSystemConfig(Base):
4344
4508
  file_system_path: Optional[str] = Unassigned()
4345
4509
 
4346
4510
 
4511
+ class FSxLustreFileSystemConfig(Base):
4512
+ """
4513
+ FSxLustreFileSystemConfig
4514
+ The settings for assigning a custom Amazon FSx for Lustre file system to a user profile or space for an Amazon SageMaker Domain.
4515
+
4516
+ Attributes
4517
+ ----------------------
4518
+ file_system_id: The globally unique, 17-digit, ID of the file system, assigned by Amazon FSx for Lustre.
4519
+ file_system_path: The path to the file system directory that is accessible in Amazon SageMaker Studio. Permitted users can access only this directory and below.
4520
+ """
4521
+
4522
+ file_system_id: str
4523
+ file_system_path: Optional[str] = Unassigned()
4524
+
4525
+
4347
4526
  class CustomFileSystemConfig(Base):
4348
4527
  """
4349
4528
  CustomFileSystemConfig
@@ -4352,9 +4531,11 @@ class CustomFileSystemConfig(Base):
4352
4531
  Attributes
4353
4532
  ----------------------
4354
4533
  efs_file_system_config: The settings for a custom Amazon EFS file system.
4534
+ f_sx_lustre_file_system_config: The settings for a custom Amazon FSx for Lustre file system.
4355
4535
  """
4356
4536
 
4357
4537
  efs_file_system_config: Optional[EFSFileSystemConfig] = Unassigned()
4538
+ f_sx_lustre_file_system_config: Optional[FSxLustreFileSystemConfig] = Unassigned()
4358
4539
 
4359
4540
 
4360
4541
  class HiddenSageMakerImage(Base):
@@ -6701,6 +6882,34 @@ class OptimizationVpcConfig(Base):
6701
6882
  subnets: List[str]
6702
6883
 
6703
6884
 
6885
+ class PartnerAppMaintenanceConfig(Base):
6886
+ """
6887
+ PartnerAppMaintenanceConfig
6888
+ Maintenance configuration settings for the SageMaker Partner AI App.
6889
+
6890
+ Attributes
6891
+ ----------------------
6892
+ maintenance_window_start: The day and time of the week in Coordinated Universal Time (UTC) 24-hour standard time that weekly maintenance updates are scheduled. This value must take the following format: 3-letter-day:24-h-hour:minute. For example: TUE:03:30.
6893
+ """
6894
+
6895
+ maintenance_window_start: Optional[str] = Unassigned()
6896
+
6897
+
6898
+ class PartnerAppConfig(Base):
6899
+ """
6900
+ PartnerAppConfig
6901
+ Configuration settings for the SageMaker Partner AI App.
6902
+
6903
+ Attributes
6904
+ ----------------------
6905
+ admin_users: The list of users that are given admin access to the SageMaker Partner AI App.
6906
+ arguments: This is a map of required inputs for a SageMaker Partner AI App. Based on the application type, the map is populated with a key and value pair that is specific to the user and application.
6907
+ """
6908
+
6909
+ admin_users: Optional[List[str]] = Unassigned()
6910
+ arguments: Optional[Dict[str, str]] = Unassigned()
6911
+
6912
+
6704
6913
  class PipelineDefinitionS3Location(Base):
6705
6914
  """
6706
6915
  PipelineDefinitionS3Location
@@ -7082,6 +7291,19 @@ class EFSFileSystem(Base):
7082
7291
  file_system_id: str
7083
7292
 
7084
7293
 
7294
+ class FSxLustreFileSystem(Base):
7295
+ """
7296
+ FSxLustreFileSystem
7297
+ A custom file system in Amazon FSx for Lustre.
7298
+
7299
+ Attributes
7300
+ ----------------------
7301
+ file_system_id: Amazon FSx for Lustre file system ID.
7302
+ """
7303
+
7304
+ file_system_id: str
7305
+
7306
+
7085
7307
  class CustomFileSystem(Base):
7086
7308
  """
7087
7309
  CustomFileSystem
@@ -7090,9 +7312,11 @@ class CustomFileSystem(Base):
7090
7312
  Attributes
7091
7313
  ----------------------
7092
7314
  efs_file_system: A custom file system in Amazon EFS.
7315
+ f_sx_lustre_file_system: A custom file system in Amazon FSx for Lustre.
7093
7316
  """
7094
7317
 
7095
7318
  efs_file_system: Optional[EFSFileSystem] = Unassigned()
7319
+ f_sx_lustre_file_system: Optional[FSxLustreFileSystem] = Unassigned()
7096
7320
 
7097
7321
 
7098
7322
  class SpaceSettings(Base):
@@ -8464,6 +8688,21 @@ class OptimizationOutput(Base):
8464
8688
  recommended_inference_image: Optional[str] = Unassigned()
8465
8689
 
8466
8690
 
8691
+ class ErrorInfo(Base):
8692
+ """
8693
+ ErrorInfo
8694
+ This is an error field object that contains the error code and the reason for an operation failure.
8695
+
8696
+ Attributes
8697
+ ----------------------
8698
+ code: The error code for an invalid or failed operation.
8699
+ reason: The failure reason for the operation.
8700
+ """
8701
+
8702
+ code: Optional[str] = Unassigned()
8703
+ reason: Optional[str] = Unassigned()
8704
+
8705
+
8467
8706
  class DescribePipelineDefinitionForExecutionResponse(Base):
8468
8707
  """
8469
8708
  DescribePipelineDefinitionForExecutionResponse
@@ -8631,6 +8870,35 @@ class ProfilerRuleEvaluationStatus(Base):
8631
8870
  last_modified_time: Optional[datetime.datetime] = Unassigned()
8632
8871
 
8633
8872
 
8873
+ class ReservedCapacitySummary(Base):
8874
+ """
8875
+ ReservedCapacitySummary
8876
+ Details of a reserved capacity for the training plan. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
8877
+
8878
+ Attributes
8879
+ ----------------------
8880
+ reserved_capacity_arn: The Amazon Resource Name (ARN); of the reserved capacity.
8881
+ instance_type: The instance type for the reserved capacity.
8882
+ total_instance_count: The total number of instances in the reserved capacity.
8883
+ status: The current status of the reserved capacity.
8884
+ availability_zone: The availability zone for the reserved capacity.
8885
+ duration_hours: The number of whole hours in the total duration for this reserved capacity.
8886
+ duration_minutes: The additional minutes beyond whole hours in the total duration for this reserved capacity.
8887
+ start_time: The start time of the reserved capacity.
8888
+ end_time: The end time of the reserved capacity.
8889
+ """
8890
+
8891
+ reserved_capacity_arn: str
8892
+ instance_type: str
8893
+ total_instance_count: int
8894
+ status: str
8895
+ availability_zone: Optional[str] = Unassigned()
8896
+ duration_hours: Optional[int] = Unassigned()
8897
+ duration_minutes: Optional[int] = Unassigned()
8898
+ start_time: Optional[datetime.datetime] = Unassigned()
8899
+ end_time: Optional[datetime.datetime] = Unassigned()
8900
+
8901
+
8634
8902
  class TrialComponentSource(Base):
8635
8903
  """
8636
8904
  TrialComponentSource
@@ -10537,6 +10805,27 @@ class OptimizationJobSummary(Base):
10537
10805
  last_modified_time: Optional[datetime.datetime] = Unassigned()
10538
10806
 
10539
10807
 
10808
+ class PartnerAppSummary(Base):
10809
+ """
10810
+ PartnerAppSummary
10811
+ A subset of information related to a SageMaker Partner AI App. This information is used as part of the ListPartnerApps API response.
10812
+
10813
+ Attributes
10814
+ ----------------------
10815
+ arn: The ARN of the SageMaker Partner AI App.
10816
+ name: The name of the SageMaker Partner AI App.
10817
+ type: The type of SageMaker Partner AI App to create. Must be one of the following: lakera-guard, comet, deepchecks-llm-evaluation, or fiddler.
10818
+ status: The status of the SageMaker Partner AI App.
10819
+ creation_time: The creation time of the SageMaker Partner AI App.
10820
+ """
10821
+
10822
+ arn: Optional[str] = Unassigned()
10823
+ name: Optional[str] = Unassigned()
10824
+ type: Optional[str] = Unassigned()
10825
+ status: Optional[str] = Unassigned()
10826
+ creation_time: Optional[datetime.datetime] = Unassigned()
10827
+
10828
+
10540
10829
  class TrainingJobStepMetadata(Base):
10541
10830
  """
10542
10831
  TrainingJobStepMetadata
@@ -10975,6 +11264,7 @@ class TrainingJobSummary(Base):
10975
11264
  training_job_status: The status of the training job.
10976
11265
  secondary_status: The secondary status of the training job.
10977
11266
  warm_pool_status: The status of the warm pool associated with the training job.
11267
+ training_plan_arn: The Amazon Resource Name (ARN); of the training plan associated with this training job. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
10978
11268
  """
10979
11269
 
10980
11270
  training_job_name: Union[str, object]
@@ -10985,6 +11275,63 @@ class TrainingJobSummary(Base):
10985
11275
  last_modified_time: Optional[datetime.datetime] = Unassigned()
10986
11276
  secondary_status: Optional[str] = Unassigned()
10987
11277
  warm_pool_status: Optional[WarmPoolStatus] = Unassigned()
11278
+ training_plan_arn: Optional[str] = Unassigned()
11279
+
11280
+
11281
+ class TrainingPlanFilter(Base):
11282
+ """
11283
+ TrainingPlanFilter
11284
+ A filter to apply when listing or searching for training plans. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
11285
+
11286
+ Attributes
11287
+ ----------------------
11288
+ name: The name of the filter field (e.g., Status, InstanceType).
11289
+ value: The value to filter by for the specified field.
11290
+ """
11291
+
11292
+ name: str
11293
+ value: str
11294
+
11295
+
11296
+ class TrainingPlanSummary(Base):
11297
+ """
11298
+ TrainingPlanSummary
11299
+ Details of the training plan. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
11300
+
11301
+ Attributes
11302
+ ----------------------
11303
+ training_plan_arn: The Amazon Resource Name (ARN); of the training plan.
11304
+ training_plan_name: The name of the training plan.
11305
+ status: The current status of the training plan (e.g., Pending, Active, Expired). To see the complete list of status values available for a training plan, refer to the Status attribute within the TrainingPlanSummary object.
11306
+ status_message: A message providing additional information about the current status of the training plan.
11307
+ duration_hours: The number of whole hours in the total duration for this training plan.
11308
+ duration_minutes: The additional minutes beyond whole hours in the total duration for this training plan.
11309
+ start_time: The start time of the training plan.
11310
+ end_time: The end time of the training plan.
11311
+ upfront_fee: The upfront fee for the training plan.
11312
+ currency_code: The currency code for the upfront fee (e.g., USD).
11313
+ total_instance_count: The total number of instances reserved in this training plan.
11314
+ available_instance_count: The number of instances currently available for use in this training plan.
11315
+ in_use_instance_count: The number of instances currently in use from this training plan.
11316
+ target_resources: The target resources (e.g., training jobs, HyperPod clusters) that can use this training plan. Training plans are specific to their target resource. A training plan designed for SageMaker training jobs can only be used to schedule and run training jobs. A training plan for HyperPod clusters can be used exclusively to provide compute resources to a cluster's instance group.
11317
+ reserved_capacity_summaries: A list of reserved capacities associated with this training plan, including details such as instance types, counts, and availability zones.
11318
+ """
11319
+
11320
+ training_plan_arn: str
11321
+ training_plan_name: Union[str, object]
11322
+ status: str
11323
+ status_message: Optional[str] = Unassigned()
11324
+ duration_hours: Optional[int] = Unassigned()
11325
+ duration_minutes: Optional[int] = Unassigned()
11326
+ start_time: Optional[datetime.datetime] = Unassigned()
11327
+ end_time: Optional[datetime.datetime] = Unassigned()
11328
+ upfront_fee: Optional[str] = Unassigned()
11329
+ currency_code: Optional[str] = Unassigned()
11330
+ total_instance_count: Optional[int] = Unassigned()
11331
+ available_instance_count: Optional[int] = Unassigned()
11332
+ in_use_instance_count: Optional[int] = Unassigned()
11333
+ target_resources: Optional[List[str]] = Unassigned()
11334
+ reserved_capacity_summaries: Optional[List[ReservedCapacitySummary]] = Unassigned()
10988
11335
 
10989
11336
 
10990
11337
  class TransformJobSummary(Base):
@@ -11741,6 +12088,31 @@ class RenderingError(Base):
11741
12088
  message: str
11742
12089
 
11743
12090
 
12091
+ class ReservedCapacityOffering(Base):
12092
+ """
12093
+ ReservedCapacityOffering
12094
+ Details about a reserved capacity offering for a training plan offering. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
12095
+
12096
+ Attributes
12097
+ ----------------------
12098
+ instance_type: The instance type for the reserved capacity offering.
12099
+ instance_count: The number of instances in the reserved capacity offering.
12100
+ availability_zone: The availability zone for the reserved capacity offering.
12101
+ duration_hours: The number of whole hours in the total duration for this reserved capacity offering.
12102
+ duration_minutes: The additional minutes beyond whole hours in the total duration for this reserved capacity offering.
12103
+ start_time: The start time of the reserved capacity offering.
12104
+ end_time: The end time of the reserved capacity offering.
12105
+ """
12106
+
12107
+ instance_type: str
12108
+ instance_count: int
12109
+ availability_zone: Optional[str] = Unassigned()
12110
+ duration_hours: Optional[int] = Unassigned()
12111
+ duration_minutes: Optional[int] = Unassigned()
12112
+ start_time: Optional[datetime.datetime] = Unassigned()
12113
+ end_time: Optional[datetime.datetime] = Unassigned()
12114
+
12115
+
11744
12116
  class ResourceConfigForUpdate(Base):
11745
12117
  """
11746
12118
  ResourceConfigForUpdate
@@ -12070,6 +12442,35 @@ class VisibilityConditions(Base):
12070
12442
  value: Optional[str] = Unassigned()
12071
12443
 
12072
12444
 
12445
+ class TrainingPlanOffering(Base):
12446
+ """
12447
+ TrainingPlanOffering
12448
+ Details about a training plan offering. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan .
12449
+
12450
+ Attributes
12451
+ ----------------------
12452
+ training_plan_offering_id: The unique identifier for this training plan offering.
12453
+ target_resources: The target resources (e.g., SageMaker Training Jobs, SageMaker HyperPod) for this training plan offering. Training plans are specific to their target resource. A training plan designed for SageMaker training jobs can only be used to schedule and run training jobs. A training plan for HyperPod clusters can be used exclusively to provide compute resources to a cluster's instance group.
12454
+ requested_start_time_after: The requested start time that the user specified when searching for the training plan offering.
12455
+ requested_end_time_before: The requested end time that the user specified when searching for the training plan offering.
12456
+ duration_hours: The number of whole hours in the total duration for this training plan offering.
12457
+ duration_minutes: The additional minutes beyond whole hours in the total duration for this training plan offering.
12458
+ upfront_fee: The upfront fee for this training plan offering.
12459
+ currency_code: The currency code for the upfront fee (e.g., USD).
12460
+ reserved_capacity_offerings: A list of reserved capacity offerings associated with this training plan offering.
12461
+ """
12462
+
12463
+ training_plan_offering_id: str
12464
+ target_resources: List[str]
12465
+ requested_start_time_after: Optional[datetime.datetime] = Unassigned()
12466
+ requested_end_time_before: Optional[datetime.datetime] = Unassigned()
12467
+ duration_hours: Optional[int] = Unassigned()
12468
+ duration_minutes: Optional[int] = Unassigned()
12469
+ upfront_fee: Optional[str] = Unassigned()
12470
+ currency_code: Optional[str] = Unassigned()
12471
+ reserved_capacity_offerings: Optional[List[ReservedCapacityOffering]] = Unassigned()
12472
+
12473
+
12073
12474
  class ServiceCatalogProvisioningUpdateDetails(Base):
12074
12475
  """
12075
12476
  ServiceCatalogProvisioningUpdateDetails
@@ -26,7 +26,8 @@ class Method:
26
26
  self.__dict__.update(kwargs)
27
27
 
28
28
  def get_docstring_title(self, operation):
29
- title = remove_html_tags(operation["documentation"])
30
- self.docstring_title = title.split(".")[0] + "."
29
+ documentation = operation.get("documentation")
30
+ title = remove_html_tags(documentation) if documentation else None
31
+ self.docstring_title = title.split(".")[0] + "." if title else None
31
32
 
32
33
  # TODO: add some templates for common methods
@@ -931,7 +931,9 @@ class ResourcesCodeGen:
931
931
  for e in errors:
932
932
  error_shape = e["shape"]
933
933
  error_shape_dict = self.shapes[error_shape]
934
- error_shape_documentation = error_shape_dict.get("documentation").strip()
934
+ error_shape_documentation = error_shape_dict.get("documentation")
935
+ if error_shape_documentation:
936
+ error_shape_documentation.strip()
935
937
  shape_errors_and_docstrings[error_shape] = error_shape_documentation
936
938
  sorted_keys = sorted(shape_errors_and_docstrings.keys())
937
939
  return {key: shape_errors_and_docstrings[key] for key in sorted_keys}
@@ -939,7 +941,10 @@ class ResourcesCodeGen:
939
941
  def _exception_docstring(self, operation: str) -> str:
940
942
  _docstring = RESOURCE_METHOD_EXCEPTION_DOCSTRING
941
943
  for error, documentaion in self._fetch_shape_errors_and_doc_strings(operation).items():
942
- _docstring += f"\n {error}: {remove_html_tags(documentaion).strip()}"
944
+ if documentaion:
945
+ _docstring += f"\n {error}: {remove_html_tags(documentaion).strip()}"
946
+ else:
947
+ _docstring += f"\n {error}"
943
948
  return _docstring
944
949
 
945
950
  def _generate_docstring(
@@ -119,19 +119,24 @@ class ShapesExtractor:
119
119
 
120
120
  def _evaluate_list_type(self, member_shape):
121
121
  list_shape_name = member_shape["member"]["shape"]
122
- list_shape_type = self.combined_shapes[list_shape_name]["type"]
123
- if list_shape_type in ["list", "map"]:
124
- raise Exception(
125
- "Unhandled list shape key type encountered, needs extra logic to handle this"
126
- )
127
- if list_shape_type == "structure":
122
+ list_shape_member = self.combined_shapes[list_shape_name]
123
+ list_shape_type = list_shape_member["type"]
124
+ if list_shape_type == "list":
125
+ member_type = f"List[{self._evaluate_list_type(list_shape_member)}]"
126
+ elif list_shape_type == "map":
127
+ member_type = f"List[{self._evaluate_map_type(list_shape_member)}]"
128
+ elif list_shape_type == "structure":
128
129
  # handling an edge case of nested structure
129
130
  if list_shape_name == "SearchExpression":
130
131
  member_type = f"List['{list_shape_name}']"
131
132
  else:
132
133
  member_type = f"List[{list_shape_name}]"
133
- else:
134
+ elif list_shape_type in BASIC_JSON_TYPES_TO_PYTHON_TYPES.keys():
134
135
  member_type = f"List[{BASIC_JSON_TYPES_TO_PYTHON_TYPES[list_shape_type]}]"
136
+ else:
137
+ raise Exception(
138
+ f"Unhandled list shape key type {list_shape_type} for Shape: {list_shape_name} encountered, needs extra logic to handle this"
139
+ )
135
140
  return member_type
136
141
 
137
142
  def _evaluate_map_type(self, member_shape):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sagemaker-core
3
- Version: 1.0.16
3
+ Version: 1.0.17
4
4
  Summary: An python package for sagemaker core functionalities
5
5
  Author-email: AWS <sagemaker-interests@amazon.com>
6
6
  Project-URL: Repository, https://github.com/aws/sagemaker-core.git
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 3.12
15
15
  Requires-Python: >=3.8
16
16
  Description-Content-Type: text/x-rst
17
17
  License-File: LICENSE
18
- Requires-Dist: boto3<2.0.0,>=1.34.0
18
+ Requires-Dist: boto3<2.0.0,>=1.35.75
19
19
  Requires-Dist: pydantic<3.0.0,>=2.0.0
20
20
  Requires-Dist: PyYAML<7.0,>=6.0
21
21
  Requires-Dist: jsonschema<5.0.0