From 3f5af351a5fab990aab3ec53edaf40721747c4df Mon Sep 17 00:00:00 2001 From: sagemaker-bot Date: Thu, 20 Nov 2025 10:10:28 +0000 Subject: [PATCH] Daily Sync with Botocore v1.41.0 on 2025/11/20 --- sample/sagemaker/2017-07-24/service-2.json | 41 +++++++++++++++++-- .../main/code_injection/shape_dag.py | 16 +++++++- src/sagemaker_core/main/resources.py | 7 ++++ src/sagemaker_core/main/shapes.py | 21 ++++++++-- 4 files changed, 77 insertions(+), 8 deletions(-) diff --git a/sample/sagemaker/2017-07-24/service-2.json b/sample/sagemaker/2017-07-24/service-2.json index 9297b83..eb3132f 100644 --- a/sample/sagemaker/2017-07-24/service-2.json +++ b/sample/sagemaker/2017-07-24/service-2.json @@ -11199,6 +11199,10 @@ "shape":"Boolean", "documentation":"

Sets whether all model containers deployed to the endpoint are isolated. If they are, no inbound or outbound network calls can be made to or from the model containers.

", "box":true + }, + "MetricsConfig":{ + "shape":"MetricsConfig", + "documentation":"

The configuration parameters for utilization metrics.

" } } }, @@ -16621,6 +16625,10 @@ "shape":"Boolean", "documentation":"

Indicates whether all model containers deployed to the endpoint are isolated. If they are, no inbound or outbound network calls can be made to or from the model containers.

", "box":true + }, + "MetricsConfig":{ + "shape":"MetricsConfig", + "documentation":"

The configuration parameters for utilization metrics.

" } } }, @@ -16696,6 +16704,10 @@ "ShadowProductionVariants":{ "shape":"ProductionVariantSummaryList", "documentation":"

An array of ProductionVariantSummary objects, one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants.

" + }, + "MetricsConfig":{ + "shape":"MetricsConfig", + "documentation":"

The configuration parameters for utilization metrics.

" } } }, @@ -21268,6 +21280,10 @@ }, "EnableCaching":{"type":"boolean"}, "EnableCapture":{"type":"boolean"}, + "EnableEnhancedMetrics":{ + "type":"boolean", + "box":true + }, "EnableInfraCheck":{ "type":"boolean", "box":true @@ -31201,6 +31217,10 @@ "min":1, "pattern":".+" }, + "MetricPublishFrequencyInSeconds":{ + "type":"integer", + "box":true + }, "MetricRegex":{ "type":"string", "max":500, @@ -31231,6 +31251,20 @@ "union":true }, "MetricValue":{"type":"float"}, + "MetricsConfig":{ + "type":"structure", + "members":{ + "EnableEnhancedMetrics":{ + "shape":"EnableEnhancedMetrics", + "documentation":"

Specifies whether to enable enhanced metrics for the endpoint. Enhanced metrics provide utilization data at instance and container granularity. Container granularity is supported for Inference Components. The default is False.

" + }, + "MetricPublishFrequencyInSeconds":{ + "shape":"MetricPublishFrequencyInSeconds", + "documentation":"

The frequency, in seconds, at which utilization metrics are published to Amazon CloudWatch. The default is 60 seconds.

" + } + }, + "documentation":"

The configuration for Utilization metrics.

" + }, "MetricsSource":{ "type":"structure", "required":[ @@ -38553,7 +38587,6 @@ }, "ResourceConfig":{ "type":"structure", - "required":["VolumeSizeInGB"], "members":{ "InstanceType":{ "shape":"TrainingInstanceType", @@ -38565,7 +38598,7 @@ "box":true }, "VolumeSizeInGB":{ - "shape":"VolumeSizeInGB", + "shape":"OptionalVolumeSizeInGB", "documentation":"

The size of the ML storage volume that you want to provision.

ML storage volumes store model artifacts and incremental states. Training algorithms might also use the ML storage volume for scratch space. If you want to store the training data in the ML storage volume, choose File as the TrainingInputMode in the algorithm specification.

When using an ML instance with NVMe SSD volumes, SageMaker doesn't provision Amazon EBS General Purpose SSD (gp2) storage. Available storage is fixed to the NVMe-type instance's storage capacity. SageMaker configures storage paths for training datasets, checkpoints, model artifacts, and outputs to use the entire capacity of the instance storage. For example, ML instance families with the NVMe-type instance storage include ml.p4d, ml.g4dn, and ml.g5.

When using an ML instance with the EBS-only storage option and without instance storage, you must define the size of EBS volume through VolumeSizeInGB in the ResourceConfig API. For example, ML instance families that use EBS volumes include ml.c5 and ml.p2.

