@@ -975,17 +975,20 @@ def prepare(
975975 auth = self .auth ,
976976 local_copy_dir = self .local_copy_dir ,
977977 )
978- self .runtime_info = self .model_artifact .prepare_runtime_yaml (
979- inference_conda_env = self .properties .inference_conda_env ,
980- inference_python_version = self .properties .inference_python_version ,
981- training_conda_env = self .properties .training_conda_env ,
982- training_python_version = self .properties .training_python_version ,
983- force_overwrite = force_overwrite ,
984- namespace = namespace ,
985- bucketname = DEFAULT_CONDA_BUCKET_NAME ,
986- auth = self .auth ,
987- ignore_conda_error = self .ignore_conda_error ,
988- )
978+ try :
979+ self .runtime_info = self .model_artifact .prepare_runtime_yaml (
980+ inference_conda_env = self .properties .inference_conda_env ,
981+ inference_python_version = self .properties .inference_python_version ,
982+ training_conda_env = self .properties .training_conda_env ,
983+ training_python_version = self .properties .training_python_version ,
984+ force_overwrite = force_overwrite ,
985+ namespace = namespace ,
986+ bucketname = DEFAULT_CONDA_BUCKET_NAME ,
987+ auth = self .auth ,
988+ ignore_conda_error = self .ignore_conda_error ,
989+ )
990+ except ValueError as e :
991+ raise e
989992
990993 self ._summary_status .update_status (
991994 detail = "Generated runtime.yaml" , status = ModelState .DONE .value
@@ -1361,13 +1364,15 @@ def from_model_artifact(
13611364 properties .with_dict (local_vars )
13621365 auth = auth or authutil .default_signer ()
13631366 artifact_dir = _prepare_artifact_dir (artifact_dir )
1367+ reload = kwargs .pop ("reload" , False )
13641368 model_artifact = ModelArtifact .from_uri (
13651369 uri = uri ,
13661370 artifact_dir = artifact_dir ,
1367- model_file_name = model_file_name ,
1368- force_overwrite = force_overwrite ,
13691371 auth = auth ,
1372+ force_overwrite = force_overwrite ,
13701373 ignore_conda_error = ignore_conda_error ,
1374+ model_file_name = model_file_name ,
1375+ reload = reload ,
13711376 )
13721377 model = cls (
13731378 estimator = model_artifact .model ,
@@ -1380,22 +1385,33 @@ def from_model_artifact(
13801385 model .local_copy_dir = model_artifact .local_copy_dir
13811386 model .model_artifact = model_artifact
13821387 model .ignore_conda_error = ignore_conda_error
1383- model .reload_runtime_info ()
1388+
1389+ if reload :
1390+ model .reload_runtime_info ()
1391+ model ._summary_status .update_action (
1392+ detail = "Populated metadata(Custom, Taxonomy and Provenance)" ,
1393+ action = "Call .populate_metadata() to populate metadata." ,
1394+ )
1395+
13841396 model ._summary_status .update_status (
13851397 detail = "Generated score.py" ,
1386- status = ModelState .DONE .value ,
1398+ status = ModelState .NOTAPPLICABLE .value ,
13871399 )
13881400 model ._summary_status .update_status (
13891401 detail = "Generated runtime.yaml" ,
1390- status = ModelState .DONE .value ,
1402+ status = ModelState .NOTAPPLICABLE .value ,
13911403 )
13921404 model ._summary_status .update_status (
1393- detail = "Serialized model" , status = ModelState .DONE .value
1405+ detail = "Serialized model" ,
1406+ status = ModelState .NOTAPPLICABLE .value ,
13941407 )
1395- model ._summary_status .update_action (
1408+ model ._summary_status .update_status (
13961409 detail = "Populated metadata(Custom, Taxonomy and Provenance)" ,
1397- action = f"Call .populate_metadata() to populate metadata." ,
1410+ status = ModelState .AVAILABLE .value
1411+ if reload
1412+ else ModelState .NOTAPPLICABLE .value ,
13981413 )
1414+
13991415 return model
14001416
14011417 def download_artifact (
0 commit comments