示例#1
0
 def deleteModelVersion(self, request, context):
     model_meta_param = ModelVersion.from_proto(request)
     self.model_repo_store.delete_model_version(model_meta_param)
     self.notification_client.send_event(BaseEvent(model_meta_param.model_name,
                                                   json.dumps(model_meta_param.__dict__),
                                                   ModelVersionEventType.MODEL_DELETED))
     return _wrap_response(request.model_meta)
    def delete_model_version(self, model_name, model_version) -> ModelVersion:
        """
        Delete model version by model name and version in Model Center backend.

        :param model_name: Name of registered model. This is expected to be unique in the backend store.
        :param model_version: User-defined version of registered model.

        :return: A single :py:class:`ai_flow.entities.model_registry.ModelVersion` object.
        """
        request = DeleteModelVersionRequest(model_meta=ModelMetaParam(model_name=stringValue(model_name),
                                                                      model_version=stringValue(model_version)))
        response = self.model_center_stub.deleteModelVersion(request)
        return ModelVersion.from_resp_proto(_parse_response(response, ModelMetaParam()))
示例#3
0
 def createModelVersion(self, request, context):
     model_meta_param = ModelVersion.from_proto(request)
     model_version_param = ModelVersionParam.from_proto(request)
     model_version_meta = self.model_repo_store.create_model_version(model_meta_param.model_name,
                                                                     model_version_param.model_path,
                                                                     model_version_param.model_type,
                                                                     model_version_param.version_desc,
                                                                     model_version_param.current_stage)
     event_type = MODEL_VERSION_TO_EVENT_TYPE.get(ModelVersionStage.from_string(model_version_param.current_stage))
     if self.notification_client is not None:
         self.notification_client.send_event(BaseEvent(model_version_meta.model_name,
                                                       json.dumps(model_version_meta.__dict__),
                                                       event_type))
     return _wrap_response(model_version_meta.to_meta_proto())
示例#4
0
 def _properties(cls):
     # aggregate with base class properties since cls.__dict__ does not do it automatically
     return sorted(cls._get_properties_helper() +
                   ModelVersion._properties())
示例#5
0
 def getRegisteredModelDetail(self, request, context):
     model_meta_param = ModelVersion.from_proto(request)
     registered_model_detail = self.model_repo_store.get_registered_model_detail(
         RegisteredModel(model_name=model_meta_param.model_name))
     return _wrap_response(None if registered_model_detail is None else registered_model_detail.to_detail_proto())
示例#6
0
 def getModelVersionDetail(self, request, context):
     model_meta_param = ModelVersion.from_proto(request)
     model_version_meta = self.model_repo_store.get_model_version_detail(model_meta_param)
     return _wrap_response(None if model_version_meta is None else model_version_meta.to_meta_proto())