@@ -2778,6 +2778,7 @@ def create_model_package_from_containers(
2778
2778
approval_status = "PendingManualApproval" ,
2779
2779
description = None ,
2780
2780
drift_check_baselines = None ,
2781
+ customer_metadata_properties = None ,
2781
2782
):
2782
2783
"""Get request dictionary for CreateModelPackage API.
2783
2784
@@ -2803,6 +2804,9 @@ def create_model_package_from_containers(
2803
2804
or "PendingManualApproval" (default: "PendingManualApproval").
2804
2805
description (str): Model Package description (default: None).
2805
2806
drift_check_baselines (DriftCheckBaselines): DriftCheckBaselines object (default: None).
2807
+ customer_metadata_properties (dict[str, str]): A dictionary of key-value paired
2808
+ metadata properties (default: None).
2809
+
2806
2810
"""
2807
2811
2808
2812
request = get_create_model_package_request (
@@ -2819,7 +2823,17 @@ def create_model_package_from_containers(
2819
2823
approval_status ,
2820
2824
description ,
2821
2825
drift_check_baselines = drift_check_baselines ,
2826
+ customer_metadata_properties = customer_metadata_properties ,
2822
2827
)
2828
+ if model_package_group_name is not None :
2829
+ try :
2830
+ self .sagemaker_client .describe_model_package_group (
2831
+ ModelPackageGroupName = request ["ModelPackageGroupName" ]
2832
+ )
2833
+ except ClientError :
2834
+ self .sagemaker_client .create_model_package_group (
2835
+ ModelPackageGroupName = request ["ModelPackageGroupName" ]
2836
+ )
2823
2837
return self .sagemaker_client .create_model_package (** request )
2824
2838
2825
2839
def wait_for_model_package (self , model_package_name , poll = 5 ):
@@ -4120,6 +4134,7 @@ def get_model_package_args(
4120
4134
tags = None ,
4121
4135
container_def_list = None ,
4122
4136
drift_check_baselines = None ,
4137
+ customer_metadata_properties = None ,
4123
4138
):
4124
4139
"""Get arguments for create_model_package method.
4125
4140
@@ -4148,6 +4163,8 @@ def get_model_package_args(
4148
4163
(default: None).
4149
4164
container_def_list (list): A list of container defintiions (default: None).
4150
4165
drift_check_baselines (DriftCheckBaselines): DriftCheckBaselines object (default: None).
4166
+ customer_metadata_properties (dict[str, str]): A dictionary of key-value paired
4167
+ metadata properties (default: None).
4151
4168
Returns:
4152
4169
dict: A dictionary of method argument names and values.
4153
4170
"""
@@ -4185,6 +4202,8 @@ def get_model_package_args(
4185
4202
model_package_args ["description" ] = description
4186
4203
if tags is not None :
4187
4204
model_package_args ["tags" ] = tags
4205
+ if customer_metadata_properties is not None :
4206
+ model_package_args ["customer_metadata_properties" ] = customer_metadata_properties
4188
4207
return model_package_args
4189
4208
4190
4209
@@ -4203,6 +4222,7 @@ def get_create_model_package_request(
4203
4222
description = None ,
4204
4223
tags = None ,
4205
4224
drift_check_baselines = None ,
4225
+ customer_metadata_properties = None ,
4206
4226
):
4207
4227
"""Get request dictionary for CreateModelPackage API.
4208
4228
@@ -4229,6 +4249,8 @@ def get_create_model_package_request(
4229
4249
tags (List[dict[str, str]]): A list of dictionaries containing key-value pairs
4230
4250
(default: None).
4231
4251
drift_check_baselines (DriftCheckBaselines): DriftCheckBaselines object (default: None).
4252
+ customer_metadata_properties (dict[str, str]): A dictionary of key-value paired
4253
+ metadata properties (default: None).
4232
4254
"""
4233
4255
4234
4256
if all ([model_package_name , model_package_group_name ]):
@@ -4250,6 +4272,8 @@ def get_create_model_package_request(
4250
4272
request_dict ["DriftCheckBaselines" ] = drift_check_baselines
4251
4273
if metadata_properties :
4252
4274
request_dict ["MetadataProperties" ] = metadata_properties
4275
+ if customer_metadata_properties is not None :
4276
+ request_dict ["CustomerMetadataProperties" ] = customer_metadata_properties
4253
4277
if containers is not None :
4254
4278
if not all ([content_types , response_types , inference_instances , transform_instances ]):
4255
4279
raise ValueError (
0 commit comments