Iguazio是否支持Flask, FastAPI或任何其他框架来服务模型?我如何保护端点?
您可以使用MLRun服务和Nuclio运行时实现ML模型服务。MLRun和Nuclio都集成到Iguazio平台中。Iguazio平台包括一个API网关,可以在REST端点上实现安全性。
MLRun服务可以从各种任务中生成托管的实时无服务器管道,包括MLRun模型或标准模型文件。管道使用Nuclio实时无服务器引擎,可以部署在任何地方。Nuclio是一个高性能的开源"无服务器"框架,专注于数据、I/O和计算密集型工作负载。
下面是显示模型部署的代码片段。更多详情请点击这里
from cloudpickle import load
import numpy as np
from typing import List
import mlrun
class ClassifierModel(mlrun.serving.V2ModelServer):
def load(self):
"""load and initialize the model and/or other elements"""
model_file, extra_data = self.get_model('.pkl')
self.model = load(open(model_file, 'rb'))
def predict(self, body: dict) -> List:
"""Generate model predictions from sample."""
feats = np.asarray(body['inputs'])
result: np.ndarray = self.model.predict(feats)
return result.tolist()
serving_fn = mlrun.code_to_function('serving', kind='serving',image='mlrun/mlrun')
serving_fn.spec.default_class = 'ClassifierModel'