Flask框架建立模型API介面並部署上線
阿新 • • 發佈:2018-12-26
模型訓練後如何將模型打包上線,下面用Flask框架實現模型的部署和實時預測。
直接上乾貨,檔名稱為flask_model.py
import numpy as np from flask import Flask from flask import request from flask import jsonify from sklearn.externals import joblib #匯入模型 model = joblib.load('model.pickle') #temp = [5.1,3.5,1.4,0.2] #temp = np.array(temp).reshape((1, -1)) #ouputdata = model.predict(temp) ##獲取預測分類結果 #print('分類結果是:',ouputdata[0]) app = Flask(__name__) @app.route('/',methods=['POST','GET']) def output_data(): text=request.args.get('inputdata') if text: temp = [float(x) for x in text.split(',')] temp = np.array(temp).reshape((1, -1)) ouputdata = model.predict(temp) return jsonify(str(ouputdata[0])) if __name__ == '__main__': app.config['JSON_AS_ASCII'] = False app.run(host='127.0.0.1',port=5003) # 127.0.0.1 #指的是本地ip print('執行結束')
在cmd命令列中執行命令
>>> python flask_model
程式碼實時預測
# 呼叫API介面
import requests
base = 'http://127.0.0.1:5002/?inputdata=5.1,3.5,1.4,0.2'
response = requests.get(base)
answer = response.json()
print('預測結果',answer)