Я учусь использовать сервировку Tensorflow, но мне очень трудно найти примеры, в том числе и в Stackoverflow.
Я использую пример цветов на веб-сайте TensorFlow.Учебная часть прошла успешно и с трудом развертывается.
Я запустил сервер следующим образом:
docker run -p 8501:8501 --mount type=bind,source=C:\tmp\saved_models,target=/models/flowers -e MODEL_NAME=flowers -t tensorflow/serving &
Чтобы посмотреть на все SignatureDef, я использовал следующее
saved_model_cli show --dir c:\tmp\saved_models\1 --all
Ответ:
MetaGraphDef with tag-set: 'serve' contains the following SignatureDefs:
signature_def['serving_default']:
The given SavedModel SignatureDef contains the following input(s):
inputs['image'] tensor_info:
dtype: DT_STRING
shape: ()
name: DecodeJpeg/contents:0
The given SavedModel SignatureDef contains the following output(s):
outputs['classes'] tensor_info:
dtype: DT_STRING
shape: (5)
name: Const:0
outputs['prediction'] tensor_info:
dtype: DT_FLOAT
shape: (-1, 5)
name: final_result:0
Method name is: tensorflow/serving/predict
Как я уже видел здесь предполагается, что он имеет "Имя метода: tenorflow / Обслуживание / классификация"
Почему этоотсутствует в моем примере?
Мой запрос RESTAPI выглядит следующим образом:
http://localhost:8501/v1/models/flowers/versions/1:classify
Тело:
{
"signature_name": "serving_default",
"flowers": [
{
"image": { "b64": "c:/Users/pubud/OneDrive/Pictures/bird.jpg=" },
"rose": "flower"
}
]
}
Я получаю ошибку:
{
"error": "Expected classification signature method_name to be tensorflow/serving/classify. Was: tensorflow/serving/predict"
}
Любая помощь очень ценится.