Skip to content

Commit fabd11e

Browse files
committed
Updated pr.
1 parent 35af9cd commit fabd11e

File tree

3 files changed

+79
-113
lines changed

3 files changed

+79
-113
lines changed

ads/model/deployment/model_deployment.py

Lines changed: 40 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -614,17 +614,14 @@ def deploy(
614614
else self.properties.build()
615615
)
616616

617-
try:
618-
response = self.dsc_model_deployment.create(
619-
create_model_deployment_details=create_model_deployment_details,
620-
wait_for_completion=wait_for_completion,
621-
max_wait_time=max_wait_time,
622-
poll_interval=poll_interval,
623-
)
624-
except Exception as ex:
625-
raise ex
626-
finally:
627-
return self._update_from_oci_model(response)
617+
response = self.dsc_model_deployment.create(
618+
create_model_deployment_details=create_model_deployment_details,
619+
wait_for_completion=wait_for_completion,
620+
max_wait_time=max_wait_time,
621+
poll_interval=poll_interval,
622+
)
623+
624+
return self._update_from_oci_model(response)
628625

629626
def delete(
630627
self,
@@ -650,16 +647,13 @@ def delete(
650647
ModelDeployment
651648
The instance of ModelDeployment.
652649
"""
653-
try:
654-
response = self.dsc_model_deployment.delete(
655-
wait_for_completion=wait_for_completion,
656-
max_wait_time=max_wait_time,
657-
poll_interval=poll_interval,
658-
)
659-
except Exception as ex:
660-
raise ex
661-
finally:
662-
return self._update_from_oci_model(response)
650+
response = self.dsc_model_deployment.delete(
651+
wait_for_completion=wait_for_completion,
652+
max_wait_time=max_wait_time,
653+
poll_interval=poll_interval,
654+
)
655+
656+
return self._update_from_oci_model(response)
663657

664658
def update(
665659
self,
@@ -715,17 +709,14 @@ def update(
715709
else self._update_model_deployment_details(**kwargs)
716710
)
717711

718-
try:
719-
response = self.dsc_model_deployment.update(
720-
update_model_deployment_details=update_model_deployment_details,
721-
wait_for_completion=wait_for_completion,
722-
max_wait_time=max_wait_time,
723-
poll_interval=poll_interval,
724-
)
725-
except Exception as ex:
726-
raise ex
727-
finally:
728-
return self._update_from_oci_model(response)
712+
response = self.dsc_model_deployment.update(
713+
update_model_deployment_details=update_model_deployment_details,
714+
wait_for_completion=wait_for_completion,
715+
max_wait_time=max_wait_time,
716+
poll_interval=poll_interval,
717+
)
718+
719+
return self._update_from_oci_model(response)
729720

730721
def watch(
731722
self,
@@ -891,10 +882,10 @@ def predict(
891882
892883
"""
893884
current_state = self.sync().lifecycle_state
894-
if current_state != "ACTIVE":
885+
if current_state != State.ACTIVE.name:
895886
raise ModelDeploymentPredictError(
896-
f"Predict() can't be called when model deployment is `{current_state}`. "
897-
"Make sure model deployment is `ACTIVE` before calling predict."
887+
"This model deployment is not in active state, you will not be able to use predict end point. "
888+
f"Current model deployment state: {current_state} "
898889
)
899890
endpoint = f"{self.url}/predict"
900891
signer = authutil.default_signer()["signer"]
@@ -991,16 +982,13 @@ def activate(
991982
ModelDeployment
992983
The instance of ModelDeployment.
993984
"""
994-
try:
995-
response = self.dsc_model_deployment.activate(
996-
wait_for_completion=wait_for_completion,
997-
max_wait_time=max_wait_time,
998-
poll_interval=poll_interval,
999-
)
1000-
except Exception as ex:
1001-
raise ex
1002-
finally:
1003-
return self._update_from_oci_model(response)
985+
response = self.dsc_model_deployment.activate(
986+
wait_for_completion=wait_for_completion,
987+
max_wait_time=max_wait_time,
988+
poll_interval=poll_interval,
989+
)
990+
991+
return self._update_from_oci_model(response)
1004992

1005993
def deactivate(
1006994
self,
@@ -1026,16 +1014,13 @@ def deactivate(
10261014
ModelDeployment
10271015
The instance of ModelDeployment.
10281016
"""
1029-
try:
1030-
response = self.dsc_model_deployment.deactivate(
1031-
wait_for_completion=wait_for_completion,
1032-
max_wait_time=max_wait_time,
1033-
poll_interval=poll_interval,
1034-
)
1035-
except Exception as ex:
1036-
raise ex
1037-
finally:
1038-
return self._update_from_oci_model(response)
1017+
response = self.dsc_model_deployment.deactivate(
1018+
wait_for_completion=wait_for_completion,
1019+
max_wait_time=max_wait_time,
1020+
poll_interval=poll_interval,
1021+
)
1022+
1023+
return self._update_from_oci_model(response)
10391024

10401025
def _log_details(self, log_type: str = ModelDeploymentLogType.ACCESS):
10411026
"""Gets log details for the provided `log_type`.

ads/model/generic_model.py

Lines changed: 30 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -1575,7 +1575,7 @@ def from_model_deployment(
15751575
current_state = model_deployment.state.name.upper()
15761576
if current_state != ModelDeploymentState.ACTIVE.name:
15771577
logger.warning(
1578-
"Model deployment should be in `ACTIVE` state while being fetched. "
1578+
"This model deployment is not in active state, you will not be able to use predict end point. "
15791579
f"Current model deployment state: `{current_state}`"
15801580
)
15811581

@@ -2318,20 +2318,16 @@ def deploy(
23182318
.with_runtime(runtime)
23192319
)
23202320

2321-
try:
2322-
self.model_deployment = model_deployment.deploy(
2323-
wait_for_completion=wait_for_completion,
2324-
max_wait_time=max_wait_time,
2325-
poll_interval=poll_interval,
2326-
)
2327-
except Exception as ex:
2328-
raise ex
2329-
finally:
2330-
self._summary_status.update_status(
2331-
detail="Deployed the model",
2332-
status=self.model_deployment.state.name.upper(),
2333-
)
2334-
return self.model_deployment
2321+
self.model_deployment = model_deployment.deploy(
2322+
wait_for_completion=wait_for_completion,
2323+
max_wait_time=max_wait_time,
2324+
poll_interval=poll_interval,
2325+
)
2326+
self._summary_status.update_status(
2327+
detail="Deployed the model",
2328+
status=self.model_deployment.state.name.upper(),
2329+
)
2330+
return self.model_deployment
23352331

23362332
def prepare_save_deploy(
23372333
self,
@@ -2799,29 +2795,25 @@ def restart_deployment(
27992795
"""
28002796
if not self.model_deployment:
28012797
raise ValueError("Use `deploy()` method to start model deployment.")
2802-
try:
2803-
logger.info(
2804-
f"Deactivating model deployment {self.model_deployment.model_deployment_id}."
2805-
)
2806-
self.model_deployment.deactivate(
2807-
max_wait_time=max_wait_time, poll_interval=poll_interval
2808-
)
2809-
logger.info(
2810-
f"Model deployment {self.model_deployment.model_deployment_id} has successfully been deactivated."
2811-
)
2812-
logger.info(
2813-
f"Activating model deployment {self.model_deployment.model_deployment_id}."
2814-
)
2815-
self.model_deployment.activate(
2816-
max_wait_time=max_wait_time, poll_interval=poll_interval
2817-
)
2818-
logger.info(
2819-
f"Model deployment {self.model_deployment.model_deployment_id} has successfully been activated."
2820-
)
2821-
except Exception as ex:
2822-
raise ex
2823-
finally:
2824-
return self.model_deployment
2798+
logger.info(
2799+
f"Deactivating model deployment {self.model_deployment.model_deployment_id}."
2800+
)
2801+
self.model_deployment.deactivate(
2802+
max_wait_time=max_wait_time, poll_interval=poll_interval
2803+
)
2804+
logger.info(
2805+
f"Model deployment {self.model_deployment.model_deployment_id} has successfully been deactivated."
2806+
)
2807+
logger.info(
2808+
f"Activating model deployment {self.model_deployment.model_deployment_id}."
2809+
)
2810+
self.model_deployment.activate(
2811+
max_wait_time=max_wait_time, poll_interval=poll_interval
2812+
)
2813+
logger.info(
2814+
f"Model deployment {self.model_deployment.model_deployment_id} has successfully been activated."
2815+
)
2816+
return self.model_deployment
28252817

28262818
@class_or_instance_method
28272819
def delete(

ads/model/service/oci_datascience_model_deployment.py

Lines changed: 9 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -209,11 +209,8 @@ def activate(
209209
)
210210
except Exception as e:
211211
logger.error(
212-
f"Error while trying to activate model deployment: {self.id}"
212+
"Error while trying to activate model deployment: " + str(e)
213213
)
214-
raise e
215-
finally:
216-
return self.sync()
217214

218215
return self.sync()
219216
else:
@@ -263,11 +260,8 @@ def create(
263260
)
264261
except Exception as e:
265262
logger.error(
266-
f"Error while trying to create model deployment: {self.id}"
263+
"Error while trying to create model deployment: " + str(e)
267264
)
268-
raise e
269-
finally:
270-
return self.sync()
271265

272266
return self.sync()
273267

@@ -329,11 +323,8 @@ def deactivate(
329323
)
330324
except Exception as e:
331325
logger.error(
332-
f"Error while trying to deactivate model deployment: {self.id}"
326+
"Error while trying to deactivate model deployment: " + str(e)
333327
)
334-
raise e
335-
finally:
336-
return self.sync()
337328

338329
return self.sync()
339330
else:
@@ -402,11 +393,8 @@ def delete(
402393
)
403394
except Exception as e:
404395
logger.error(
405-
f"Error while trying to delete model deployment: {self.id}"
396+
"Error while trying to delete model deployment: " + str(e)
406397
)
407-
raise e
408-
finally:
409-
return self.sync()
410398

411399
return self.sync()
412400

@@ -460,10 +448,11 @@ def update(
460448
)
461449
self.workflow_req_id = response.headers.get("opc-work-request-id", None)
462450
except Exception as e:
463-
logger.error(f"Error while trying to update model deployment: {self.id}")
464-
raise e
465-
finally:
466-
return self.sync()
451+
logger.error(
452+
"Error while trying to update model deployment: " + str(e)
453+
)
454+
455+
return self.sync()
467456

468457
@classmethod
469458
def list(

0 commit comments

Comments
 (0)