场景描述:
现用Django框架 发布一个机器学习模型服务,服务端加载模型,时刻运行,等待客户端发送请求(我这里的请求数据以json格式,包含特征)。
这里是纯后端的代码,没有涉及网页展示,所以无法直接看到结果,所以用python模拟客户端发送url请求,请求包含传入json数据,得到服务器回应则解析服务器发回的json数据。
服务端:只贴核心代码
webserver/view.py文件内
import json
from django.http import JsonResponse
def predict(request):
if request.method == 'POST':
request_json = json.loads(request.body)
.....
resp={'prediction' : int(y)}
return JsonResponse(resp)
还需修改mainproject/urls.py
from django.contrib import admin
from django.urls import path
from webserver.views import predict
urlpatterns = [
path('admin/', admin.site.urls),
path('predict', predict),
]
客户端:
request_test.py
import requests
import time
json_exp = {'a':'1',"b": 2', 'c':3}
start=time.time()
response = requests.post(url='http://127.0.0.1:8000/predict', json=json_exp)
result = response.json()
print('model API返回结果:', result)