diff --git a/sample/sagemaker/2017-07-24/service-2.json b/sample/sagemaker/2017-07-24/service-2.json index 7307b931..7310848c 100644 --- a/sample/sagemaker/2017-07-24/service-2.json +++ b/sample/sagemaker/2017-07-24/service-2.json @@ -54,6 +54,19 @@ ], "documentation":"
Associates a trial component with a trial. A trial component can be associated with multiple trials. To disassociate a trial component from a trial, call the DisassociateTrialComponent API.
" }, + "BatchDeleteClusterNodes":{ + "name":"BatchDeleteClusterNodes", + "http":{ + "method":"POST", + "requestUri":"/" + }, + "input":{"shape":"BatchDeleteClusterNodesRequest"}, + "output":{"shape":"BatchDeleteClusterNodesResponse"}, + "errors":[ + {"shape":"ResourceNotFound"} + ], + "documentation":"Deletes specific nodes within a SageMaker HyperPod cluster. BatchDeleteClusterNodes accepts a cluster name and a list of node IDs.
To safeguard your work, back up your data to Amazon S3 or an FSx for Lustre file system before invoking the API on a worker node group. This will help prevent any potential data loss from the instance root volume. For more information about backup, see Use the backup script provided by SageMaker HyperPod.
If you want to invoke this API on an existing cluster, you'll first need to patch the cluster by running the UpdateClusterSoftware API. For more information about patching a cluster, see Update the SageMaker HyperPod platform software of a cluster.
Updates the platform software of a SageMaker HyperPod cluster for security patching. To learn how to use this API, see Update the SageMaker HyperPod platform software of a cluster.
" + "documentation":"Updates the platform software of a SageMaker HyperPod cluster for security patching. To learn how to use this API, see Update the SageMaker HyperPod platform software of a cluster.
The UpgradeClusterSoftware API call may impact your SageMaker HyperPod cluster uptime and availability. Plan accordingly to mitigate potential disruptions to your workloads.
Configuration to control how SageMaker captures inference data for batch transform jobs.
" }, + "BatchDeleteClusterNodesError":{ + "type":"structure", + "required":[ + "Code", + "Message", + "NodeId" + ], + "members":{ + "Code":{ + "shape":"BatchDeleteClusterNodesErrorCode", + "documentation":"The error code associated with the error encountered when deleting a node.
The code provides information about the specific issue encountered, such as the node not being found, the node's status being invalid for deletion, or the node ID being in use by another process.
" + }, + "Message":{ + "shape":"String", + "documentation":"A message describing the error encountered when deleting a node.
" + }, + "NodeId":{ + "shape":"ClusterNodeId", + "documentation":"The ID of the node that encountered an error during the deletion process.
" + } + }, + "documentation":"Represents an error encountered when deleting a node from a SageMaker HyperPod cluster.
" + }, + "BatchDeleteClusterNodesErrorCode":{ + "type":"string", + "enum":[ + "NodeIdNotFound", + "InvalidNodeStatus", + "NodeIdInUse" + ] + }, + "BatchDeleteClusterNodesErrorList":{ + "type":"list", + "member":{"shape":"BatchDeleteClusterNodesError"}, + "max":99, + "min":1 + }, + "BatchDeleteClusterNodesRequest":{ + "type":"structure", + "required":[ + "ClusterName", + "NodeIds" + ], + "members":{ + "ClusterName":{ + "shape":"ClusterNameOrArn", + "documentation":"The name of the SageMaker HyperPod cluster from which to delete the specified nodes.
" + }, + "NodeIds":{ + "shape":"ClusterNodeIds", + "documentation":"A list of node IDs to be deleted from the specified cluster.
For SageMaker HyperPod clusters using the Slurm workload manager, you cannot remove instances that are configured as Slurm controller nodes.
A list of errors encountered when deleting the specified nodes.
" + }, + "Successful":{ + "shape":"ClusterNodeIds", + "documentation":"A list of node IDs that were successfully deleted from the specified cluster.
" + } + } + }, "BatchDescribeModelPackageError":{ "type":"structure", "required":[ @@ -7439,7 +7519,26 @@ "ml.t3.medium", "ml.t3.large", "ml.t3.xlarge", - "ml.t3.2xlarge" + "ml.t3.2xlarge", + "ml.g6.xlarge", + "ml.g6.2xlarge", + "ml.g6.4xlarge", + "ml.g6.8xlarge", + "ml.g6.16xlarge", + "ml.g6.12xlarge", + "ml.g6.24xlarge", + "ml.g6.48xlarge", + "ml.gr6.4xlarge", + "ml.gr6.8xlarge", + "ml.g6e.xlarge", + "ml.g6e.2xlarge", + "ml.g6e.4xlarge", + "ml.g6e.8xlarge", + "ml.g6e.16xlarge", + "ml.g6e.12xlarge", + "ml.g6e.24xlarge", + "ml.g6e.48xlarge", + "ml.p5e.48xlarge" ] }, "ClusterLifeCycleConfig":{ @@ -7533,6 +7632,12 @@ "min":1, "pattern":"^i-[a-f0-9]{8}(?:[a-f0-9]{9})?$" }, + "ClusterNodeIds":{ + "type":"list", + "member":{"shape":"ClusterNodeId"}, + "max":99, + "min":1 + }, "ClusterNodeRecovery":{ "type":"string", "enum":[ @@ -36525,6 +36630,22 @@ "ml.g5.12xlarge", "ml.g5.24xlarge", "ml.g5.48xlarge", + "ml.g6.xlarge", + "ml.g6.2xlarge", + "ml.g6.4xlarge", + "ml.g6.8xlarge", + "ml.g6.16xlarge", + "ml.g6.12xlarge", + "ml.g6.24xlarge", + "ml.g6.48xlarge", + "ml.g6e.xlarge", + "ml.g6e.2xlarge", + "ml.g6e.4xlarge", + "ml.g6e.8xlarge", + "ml.g6e.16xlarge", + "ml.g6e.12xlarge", + "ml.g6e.24xlarge", + "ml.g6e.48xlarge", "ml.trn1.2xlarge", "ml.trn1.32xlarge", "ml.trn1n.32xlarge", @@ -36862,6 +36983,10 @@ "shape":"TrainingJobStatus", "documentation":"The status of the training job.
" }, + "SecondaryStatus":{ + "shape":"SecondaryStatus", + "documentation":"The secondary status of the training job.
" + }, "WarmPoolStatus":{ "shape":"WarmPoolStatus", "documentation":"The status of the warm pool associated with the training job.
" diff --git a/src/sagemaker_core/main/code_injection/shape_dag.py b/src/sagemaker_core/main/code_injection/shape_dag.py index a69a2fb0..bb4350e0 100644 --- a/src/sagemaker_core/main/code_injection/shape_dag.py +++ b/src/sagemaker_core/main/code_injection/shape_dag.py @@ -749,6 +749,33 @@ ], "type": "structure", }, + "BatchDeleteClusterNodesError": { + "members": [ + {"name": "Code", "shape": "BatchDeleteClusterNodesErrorCode", "type": "string"}, + {"name": "Message", "shape": "String", "type": "string"}, + {"name": "NodeId", "shape": "ClusterNodeId", "type": "string"}, + ], + "type": "structure", + }, + "BatchDeleteClusterNodesErrorList": { + "member_shape": "BatchDeleteClusterNodesError", + "member_type": "structure", + "type": "list", + }, + "BatchDeleteClusterNodesRequest": { + "members": [ + {"name": "ClusterName", "shape": "ClusterNameOrArn", "type": "string"}, + {"name": "NodeIds", "shape": "ClusterNodeIds", "type": "list"}, + ], + "type": "structure", + }, + "BatchDeleteClusterNodesResponse": { + "members": [ + {"name": "Failed", "shape": "BatchDeleteClusterNodesErrorList", "type": "list"}, + {"name": "Successful", "shape": "ClusterNodeIds", "type": "list"}, + ], + "type": "structure", + }, "BatchDescribeModelPackageError": { "members": [ {"name": "ErrorCode", "shape": "String", "type": "string"}, @@ -1322,6 +1349,7 @@ ], "type": "structure", }, + "ClusterNodeIds": {"member_shape": "ClusterNodeId", "member_type": "string", "type": "list"}, "ClusterNodeSummaries": { "member_shape": "ClusterNodeSummary", "member_type": "structure", @@ -13566,6 +13594,7 @@ {"name": "TrainingEndTime", "shape": "Timestamp", "type": "timestamp"}, {"name": "LastModifiedTime", "shape": "Timestamp", "type": "timestamp"}, {"name": "TrainingJobStatus", "shape": "TrainingJobStatus", "type": "string"}, + {"name": "SecondaryStatus", "shape": "SecondaryStatus", "type": "string"}, {"name": "WarmPoolStatus", "shape": "WarmPoolStatus", "type": "structure"}, ], "type": "structure", diff --git a/src/sagemaker_core/main/shapes.py b/src/sagemaker_core/main/shapes.py index 12d666e6..d598b489 100644 --- a/src/sagemaker_core/main/shapes.py +++ b/src/sagemaker_core/main/shapes.py @@ -2360,6 +2360,23 @@ class BatchDataCaptureConfig(Base): generate_inference_id: Optional[bool] = Unassigned() +class BatchDeleteClusterNodesError(Base): + """ + BatchDeleteClusterNodesError + Represents an error encountered when deleting a node from a SageMaker HyperPod cluster. + + Attributes + ---------------------- + code: The error code associated with the error encountered when deleting a node. The code provides information about the specific issue encountered, such as the node not being found, the node's status being invalid for deletion, or the node ID being in use by another process. + message: A message describing the error encountered when deleting a node. + node_id: The ID of the node that encountered an error during the deletion process. + """ + + code: str + message: str + node_id: str + + class BatchDescribeModelPackageError(Base): """ BatchDescribeModelPackageError @@ -10913,6 +10930,7 @@ class TrainingJobSummary(Base): training_end_time: A timestamp that shows when the training job ended. This field is set only if the training job has one of the terminal statuses (Completed, Failed, or Stopped). last_modified_time: Timestamp when the training job was last modified. training_job_status: The status of the training job. + secondary_status: The secondary status of the training job. warm_pool_status: The status of the warm pool associated with the training job. """ @@ -10922,6 +10940,7 @@ class TrainingJobSummary(Base): training_job_status: str training_end_time: Optional[datetime.datetime] = Unassigned() last_modified_time: Optional[datetime.datetime] = Unassigned() + secondary_status: Optional[str] = Unassigned() warm_pool_status: Optional[WarmPoolStatus] = Unassigned() diff --git a/src/sagemaker_core/tools/api_coverage.json b/src/sagemaker_core/tools/api_coverage.json index 962a4ef2..beddc599 100644 --- a/src/sagemaker_core/tools/api_coverage.json +++ b/src/sagemaker_core/tools/api_coverage.json @@ -1 +1 @@ -{"SupportedAPIs": 339, "UnsupportedAPIs": 5} \ No newline at end of file +{"SupportedAPIs": 339, "UnsupportedAPIs": 6} \ No newline at end of file