keras模型部署服务器

server端

from flask import Flask, request, Response
import base64
import flask
import json

def base64_decode_image(a):
    if sys.version_info.major == 3:
        a = bytes(a, encoding="utf-8")
    return base64.b64decode(a)

app = flask.Flask(__name__)

@app.route("/predict", methods=["POST"])
def predict():
	r = request.json
    rjson = json.loads(r)
    data = rjson['image']
    image = base64_decode_image(data)
    image = Image.open(io.BytesIO(image))
    result = predict_image(image)
    response_pickled = json.dumps(result)
    return Response(response=response_pickled, status=200, mimetype="application/json")

if __name__ == '__main__':
    app.run(host="0.0.0.0", port=5000)

client端

import base64
import json
import requests

def base64_encode_image(a):
    return base64.b64encode(a).decode("utf-8")

def main():
    image = open(image_path, "rb").read()
    image = base64_encode_image(image)
    data = {"image": image}
    response = requests.post('http://localhost:5000' + "/predict", json=json.dumps(data), headers={"Content-Type": "application/json"})
    print(response.text)

if __name__ == '__main__':
    main()
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