Skip to content

Commit 08b24fe

Browse files
Adding model delete and MD delete/deactivate APIs
1 parent a8780ea commit 08b24fe

File tree

4 files changed

+28
-0
lines changed

4 files changed

+28
-0
lines changed

ads/aqua/extension/deployment_handler.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,14 @@ def get(self, id=""):
5454
else:
5555
raise HTTPError(400, f"The request {self.request.path} is invalid.")
5656

57+
@handle_exceptions
58+
def delete(self,model_deployment_id):
59+
return self.finish(AquaDeploymentApp().delete(model_deployment_id))
60+
61+
@handle_exceptions
62+
def put(self,model_deployment_id):
63+
return self.finish(AquaDeploymentApp().deactivate(model_deployment_id))
64+
5765
@handle_exceptions
5866
def post(self, *args, **kwargs):
5967
"""

ads/aqua/extension/model_handler.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,8 @@ def delete(self, id=""):
7373
paths = url_parse.path.strip("/")
7474
if paths.startswith("aqua/model/cache"):
7575
return self.finish(AquaModelApp().clear_model_list_cache())
76+
elif id:
77+
return self.finish(AquaModelApp().delete_registered_model(id))
7678
else:
7779
raise HTTPError(400, f"The request {self.request.path} is invalid.")
7880

ads/aqua/model/model.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,15 @@ def get(self, model_id: str, load_model_card: Optional[bool] = True) -> "AquaMod
323323

324324
return model_details
325325

326+
@telemetry(entry_point="plugin=model&action=delete", name="aqua")
327+
def delete_registered_model(self,model_id):
328+
ds_model=DataScienceModel.from_id(model_id)
329+
is_registered_model=ds_model.freeform_tags.get(Tags.BASE_MODEL_CUSTOM,None)
330+
if is_registered_model:
331+
return ds_model.delete()
332+
else:
333+
raise AquaRuntimeError(f"Failed to delete model:{model_id}. Only registered models can be deleted.")
334+
326335
def _fetch_metric_from_metadata(
327336
self,
328337
custom_metadata_list: ModelCustomMetadata,

ads/aqua/modeldeployment/deployment.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -485,6 +485,15 @@ def list(self, **kwargs) -> List["AquaDeployment"]:
485485

486486
return results
487487

488+
489+
@telemetry(entry_point="plugin=deployment&action=delete", name="aqua")
490+
def delete(self,model_deployment_id:str):
491+
return self.ds_client.delete_model_deployment(model_deployment_id=model_deployment_id).data
492+
493+
@telemetry(entry_point="plugin=deployment&action=deactivate",name="aqua")
494+
def deactivate(self,model_deployment_id:str):
495+
return self.ds_client.deactivate_model_deployment(model_deployment_id=model_deployment_id).data
496+
488497
@telemetry(entry_point="plugin=deployment&action=get", name="aqua")
489498
def get(self, model_deployment_id: str, **kwargs) -> "AquaDeploymentDetail":
490499
"""Gets the information of Aqua model deployment.

0 commit comments

Comments
 (0)