To look up instance types and their instance storage types and volumes, see Amazon EC2 Instance Types.

To find the default local paths defined by the SageMaker training platform, see Amazon SageMaker Training Storage Folders for Training Datasets, Checkpoints, Model Artifacts, and Outputs.

", "box":true }, @@ -38837,10 +38870,10 @@ }, "GroupPatterns":{ "shape":"GroupPatternsList", - "documentation":"

A list of AWS IAM Identity Center group patterns that should be assigned to the specified role. Group patterns support wildcard matching using *.

" + "documentation":"

A list of Amazon Web Services IAM Identity Center group patterns that should be assigned to the specified role. Group patterns support wildcard matching using *.

" } }, - "documentation":"

Defines the mapping between an in-app role and the AWS IAM Identity Center group patterns that should be assigned to that role within the SageMaker Partner AI App.

" + "documentation":"

Defines the mapping between an in-app role and the Amazon Web Services IAM Identity Center group patterns that should be assigned to that role within the SageMaker Partner AI App.

" }, "RoleGroupAssignmentsList":{ "type":"list", diff --git a/src/sagemaker_core/main/code_injection/shape_dag.py b/src/sagemaker_core/main/code_injection/shape_dag.py index aaa5e94..c2ed820 100644 --- a/src/sagemaker_core/main/code_injection/shape_dag.py +++ b/src/sagemaker_core/main/code_injection/shape_dag.py @@ -2526,6 +2526,7 @@ {"name": "ExecutionRoleArn", "shape": "RoleArn", "type": "string"}, {"name": "VpcConfig", "shape": "VpcConfig", "type": "structure"}, {"name": "EnableNetworkIsolation", "shape": "Boolean", "type": "boolean"}, + {"name": "MetricsConfig", "shape": "MetricsConfig", "type": "structure"}, ], "type": "structure", }, @@ -5044,6 +5045,7 @@ {"name": "ExecutionRoleArn", "shape": "RoleArn", "type": "string"}, {"name": "VpcConfig", "shape": "VpcConfig", "type": "structure"}, {"name": "EnableNetworkIsolation", "shape": "Boolean", "type": "boolean"}, + {"name": "MetricsConfig", "shape": "MetricsConfig", "type": "structure"}, ], "type": "structure", }, @@ -5075,6 +5077,7 @@ "shape": "ProductionVariantSummaryList", "type": "list", }, + {"name": "MetricsConfig", "shape": "MetricsConfig", "type": "structure"}, ], "type": "structure", }, @@ -11089,6 +11092,17 @@ "type": "structure", }, "MetricValues": {"member_shape": "Double", "member_type": "double", "type": "list"}, + "MetricsConfig": { + "members": [ + {"name": "EnableEnhancedMetrics", "shape": "EnableEnhancedMetrics", "type": "boolean"}, + { + "name": "MetricPublishFrequencyInSeconds", + "shape": "MetricPublishFrequencyInSeconds", + "type": "integer", + }, + ], + "type": "structure", + }, "MetricsSource": { "members": [ {"name": "ContentType", "shape": "ContentType", "type": "string"}, @@ -14013,7 +14027,7 @@ "members": [ {"name": "InstanceType", "shape": "TrainingInstanceType", "type": "string"}, {"name": "InstanceCount", "shape": "TrainingInstanceCount", "type": "integer"}, - {"name": "VolumeSizeInGB", "shape": "VolumeSizeInGB", "type": "integer"}, + {"name": "VolumeSizeInGB", "shape": "OptionalVolumeSizeInGB", "type": "integer"}, {"name": "VolumeKmsKeyId", "shape": "KmsKeyId", "type": "string"}, { "name": "KeepAlivePeriodInSeconds", diff --git a/src/sagemaker_core/main/resources.py b/src/sagemaker_core/main/resources.py index c5699bc..f6610c4 100644 --- a/src/sagemaker_core/main/resources.py +++ b/src/sagemaker_core/main/resources.py @@ -8885,6 +8885,7 @@ class Endpoint(Base): pending_deployment_summary: Returns the summary of an in-progress deployment. This field is only returned when the endpoint is creating or updating with a new endpoint configuration. explainer_config: The configuration parameters for an explainer. shadow_production_variants: An array of ProductionVariantSummary objects, one for each model that you want to host at this endpoint in shadow mode with production traffic replicated from the model specified on ProductionVariants. + metrics_config: The configuration parameters for utilization metrics. """ @@ -8902,6 +8903,7 @@ class Endpoint(Base): pending_deployment_summary: Optional[shapes.PendingDeploymentSummary] = Unassigned() explainer_config: Optional[shapes.ExplainerConfig] = Unassigned() shadow_production_variants: Optional[List[shapes.ProductionVariantSummary]] = Unassigned() + metrics_config: Optional[shapes.MetricsConfig] = Unassigned() def get_name(self) -> str: attributes = vars(self) @@ -9686,6 +9688,7 @@ class EndpointConfig(Base): execution_role_arn: The Amazon Resource Name (ARN) of the IAM role that you assigned to the endpoint configuration. vpc_config: enable_network_isolation: Indicates whether all model containers deployed to the endpoint are isolated. If they are, no inbound or outbound network calls can be made to or from the model containers. + metrics_config: The configuration parameters for utilization metrics. """ @@ -9701,6 +9704,7 @@ class EndpointConfig(Base): execution_role_arn: Optional[str] = Unassigned() vpc_config: Optional[shapes.VpcConfig] = Unassigned() enable_network_isolation: Optional[bool] = Unassigned() + metrics_config: Optional[shapes.MetricsConfig] = Unassigned() def get_name(self) -> str: attributes = vars(self) @@ -9765,6 +9769,7 @@ def create( execution_role_arn: Optional[str] = Unassigned(), vpc_config: Optional[shapes.VpcConfig] = Unassigned(), enable_network_isolation: Optional[bool] = Unassigned(), + metrics_config: Optional[shapes.MetricsConfig] = Unassigned(), session: Optional[Session] = None, region: Optional[str] = None, ) -> Optional["EndpointConfig"]: @@ -9783,6 +9788,7 @@ def create( execution_role_arn: The Amazon Resource Name (ARN) of an IAM role that Amazon SageMaker AI can assume to perform actions on your behalf. For more information, see SageMaker AI Roles. To be able to pass this role to Amazon SageMaker AI, the caller of this action must have the iam:PassRole permission. vpc_config: enable_network_isolation: Sets whether all model containers deployed to the endpoint are isolated. If they are, no inbound or outbound network calls can be made to or from the model containers. + metrics_config: The configuration parameters for utilization metrics. session: Boto3 session. region: Region name. @@ -9822,6 +9828,7 @@ def create( "ExecutionRoleArn": execution_role_arn, "VpcConfig": vpc_config, "EnableNetworkIsolation": enable_network_isolation, + "MetricsConfig": metrics_config, } operation_input_args = Base.populate_chained_attributes( diff --git a/src/sagemaker_core/main/shapes.py b/src/sagemaker_core/main/shapes.py index 940396b..6d91f87 100644 --- a/src/sagemaker_core/main/shapes.py +++ b/src/sagemaker_core/main/shapes.py @@ -1067,9 +1067,9 @@ class ResourceConfig(Base): instance_placement_config: Configuration for how training job instances are placed and allocated within UltraServers. Only applicable for UltraServer capacity. """ - volume_size_in_gb: int instance_type: Optional[str] = Unassigned() instance_count: Optional[int] = Unassigned() + volume_size_in_gb: Optional[int] = Unassigned() volume_kms_key_id: Optional[str] = Unassigned() keep_alive_period_in_seconds: Optional[int] = Unassigned() instance_groups: Optional[List[InstanceGroup]] = Unassigned() @@ -5760,6 +5760,21 @@ class ExplainerConfig(Base): clarify_explainer_config: Optional[ClarifyExplainerConfig] = Unassigned() +class MetricsConfig(Base): + """ + MetricsConfig + The configuration for Utilization metrics. + + Attributes + ---------------------- + enable_enhanced_metrics: Specifies whether to enable enhanced metrics for the endpoint. Enhanced metrics provide utilization data at instance and container granularity. Container granularity is supported for Inference Components. The default is False. + metric_publish_frequency_in_seconds: The frequency, in seconds, at which utilization metrics are published to Amazon CloudWatch. The default is 60 seconds. + """ + + enable_enhanced_metrics: Optional[bool] = Unassigned() + metric_publish_frequency_in_seconds: Optional[int] = Unassigned() + + class RollingUpdatePolicy(Base): """ RollingUpdatePolicy @@ -7786,12 +7801,12 @@ class PartnerAppMaintenanceConfig(Base): class RoleGroupAssignment(Base): """ RoleGroupAssignment - Defines the mapping between an in-app role and the AWS IAM Identity Center group patterns that should be assigned to that role within the SageMaker Partner AI App. + Defines the mapping between an in-app role and the Amazon Web Services IAM Identity Center group patterns that should be assigned to that role within the SageMaker Partner AI App. Attributes ---------------------- role_name: The name of the in-app role within the SageMaker Partner AI App. The specific roles available depend on the app type and version. - group_patterns: A list of AWS IAM Identity Center group patterns that should be assigned to the specified role. Group patterns support wildcard matching using \*. + group_patterns: A list of Amazon Web Services IAM Identity Center group patterns that should be assigned to the specified role. Group patterns support wildcard matching using \*. """ role_name: str