Я использую тензорный сервер для вывода тензорного объекта-обнаружения-API.Для этого я создал клиент Rest api.Я отправляю запрос на сервер следующим образом:
server_url = 'http://localhost:8501/v1/models/omr_500:predict'
headers = {"content-type": "application/json"}
image_path = 'test_images/19_inp.jpg'
def pre_process(image_path):
image = Image.open(image_path).convert("RGB")
image_np = plot_util.load_image_into_numpy_array(image)
image_tensor = np.expand_dims(image_np, 0)
formatted_json_input = json.dumps({"signature_name": "serving_default", "instances": image_tensor.tolist()})
return formatted_json_input
requests.post(server_url, pre_process(image_path), headers)
Проблема с этим типом запроса заключается в том, что для публикации запроса на 100 изображений мне нужно предварительно обработать все из них.В функции pre_process()
преобразование numpy
в python list
занимает большую часть времени (image_tensor.tolist()
).Сама предварительная обработка 50 изображений занимает около 20 секунд.Это увеличивает время моего вывода.Есть ли эффективный способ сделать вывод?