Я пытаюсь использовать модель внимания_окр на докере с помощью изображение тензорного потока / обслуживания.
Сначала я обучил эту модель на собственном наборе данных и получил хороший результат с demo_inference.py
Итак, я экспортирую обученную модель с помощью export_model. ру python export_model.py --checkpoint=model.ckpt-111111 --export_dir=/tmp/mydir
Затем запустите контейнер докеров для обслуживания модели. docker run -it --rm -p 8501:8501 -v /tmp/mydir:/models/aocr -e MODEL_NAME=aocr --gpus all tensorflow/serving
А это мой клиентский скрипт на Python.
data_dir = '/root/src/models/research/attention_ocr/python/datasets/data/demo/'
data_files = os.listdir(data_dir)
with open(data_dir + "0.jpg", "rb") as image_file:
encoded_string = base64.b64encode(image_file.read())
## Some requests I tried ##
# predict_request = '{"examples": [{"inputs": ["%s"]}]}' % encoded_string
# predict_request = '{"examples": [{"inputs": "%s"}]}' % encoded_string
predict_request = '{"examples": [{"inputs": {"b64": ["%s"]}}]}' % encoded_string
r = requests.post('https://MY_IP_ADDR:8501/v1/models/aocr:classify', data=predict_request)
print(r.text)
Результат .. "error": "Expected one or two output Tensors, found 17"
Это первый раз, когда используется тензор потока / обслуживания. Я не могу справиться с этой ошибкой.
Пожалуйста, помогите этому новичку .. Заранее спасибо.