Files
2026-07-13 13:22:34 +08:00

64 lines
2.1 KiB
Python

import os
from mlflow.deployments import BaseDeploymentClient, PredictionsResponse
f_deployment_name = "fake_deployment_name"
f_endpoint_name = "fake_endpoint_name"
class PluginDeploymentClient(BaseDeploymentClient):
def create_deployment(self, name, model_uri, flavor=None, config=None, endpoint=None):
if config and config.get("raiseError") == "True":
raise RuntimeError("Error requested")
return {"name": f_deployment_name, "flavor": flavor}
def delete_deployment(self, name, config=None, endpoint=None):
if config and config.get("raiseError") == "True":
raise RuntimeError("Error requested")
return None
def update_deployment(self, name, model_uri=None, flavor=None, config=None, endpoint=None):
return {"flavor": flavor}
def list_deployments(self, endpoint=None):
if os.environ.get("raiseError") == "True":
raise RuntimeError("Error requested")
return [{"name": f_deployment_name}]
def get_deployment(self, name, endpoint=None):
return {"key1": "val1", "key2": "val2"}
def predict(self, deployment_name=None, inputs=None, endpoint=None):
return PredictionsResponse.from_json('{"predictions": [1,2,3]}')
def explain(self, deployment_name=None, df=None, endpoint=None):
return "1"
def create_endpoint(self, name, config=None):
if config and config.get("raiseError") == "True":
raise RuntimeError("Error requested")
return {"name": f_endpoint_name}
def update_endpoint(self, endpoint, config=None):
return None
def delete_endpoint(self, endpoint):
return None
def list_endpoints(self):
return [{"name": f_endpoint_name}]
def get_endpoint(self, endpoint):
return {"name": f_endpoint_name}
def run_local(name, model_uri, flavor=None, config=None):
print( # noqa: T201
f"Deployed locally at the key {name} using the model from {model_uri}. "
f"It's flavor is {flavor} and config is {config}"
)
def target_help():
return "Target help is called"