- 使用Flask框架进行模型部署的步骤:
- 第一步: 部署模型预测代码.
- 第二步: 以挂起的方式启动服务.
- 第三步: 进行测试.
- 第一步: 部署模型预测代码
from flask import Flaskfrom flask import requestapp = Flask(__name__)import torch# 导入中文预训练模型编码函数from bert_chinese_encode import get_bert_encode# 导入微调网络from finetuning_net import Net# 导入训练好的模型MODEL_PATH = "./model/BERT_net.pth"# 定义实例化模型参数embedding_size = 768char_size = 20dropout = 0.2# 初始化微调网络模型net = Net(embedding_size, char_size, dropout)# 加载模型参数net.load_state_dict(torch.load(MODEL_PATH))# 使用评估模式net.eval()# 定义服务请求路径和方式@app.route('/v1/recognition/', methods=["POST"])def recognition(): # 接收数据 text_1 = request.form['text1'] text_2 = request.form['text2'] # 对原始文本进行编码 inputs = get_bert_encode(text_1, text_2, mark=102, max_len=10) # 使用微调模型进行预测 outputs = net(inputs) # 获得预测结果 _, predicted = torch.max(outputs, 1) # 返回字符串类型的结果 return str(predicted.item())
- 代码位置: /data/doctor_online/bert_serve/app.py
import requestsurl = "http://0.0.0.0:5001/v1/recognition/"data = {"text1":"人生该如何起头", "text2": "改变要如何起手"}res = requests.post(url, data=data)print("预测样本:", data["text_1"], "|", data["text_2"])print("预测结果:", res.text)
- 代码位置: /data/doctor_online/bert_serve/test.py
python test.py
预测样本: 人生该如何起头 | 改变要如何起手预测结果: 1
- 小节总结:
- 学习了使用Flask框架进行模型部署的实现过程:
- 第一步: 部署模型预测代码.
- 第二步: 以挂起的方式启动服务.
- 第三步: 进行测试.