github.com/alwaysproblem/mlserving-tutorial@v0.0.0-20221124033215-121cfddbfbf4/TFserving/ClientAPI/python/post_request.py (about) 1 """Send POST requst to the tfserver""" 2 import requests 3 import json 4 import timeit 5 6 model_name = "Toy" 7 port = 8501 8 host = "0.0.0.0" 9 10 url = f"http://{host}:{port}/v1/models/{model_name}:predict" 11 12 13 def requset_with_rows(): 14 req_data_r = {} 15 instances = [] 16 instances.append([1., 2.]) 17 instances.append([1., 3.]) 18 req_data_r["instances"] = instances 19 req_data_r = json.dumps(req_data_r) 20 return req_data_r 21 22 23 def requset_with_columns(): 24 req_data_c = {} 25 inputs = [[ 26 1., 27 1, 28 ], [2., 3.]] 29 req_data_c["inputs"] = inputs 30 req_data_c = json.dumps(req_data_c) 31 return req_data_c 32 33 34 if __name__ == "__main__": 35 # batch is 36 # request by instances 37 print("this request is based on isntances") 38 s = timeit.default_timer() 39 req_data = requset_with_rows() 40 get = requests.post(url, data=req_data) 41 inter = timeit.default_timer() - s 42 print(get.ok) 43 print(get.content.decode("utf-8")) 44 print(f"time consumption: {inter * 1000}ms") 45 46 # request by inputs 47 print("this request is based on inputs") 48 s = timeit.default_timer() 49 req_data = requset_with_columns() 50 get = requests.post(url, data=req_data) 51 inter = timeit.default_timer() - s 52 print(get.ok) 53 print(get.content.decode("utf-8")) 54 print(f"time consumption: {inter * 1000}ms")