Skip to content

Commit d0189e3

Browse files
This release adds a new Neuron driver option in InferenceAmiVersion parameter for ProductionVariant. Additionally, it adds support for fetching model lifecycle status in the ListModelPackages API. Users can now use this API to view the lifecycle stage of models that have been shared with them.
1 parent 84be17d commit d0189e3

File tree

8 files changed

+70
-8
lines changed

8 files changed

+70
-8
lines changed

generator/ServiceModels/sagemaker/sagemaker-2017-07-24.api.json

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18596,7 +18596,8 @@
1859618596
"ModelPackageDescription":{"shape":"EntityDescription"},
1859718597
"CreationTime":{"shape":"CreationTime"},
1859818598
"ModelPackageStatus":{"shape":"ModelPackageStatus"},
18599-
"ModelApprovalStatus":{"shape":"ModelApprovalStatus"}
18599+
"ModelApprovalStatus":{"shape":"ModelApprovalStatus"},
18600+
"ModelLifeCycle":{"shape":"ModelLifeCycle"}
1860018601
}
1860118602
},
1860218603
"ModelPackageSummaryList":{
@@ -20803,7 +20804,8 @@
2080320804
"enum":[
2080420805
"al2-ami-sagemaker-inference-gpu-2",
2080520806
"al2-ami-sagemaker-inference-gpu-2-1",
20806-
"al2-ami-sagemaker-inference-gpu-3-1"
20807+
"al2-ami-sagemaker-inference-gpu-3-1",
20808+
"al2-ami-sagemaker-inference-neuron-2"
2080720809
]
2080820810
},
2080920811
"ProductionVariantInstanceType":{

generator/ServiceModels/sagemaker/sagemaker-2017-07-24.docs.json

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10095,7 +10095,7 @@
1009510095
"MaxPendingTimeInSeconds": {
1009610096
"base": "Maximum job scheduler pending time in seconds.",
1009710097
"refs": {
10098-
"StoppingCondition$MaxPendingTimeInSeconds": "<p>The maximum length of time, in seconds, that a training or compilation job can be pending before it is stopped.</p>"
10098+
"StoppingCondition$MaxPendingTimeInSeconds": "<p>The maximum length of time, in seconds, that a training or compilation job can be pending before it is stopped.</p> <note> <p>When working with training jobs that use capacity from <a href=\"https://docs.aws.amazon.com/sagemaker/latest/dg/reserve-capacity-with-training-plans.html\">training plans</a>, not all <code>Pending</code> job states count against the <code>MaxPendingTimeInSeconds</code> limit. The following scenarios do not increment the <code>MaxPendingTimeInSeconds</code> counter:</p> <ul> <li> <p>The plan is in a <code>Scheduled</code> state: Jobs queued (in <code>Pending</code> status) before a plan's start date (waiting for scheduled start time)</p> </li> <li> <p>Between capacity reservations: Jobs temporarily back to <code>Pending</code> status between two capacity reservation periods</p> </li> </ul> <p> <code>MaxPendingTimeInSeconds</code> only increments when jobs are actively waiting for capacity in an <code>Active</code> plan.</p> </note>"
1009910099
}
1010010100
},
1010110101
"MaxPercentageOfInputDatasetLabeled": {
@@ -10781,6 +10781,7 @@
1078110781
"CreateModelPackageInput$ModelLifeCycle": "<p> A structure describing the current state of the model in its life cycle. </p>",
1078210782
"DescribeModelPackageOutput$ModelLifeCycle": "<p> A structure describing the current state of the model in its life cycle. </p>",
1078310783
"ModelPackage$ModelLifeCycle": "<p> A structure describing the current state of the model in its life cycle. </p>",
10784+
"ModelPackageSummary$ModelLifeCycle": null,
1078410785
"UpdateModelPackageInput$ModelLifeCycle": "<p> A structure describing the current state of the model in its life cycle. </p>"
1078510786
}
1078610787
},
@@ -13286,7 +13287,7 @@
1328613287
"ProductionVariantInferenceAmiVersion": {
1328713288
"base": null,
1328813289
"refs": {
13289-
"ProductionVariant$InferenceAmiVersion": "<p>Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.</p> <p>By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.</p> <p>The AMI version names, and their configurations, are the following:</p> <dl> <dt>al2-ami-sagemaker-inference-gpu-2</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 535</p> </li> <li> <p>CUDA version: 12.2</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-gpu-2-1</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 535</p> </li> <li> <p>CUDA version: 12.2</p> </li> <li> <p>NVIDIA Container Toolkit with disabled CUDA-compat mounting</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-gpu-3-1</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 550</p> </li> <li> <p>CUDA version: 12.4</p> </li> <li> <p>NVIDIA Container Toolkit with disabled CUDA-compat mounting</p> </li> </ul> </dd> </dl>"
13290+
"ProductionVariant$InferenceAmiVersion": "<p>Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.</p> <p>By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.</p> <p>The AMI version names, and their configurations, are the following:</p> <dl> <dt>al2-ami-sagemaker-inference-gpu-2</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 535</p> </li> <li> <p>CUDA version: 12.2</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-gpu-2-1</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 535</p> </li> <li> <p>CUDA version: 12.2</p> </li> <li> <p>NVIDIA Container Toolkit with disabled CUDA-compat mounting</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-gpu-3-1</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 550</p> </li> <li> <p>CUDA version: 12.4</p> </li> <li> <p>NVIDIA Container Toolkit with disabled CUDA-compat mounting</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-neuron-2</dt> <dd> <ul> <li> <p>Accelerator: Inferentia2 and Trainium</p> </li> <li> <p>Neuron driver version: 2.19</p> </li> </ul> </dd> </dl>"
1329013291
}
1329113292
},
1329213293
"ProductionVariantInstanceType": {

generator/ServiceModels/sagemaker/sagemaker-2017-07-24.normal.json

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30368,7 +30368,8 @@
3036830368
"ModelApprovalStatus":{
3036930369
"shape":"ModelApprovalStatus",
3037030370
"documentation":"<p>The approval status of the model. This can be one of the following values.</p> <ul> <li> <p> <code>APPROVED</code> - The model is approved</p> </li> <li> <p> <code>REJECTED</code> - The model is rejected.</p> </li> <li> <p> <code>PENDING_MANUAL_APPROVAL</code> - The model is waiting for manual approval.</p> </li> </ul>"
30371-
}
30371+
},
30372+
"ModelLifeCycle":{"shape":"ModelLifeCycle"}
3037230373
},
3037330374
"documentation":"<p>Provides summary information about a model package.</p>"
3037430375
},
@@ -33816,7 +33817,7 @@
3381633817
},
3381733818
"InferenceAmiVersion":{
3381833819
"shape":"ProductionVariantInferenceAmiVersion",
33819-
"documentation":"<p>Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.</p> <p>By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.</p> <p>The AMI version names, and their configurations, are the following:</p> <dl> <dt>al2-ami-sagemaker-inference-gpu-2</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 535</p> </li> <li> <p>CUDA version: 12.2</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-gpu-2-1</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 535</p> </li> <li> <p>CUDA version: 12.2</p> </li> <li> <p>NVIDIA Container Toolkit with disabled CUDA-compat mounting</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-gpu-3-1</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 550</p> </li> <li> <p>CUDA version: 12.4</p> </li> <li> <p>NVIDIA Container Toolkit with disabled CUDA-compat mounting</p> </li> </ul> </dd> </dl>"
33820+
"documentation":"<p>Specifies an option from a collection of preconfigured Amazon Machine Image (AMI) images. Each image is configured by Amazon Web Services with a set of software and driver versions. Amazon Web Services optimizes these configurations for different machine learning workloads.</p> <p>By selecting an AMI version, you can ensure that your inference environment is compatible with specific software requirements, such as CUDA driver versions, Linux kernel versions, or Amazon Web Services Neuron driver versions.</p> <p>The AMI version names, and their configurations, are the following:</p> <dl> <dt>al2-ami-sagemaker-inference-gpu-2</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 535</p> </li> <li> <p>CUDA version: 12.2</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-gpu-2-1</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 535</p> </li> <li> <p>CUDA version: 12.2</p> </li> <li> <p>NVIDIA Container Toolkit with disabled CUDA-compat mounting</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-gpu-3-1</dt> <dd> <ul> <li> <p>Accelerator: GPU</p> </li> <li> <p>NVIDIA driver version: 550</p> </li> <li> <p>CUDA version: 12.4</p> </li> <li> <p>NVIDIA Container Toolkit with disabled CUDA-compat mounting</p> </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-neuron-2</dt> <dd> <ul> <li> <p>Accelerator: Inferentia2 and Trainium</p> </li> <li> <p>Neuron driver version: 2.19</p> </li> </ul> </dd> </dl>"
3382033821
}
3382133822
},
3382233823
"documentation":"<p> Identifies a model that you want to host and the resources chosen to deploy for hosting it. If you are deploying multiple models, tell SageMaker how to distribute traffic among the models by specifying variant weights. For more information on production variants, check <a href=\"https://docs.aws.amazon.com/sagemaker/latest/dg/model-ab-testing.html\"> Production variants</a>. </p>"
@@ -33857,7 +33858,8 @@
3385733858
"enum":[
3385833859
"al2-ami-sagemaker-inference-gpu-2",
3385933860
"al2-ami-sagemaker-inference-gpu-2-1",
33860-
"al2-ami-sagemaker-inference-gpu-3-1"
33861+
"al2-ami-sagemaker-inference-gpu-3-1",
33862+
"al2-ami-sagemaker-inference-neuron-2"
3386133863
]
3386233864
},
3386333865
"ProductionVariantInstanceType":{
@@ -37744,7 +37746,7 @@
3774437746
},
3774537747
"MaxPendingTimeInSeconds":{
3774637748
"shape":"MaxPendingTimeInSeconds",
37747-
"documentation":"<p>The maximum length of time, in seconds, that a training or compilation job can be pending before it is stopped.</p>"
37749+
"documentation":"<p>The maximum length of time, in seconds, that a training or compilation job can be pending before it is stopped.</p> <note> <p>When working with training jobs that use capacity from <a href=\"https://docs.aws.amazon.com/sagemaker/latest/dg/reserve-capacity-with-training-plans.html\">training plans</a>, not all <code>Pending</code> job states count against the <code>MaxPendingTimeInSeconds</code> limit. The following scenarios do not increment the <code>MaxPendingTimeInSeconds</code> counter:</p> <ul> <li> <p>The plan is in a <code>Scheduled</code> state: Jobs queued (in <code>Pending</code> status) before a plan's start date (waiting for scheduled start time)</p> </li> <li> <p>Between capacity reservations: Jobs temporarily back to <code>Pending</code> status between two capacity reservation periods</p> </li> </ul> <p> <code>MaxPendingTimeInSeconds</code> only increments when jobs are actively waiting for capacity in an <code>Active</code> plan.</p> </note>"
3774837750
}
3774937751
},
3775037752
"documentation":"<p>Specifies a limit to how long a job can run. When the job reaches the time limit, SageMaker ends the job. Use this API to cap costs.</p> <p>To stop a training job, SageMaker sends the algorithm the <code>SIGTERM</code> signal, which delays job termination for 120 seconds. Algorithms can use this 120-second window to save the model artifacts, so the results of training are not lost. </p> <p>The training algorithms provided by SageMaker automatically save the intermediate results of a model training job when possible. This attempt to save artifacts is only a best effort case as model might not be in a state from which it can be saved. For example, if training has just started, the model might not be ready to save. When saved, this intermediate data is a valid model artifact. You can use it to create a model with <code>CreateModel</code>.</p> <note> <p>The Neural Topic Model (NTM) currently does not support saving intermediate model artifacts. When training NTMs, make sure that the maximum runtime is sufficient for the training job to complete.</p> </note>"

