发布于 2022-07-08 15:01:42
vetiver.predict()主要充当API端点的路由器,因此它不必具有与model.predict()相同的行为。您可以通过vetiver.predict()重载定义自定义处理程序在您的模型上使用的函数。
在您的示例中,实现可能如下所示。
from vetiver.handlers.base import VetiverHandler
class ScoreSamplesHandler(VetiverHandler):
def __init__(self, model, ptype_data):
super().__init__(model, ptype_data)
def handler_predict(self, input_data, check_ptype):
"""
Define how to make predictions from your model
"""
prediction = self.model.score_samples(input_data)
return prediction初始化自定义处理程序并将其传递到VetiverModel()。
custom_model = ScoreSamplesHandler(model, ptype_data)
VetiverModel(custom_model, "model_name")然后,当使用vetiver.predict()函数时,它将返回model.score_samples()的值,而不是model.predict()的值。
https://stackoverflow.com/questions/72631606
复制相似问题