【问题标题】:error when parsing value into Model (flask)将值解析为模型(烧瓶)时出错
【发布时间】:2023-03-15 10:31:02
【问题描述】:

目标是接受 UI 多个参数并使用烧瓶 API 将其提供给模型 (127.0.0.1:5002),然后将模型的评分回传给 UI (127.0.0.1:5001)

当模型接受来自 UI 的值时,我收到错误消息(在最后发布)。 所以我将值发布到 127.0.0.1:5002 模型将其作为 1 个 json 对象但我收到错误。

所以我从这段代码中发布了 1 个 json 对象(如果代码中存在问题,请告诉我——我是新手)

 <script>
 $(function() {$('#analysis').bind('click', function() {
   $.post('http://127.0.0.1:5002/',{
     'CK': $('CK').val(),
     'OCE': $('OCE').val(),
     'range_04': $('range_04').val(),
   },
   function(data) {
                 var parsed = JSON.parse(data);
                 $("#xyz").text(parsed['abc']);
             });
            return false;
     });
   });
</script>

现在这段代码生成了 json(并且那个 json 对象为模型提供了数据)

app = Flask(__name__)
api = Api(app)
parser = reqparse.RequestParser()
parser.add_argument('args.xyz')


class getPredProb(Resource):
    def post(self):
        args = parser.parse_args()
        clf = joblib.load('AO.pkl')
        frameToScore = pandas.read_json('args.xyz')
        prediction = clf.predict(frameToScore)
        probability = clf.predict_proba(frameToScore)
        return json.dumps({'Prediction': prediction},{'Probability':probability}), 201, {'Access-Control-Allow-Origin': 'http://127.0.0.1:5001'}



api.add_resource(getPredProb, '/')

if __name__ == '__main__':
    #http_server = WSGIServer(('', 5002), app)
    #http_server.serve_forever()
    app.run(debug=True,port=5002)

Image of ERROR

【问题讨论】:

    标签: python-2.7 flask machine-learning model flask-restful


    【解决方案1】:

    您只是将字符串'args.xyz' 传递给read_json,您应该使用args['xyz'](假设这是json 数据,因为我没有看到任何带有xyz 键的东西被传递给后端)。

    【讨论】:

    • 这可能是一个问题“我没有看到将 xyz 密钥传递到后端的任何内容”
    猜你喜欢
    • 1970-01-01
    • 2021-05-18
    • 2017-07-13
    • 1970-01-01
    • 1970-01-01
    • 2020-08-14
    • 1970-01-01
    • 2021-09-02
    • 2019-09-20
    相关资源
    最近更新 更多