sdk/src/Services/SageMaker/Generated/Model/Internal/MarshallTransformations/ModelPackageSummaryUnmarshaller.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,12 @@ public ModelPackageSummary Unmarshall(JsonUnmarshallerContext context)
7878
unmarshalledObject.ModelApprovalStatus = unmarshaller.Unmarshall(context);
7979
continue;
8080
}
81+
if (context.TestExpression("ModelLifeCycle", targetDepth))
82+
{
83+
var unmarshaller = ModelLifeCycleUnmarshaller.Instance;
84+
unmarshalledObject.ModelLifeCycle = unmarshaller.Unmarshall(context);
85+
continue;
86+
}
8187
if (context.TestExpression("ModelPackageArn", targetDepth))
8288
{
8389
var unmarshaller = StringUnmarshaller.Instance;

sdk/src/Services/SageMaker/Generated/Model/ModelPackageSummary.cs

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ public partial class ModelPackageSummary
3636
{
3737
private DateTime? _creationTime;
3838
private ModelApprovalStatus _modelApprovalStatus;
39+
private ModelLifeCycle _modelLifeCycle;
3940
private string _modelPackageArn;
4041
private string _modelPackageDescription;
4142
private string _modelPackageGroupName;
@@ -93,6 +94,21 @@ internal bool IsSetModelApprovalStatus()
9394
return this._modelApprovalStatus != null;
9495
}
9596

97+
/// <summary>
98+
/// Gets and sets the property ModelLifeCycle.
99+
/// </summary>
100+
public ModelLifeCycle ModelLifeCycle
101+
{
102+
get { return this._modelLifeCycle; }
103+
set { this._modelLifeCycle = value; }
104+
}
105+
106+
// Check to see if ModelLifeCycle property is set
107+
internal bool IsSetModelLifeCycle()
108+
{
109+
return this._modelLifeCycle != null;
110+
}
111+
96112
/// <summary>
97113
/// Gets and sets the property ModelPackageArn.
98114
/// <para>

sdk/src/Services/SageMaker/Generated/Model/ProductionVariant.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -201,6 +201,14 @@ internal bool IsSetEnableSSMAccess()
201201
/// <para>
202202
/// NVIDIA Container Toolkit with disabled CUDA-compat mounting
203203
/// </para>
204+
/// </li> </ul> </dd> <dt>al2-ami-sagemaker-inference-neuron-2</dt> <dd> <ul> <li>
205+
/// <para>
206+
/// Accelerator: Inferentia2 and Trainium
207+
/// </para>
208+
/// </li> <li>
209+
/// <para>
210+
/// Neuron driver version: 2.19
211+
/// </para>
204212
/// </li> </ul> </dd> </dl>
205213
/// </summary>
206214
public ProductionVariantInferenceAmiVersion InferenceAmiVersion

sdk/src/Services/SageMaker/Generated/Model/StoppingCondition.cs

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,29 @@ public partial class StoppingCondition
6868
/// The maximum length of time, in seconds, that a training or compilation job can be
6969
/// pending before it is stopped.
7070
/// </para>
71+
/// <note>
72+
/// <para>
73+
/// When working with training jobs that use capacity from <a href="https://docs.aws.amazon.com/sagemaker/latest/dg/reserve-capacity-with-training-plans.html">training
74+
/// plans</a>, not all <c>Pending</c> job states count against the <c>MaxPendingTimeInSeconds</c>
75+
/// limit. The following scenarios do not increment the <c>MaxPendingTimeInSeconds</c>
76+
/// counter:
77+
/// </para>
78+
/// <ul> <li>
79+
/// <para>
80+
/// The plan is in a <c>Scheduled</c> state: Jobs queued (in <c>Pending</c> status) before
81+
/// a plan's start date (waiting for scheduled start time)
82+
/// </para>
83+
/// </li> <li>
84+
/// <para>
85+
/// Between capacity reservations: Jobs temporarily back to <c>Pending</c> status between
86+
/// two capacity reservation periods
87+
/// </para>
88+
/// </li> </ul>
89+
/// <para>
90+
/// <c>MaxPendingTimeInSeconds</c> only increments when jobs are actively waiting for
91+
/// capacity in an <c>Active</c> plan.
92+
/// </para>
93+
/// </note>
7194
/// </summary>
7295
[AWSProperty(Min=7200, Max=2419200)]
7396
public int MaxPendingTimeInSeconds

sdk/src/Services/SageMaker/Generated/ServiceEnumerations.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14004,6 +14004,10 @@ public class ProductionVariantInferenceAmiVersion : ConstantClass
1400414004
/// Constant Al2AmiSagemakerInferenceGpu31 for ProductionVariantInferenceAmiVersion
1400514005
/// </summary>
1400614006
public static readonly ProductionVariantInferenceAmiVersion Al2AmiSagemakerInferenceGpu31 = new ProductionVariantInferenceAmiVersion("al2-ami-sagemaker-inference-gpu-3-1");
14007+
/// <summary>
14008+
/// Constant Al2AmiSagemakerInferenceNeuron2 for ProductionVariantInferenceAmiVersion
14009+
/// </summary>
14010+
public static readonly ProductionVariantInferenceAmiVersion Al2AmiSagemakerInferenceNeuron2 = new ProductionVariantInferenceAmiVersion("al2-ami-sagemaker-inference-neuron-2");
1400714011

1400814012
/// <summary>
1400914013
/// This constant constructor does not need to be called if the constant

0 commit comments

Comments
 (0)