Flask启动时加载ML模型

2024-10-02 02:27:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在开发一个FlaskAPI来运行机器学习模型并返回预测。为此,我使用Pickle将模型加载到一个全局变量中。我想做的是在Flask服务器启动时将模型加载到全局变量中,并在用户需要预测时创建一个端点来运行模型。这样,我就不必每次打电话时都加载模型

将模型加载到变量中的代码为:

loaded_model = pickle.load(open('model.sav', 'rb'))

Flask API的一个非常基本的代码示例是:

app = Flask(__name__)

@app.route('/')
def home():
    return 'home'

@app.route('/getRecommendation', methods=['GET'])
def getRecommendation():
    return(loaded_model(paremeter))


if __name__ == '__main__':
    app.run()

我应该将代码放在哪里,以便将模型加载到变量中,以便在flask服务器启动时发生,并且可以从GetRecommension端点调用它


Tags: 代码name模型服务器appflaskhomemodel
1条回答
网友
1楼 · 发布于 2024-10-02 02:27:36

一种简单的方法是创建一个load_model方法,该方法将加载并返回模型,然后用^{}装饰它。第一次加载需要一些时间,之后,速度会很快

如果要防止这种情况发生,还可以调用load_model并丢弃if __name__块中的输出

相关问题 更多 >

    热门问题