2026/03/11 - Amazon SageMaker Service - 2 new 1 updated api methods
Changes SageMaker training plans allow you to extend your existing training plans to avoid workload interruptions without workload reconfiguration. When a training plan is approaching expiration, you can extend it directly through the SageMaker AI console or programmatically using the API or AWS CLI.
Retrieves the extension history for a specified training plan. The response includes details about each extension, such as the offering ID, start and end dates, status, payment status, and cost information.
See also: AWS API Documentation
Request Syntax
client.describe_training_plan_extension_history(
TrainingPlanArn='string',
NextToken='string',
MaxResults=123
)
string
[REQUIRED]
The Amazon Resource Name (ARN); of the training plan to retrieve extension history for.
string
A token to continue pagination if more results are available.
integer
The maximum number of extensions to return in the response.
dict
Response Syntax
{
'TrainingPlanExtensions': [
{
'TrainingPlanExtensionOfferingId': 'string',
'ExtendedAt': datetime(2015, 1, 1),
'StartDate': datetime(2015, 1, 1),
'EndDate': datetime(2015, 1, 1),
'Status': 'string',
'PaymentStatus': 'string',
'AvailabilityZone': 'string',
'AvailabilityZoneId': 'string',
'DurationHours': 123,
'UpfrontFee': 'string',
'CurrencyCode': 'string'
},
],
'NextToken': 'string'
}
Response Structure
(dict) --
TrainingPlanExtensions (list) --
A list of extensions for the specified training plan.
(dict) --
Details about an extension to a training plan, including the offering ID, dates, status, and cost information.
TrainingPlanExtensionOfferingId (string) --
The unique identifier of the extension offering that was used to create this extension.
ExtendedAt (datetime) --
The timestamp when the extension was created.
StartDate (datetime) --
The start date of the extension period.
EndDate (datetime) --
The end date of the extension period.
Status (string) --
The current status of the extension (e.g., Pending, Active, Scheduled, Failed, Expired).
PaymentStatus (string) --
The payment processing status of the extension.
AvailabilityZone (string) --
The Availability Zone of the extension.
AvailabilityZoneId (string) --
The Availability Zone ID of the extension.
DurationHours (integer) --
The duration of the extension in hours.
UpfrontFee (string) --
The upfront fee for the extension.
CurrencyCode (string) --
The currency code for the upfront fee (e.g., USD).
NextToken (string) --
A token to continue pagination if more results are available.
Extends an existing training plan by purchasing an extension offering. This allows you to add additional compute capacity time to your training plan without creating a new plan or reconfiguring your workloads.
To find available extension offerings, use the SearchTrainingPlanOfferings API with the TrainingPlanArn parameter.
To view the history of extensions for a training plan, use the DescribeTrainingPlanExtensionHistory API.
See also: AWS API Documentation
Request Syntax
client.extend_training_plan(
TrainingPlanExtensionOfferingId='string'
)
string
[REQUIRED]
The unique identifier of the extension offering to purchase. You can retrieve this ID from the TrainingPlanExtensionOfferings in the response of the SearchTrainingPlanOfferings API.
dict
Response Syntax
{
'TrainingPlanExtensions': [
{
'TrainingPlanExtensionOfferingId': 'string',
'ExtendedAt': datetime(2015, 1, 1),
'StartDate': datetime(2015, 1, 1),
'EndDate': datetime(2015, 1, 1),
'Status': 'string',
'PaymentStatus': 'string',
'AvailabilityZone': 'string',
'AvailabilityZoneId': 'string',
'DurationHours': 123,
'UpfrontFee': 'string',
'CurrencyCode': 'string'
},
]
}
Response Structure
(dict) --
TrainingPlanExtensions (list) --
The list of extensions for the training plan, including the newly created extension.
(dict) --
Details about an extension to a training plan, including the offering ID, dates, status, and cost information.
TrainingPlanExtensionOfferingId (string) --
The unique identifier of the extension offering that was used to create this extension.
ExtendedAt (datetime) --
The timestamp when the extension was created.
StartDate (datetime) --
The start date of the extension period.
EndDate (datetime) --
The end date of the extension period.
Status (string) --
The current status of the extension (e.g., Pending, Active, Scheduled, Failed, Expired).
PaymentStatus (string) --
The payment processing status of the extension.
AvailabilityZone (string) --
The Availability Zone of the extension.
AvailabilityZoneId (string) --
The Availability Zone ID of the extension.
DurationHours (integer) --
The duration of the extension in hours.
UpfrontFee (string) --
The upfront fee for the extension.
CurrencyCode (string) --
The currency code for the upfront fee (e.g., USD).
{'TrainingPlanArn': 'string'}
Response {'TrainingPlanExtensionOfferings': [{'AvailabilityZone': 'string',
'CurrencyCode': 'string',
'DurationHours': 'integer',
'EndDate': 'timestamp',
'StartDate': 'timestamp',
'TrainingPlanExtensionOfferingId': 'string',
'UpfrontFee': 'string'}],
'TrainingPlanOfferings': {'ReservedCapacityOfferings': {'ExtensionEndTime': 'timestamp',
'ExtensionStartTime': 'timestamp'}}}
Searches for available training plan offerings based on specified criteria.
Users search for available plan offerings based on their requirements (e.g., instance type, count, start time, duration).
And then, they create a plan that best matches their needs using the ID of the plan offering they want to use.
For more information about how to reserve GPU capacity for your SageMaker training jobs or SageMaker HyperPod clusters using Amazon SageMaker Training Plan , see ``CreateTrainingPlan ``.
See also: AWS API Documentation
Request Syntax
client.search_training_plan_offerings(
InstanceType='ml.p4d.24xlarge'|'ml.p5.48xlarge'|'ml.p5e.48xlarge'|'ml.p5en.48xlarge'|'ml.trn1.32xlarge'|'ml.trn2.48xlarge'|'ml.p6-b200.48xlarge'|'ml.p4de.24xlarge'|'ml.p6e-gb200.36xlarge'|'ml.p5.4xlarge'|'ml.p6-b300.48xlarge',
InstanceCount=123,
UltraServerType='string',
UltraServerCount=123,
StartTimeAfter=datetime(2015, 1, 1),
EndTimeBefore=datetime(2015, 1, 1),
DurationHours=123,
TargetResources=[
'training-job'|'hyperpod-cluster'|'endpoint',
],
TrainingPlanArn='string'
)
string
The type of instance you want to search for in the available training plan offerings. This field allows you to filter the search results based on the specific compute resources you require for your SageMaker training jobs or SageMaker HyperPod clusters. When searching for training plan offerings, specifying the instance type helps you find Reserved Instances that match your computational needs.
integer
The number of instances you want to reserve in the training plan offerings. This allows you to specify the quantity of compute resources needed for your SageMaker training jobs or SageMaker HyperPod clusters, helping you find reserved capacity offerings that match your requirements.
string
The type of UltraServer to search for, such as ml.u-p6e-gb200x72.
integer
The number of UltraServers to search for.
datetime
A filter to search for training plan offerings with a start time after a specified date.
datetime
A filter to search for reserved capacity offerings with an end time before a specified date.
integer
The desired duration in hours for the training plan offerings.
list
The target resources (e.g., SageMaker Training Jobs, SageMaker HyperPod, SageMaker Endpoints) to search for in the offerings.
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.
A training plan for SageMaker endpoints can be used exclusively to provide compute resources to SageMaker endpoints for model deployment.
(string) --
string
The Amazon Resource Name (ARN); of an existing training plan to search for extension offerings. When specified, the API returns extension offerings that can be used to extend the specified training plan.
dict
Response Syntax
{
'TrainingPlanOfferings': [
{
'TrainingPlanOfferingId': 'string',
'TargetResources': [
'training-job'|'hyperpod-cluster'|'endpoint',
],
'RequestedStartTimeAfter': datetime(2015, 1, 1),
'RequestedEndTimeBefore': datetime(2015, 1, 1),
'DurationHours': 123,
'DurationMinutes': 123,
'UpfrontFee': 'string',
'CurrencyCode': 'string',
'ReservedCapacityOfferings': [
{
'ReservedCapacityType': 'UltraServer'|'Instance',
'UltraServerType': 'string',
'UltraServerCount': 123,
'InstanceType': 'ml.p4d.24xlarge'|'ml.p5.48xlarge'|'ml.p5e.48xlarge'|'ml.p5en.48xlarge'|'ml.trn1.32xlarge'|'ml.trn2.48xlarge'|'ml.p6-b200.48xlarge'|'ml.p4de.24xlarge'|'ml.p6e-gb200.36xlarge'|'ml.p5.4xlarge'|'ml.p6-b300.48xlarge',
'InstanceCount': 123,
'AvailabilityZone': 'string',
'DurationHours': 123,
'DurationMinutes': 123,
'StartTime': datetime(2015, 1, 1),
'EndTime': datetime(2015, 1, 1),
'ExtensionStartTime': datetime(2015, 1, 1),
'ExtensionEndTime': datetime(2015, 1, 1)
},
]
},
],
'TrainingPlanExtensionOfferings': [
{
'TrainingPlanExtensionOfferingId': 'string',
'AvailabilityZone': 'string',
'StartDate': datetime(2015, 1, 1),
'EndDate': datetime(2015, 1, 1),
'DurationHours': 123,
'UpfrontFee': 'string',
'CurrencyCode': 'string'
},
]
}
Response Structure
(dict) --
TrainingPlanOfferings (list) --
A list of training plan offerings that match the search criteria.
(dict) --
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 ``.
TrainingPlanOfferingId (string) --
The unique identifier for this training plan offering.
TargetResources (list) --
The target resources (e.g., SageMaker Training Jobs, SageMaker HyperPod, SageMaker Endpoints) 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.
A training plan for SageMaker endpoints can be used exclusively to provide compute resources to SageMaker endpoints for model deployment.
(string) --
RequestedStartTimeAfter (datetime) --
The requested start time that the user specified when searching for the training plan offering.
RequestedEndTimeBefore (datetime) --
The requested end time that the user specified when searching for the training plan offering.
DurationHours (integer) --
The number of whole hours in the total duration for this training plan offering.
DurationMinutes (integer) --
The additional minutes beyond whole hours in the total duration for this training plan offering.
UpfrontFee (string) --
The upfront fee for this training plan offering.
CurrencyCode (string) --
The currency code for the upfront fee (e.g., USD).
ReservedCapacityOfferings (list) --
A list of reserved capacity offerings associated with this training plan offering.
(dict) --
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 ``.
ReservedCapacityType (string) --
The type of reserved capacity offering.
UltraServerType (string) --
The type of UltraServer included in this reserved capacity offering, such as ml.u-p6e-gb200x72.
UltraServerCount (integer) --
The number of UltraServers included in this reserved capacity offering.
InstanceType (string) --
The instance type for the reserved capacity offering.
InstanceCount (integer) --
The number of instances in the reserved capacity offering.
AvailabilityZone (string) --
The availability zone for the reserved capacity offering.
DurationHours (integer) --
The number of whole hours in the total duration for this reserved capacity offering.
DurationMinutes (integer) --
The additional minutes beyond whole hours in the total duration for this reserved capacity offering.
StartTime (datetime) --
The start time of the reserved capacity offering.
EndTime (datetime) --
The end time of the reserved capacity offering.
ExtensionStartTime (datetime) --
The start time of the extension for the reserved capacity offering.
ExtensionEndTime (datetime) --
The end time of the extension for the reserved capacity offering.
TrainingPlanExtensionOfferings (list) --
A list of extension offerings available for the specified training plan. These offerings can be used with the ExtendTrainingPlan API to extend an existing training plan.
(dict) --
Details about an available extension offering for a training plan. Use the offering ID with the ExtendTrainingPlan API to extend a training plan.
TrainingPlanExtensionOfferingId (string) --
The unique identifier for this extension offering.
AvailabilityZone (string) --
The Availability Zone for this extension offering.
StartDate (datetime) --
The start date of this extension offering.
EndDate (datetime) --
The end date of this extension offering.
DurationHours (integer) --
The duration of this extension offering in hours.
UpfrontFee (string) --
The upfront fee for this extension offering.
CurrencyCode (string) --
The currency code for the upfront fee (e.g., USD).