@@ -231,6 +231,54 @@ def test_register_model_package(
231
231
sagemaker_session .sagemaker_client .delete_model_package (ModelPackageName = model_package_name )
232
232
233
233
234
+ def test_register_model_package_versioned (
235
+ mxnet_training_job ,
236
+ sagemaker_session ,
237
+ mxnet_inference_latest_version ,
238
+ mxnet_inference_latest_py_version ,
239
+ cpu_instance_type ,
240
+ ):
241
+ endpoint_name = "test-mxnet-deploy-model-{}" .format (sagemaker_timestamp ())
242
+
243
+ with timeout_and_delete_endpoint_by_name (endpoint_name , sagemaker_session ):
244
+ desc = sagemaker_session .sagemaker_client .describe_training_job (
245
+ TrainingJobName = mxnet_training_job
246
+ )
247
+ model_package_group_name = "register-model-package-{}" .format (sagemaker_timestamp ())
248
+ sagemaker_session .sagemaker_client .create_model_package_group (
249
+ ModelPackageGroupName = model_package_group_name
250
+ )
251
+ model_data = desc ["ModelArtifacts" ]["S3ModelArtifacts" ]
252
+ script_path = os .path .join (DATA_DIR , "mxnet_mnist" , "mnist.py" )
253
+ model = MXNetModel (
254
+ model_data ,
255
+ "SageMakerRole" ,
256
+ entry_point = script_path ,
257
+ py_version = mxnet_inference_latest_py_version ,
258
+ sagemaker_session = sagemaker_session ,
259
+ framework_version = mxnet_inference_latest_version ,
260
+ )
261
+ model_pkg = model .register (
262
+ content_types = ["application/json" ],
263
+ response_types = ["application/json" ],
264
+ inference_instances = ["ml.m5.large" ],
265
+ transform_instances = ["ml.m5.large" ],
266
+ model_package_group_name = model_package_group_name ,
267
+ approval_status = "Approved" ,
268
+ )
269
+ assert isinstance (model_pkg , ModelPackage )
270
+ predictor = model .deploy (1 , cpu_instance_type , endpoint_name = endpoint_name )
271
+ data = numpy .zeros (shape = (1 , 1 , 28 , 28 ))
272
+ result = predictor .predict (data )
273
+ assert result is not None
274
+ sagemaker_session .sagemaker_client .delete_model_package (
275
+ ModelPackageName = model_pkg .model_package_arn
276
+ )
277
+ sagemaker_session .sagemaker_client .delete_model_package_group (
278
+ ModelPackageGroupName = model_package_group_name
279
+ )
280
+
281
+
234
282
def test_deploy_model_with_tags_and_kms (
235
283
mxnet_training_job ,
236
284
sagemaker_session ,
0 commit comments