无法读取远程Ubuntu s上Flask中保存的机器学习模型

2024-06-26 17:46:30 发布

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

我已经保存了一个机器学习模型为'finalized'_型号.sav“我正在烧瓶应用程序上使用。当我在本地桌面上运行下面几行代码时,它运行得非常完美,但在远程Ubuntu服务器上运行相同的代码会产生错误:

@app.route('/studentData/', methods=['POST'])
def parsing_data():
    try:
        jsonData = request.get_json(force=True)
        data = json.loads(jsonData)  
        requiredData = data['statement']

        filename = 'finalized_model.sav'
        loaded_model = pickle.load(open(filename, 'rb'))
        count_vect = pickle.load(open('count_vect', 'rb'))
        result = loaded_model.predict(count_vect.transform([requiredData]))
        out = {"studentId": str(result)}
        return json.dumps(out)
    except:
        return "invalid data"

我想知道哪里可能是问题,似乎问题是在加载'完成_型号.sav,尽管我将所有文件都保存在flask app(init.py)所在的目录中


Tags: 代码jsonappdatamodelcountfilenamepickle
1条回答
网友
1楼 · 发布于 2024-06-26 17:46:30

作为初学者,换衣服

filename = 'finalized_model.sav' 

filename = './finalized_model.sav'

如果仍然不起作用,请使用完整路径名

import os
filename = os.path.abspath(__file__) + os.sep + 'finalized_model.sav'

相关问题 更多 >