前言
工作中,模型训练好之后,需要部署在云端供下游调用。云端部署服务时,可以选择使用FastAPI,也可以使用Flask,搭建过程大同小异,此文记录服务搭建过程。
1.Flask开启服务与调用
1.1 开启服务
import flask
from flask import request
if __name__ == "__main__":
app = flask.Flask(__name__)
#定义访问方法
@app.route('/get_classification', methods=['GET'])
def get_dept_user():
req_data = request.args.get("question")
resp = predict_instance(req_data)
return json.dumps(resp, ensure_ascii=False,indent=4)
#启动flask服务
app.run('0.0.0.0', port=9511)
1.2 调用服务
import requests
prefix_url = 'http://0.0.0.0:9516/get_classification?'
params = {
'question':text
}
response = requests.get(prefix_url,params)
result = response.json()
2.FastAPI开启服务与调用
2.1 开启服务
import uvicorn
from fastapi import FastAPI
app = FastAPI()
@app.get("/sentence/{sentence}")
async def get_item(sentence:str):
resp = {}
result = gen_synonyms(text=sentence,n=50,k=20,mask_idxs=[])
resp['result'] = result
return json.dumps(resp, ensure_ascii=False)
if __name__ == "__main__":
uvicorn.run(app, host="0.0.0.0", port=9516)
2.2 调用服务
import requests
#发送请求
prefix_url = 'http://0.0.0.0:9516/sentence?'
params = {
'sentence':text
}
response = requests.get(prefix_url,params)
result_list = response.json()['resp']