Я новичок в этой области.Мой пример использования: Обслуживание нескольких моделей в tf Обслуживание. Я использую docker
Я могу понять изменения, которые мне нужно сделать в файле конфигурации (как показано ниже):
model_config_list: {
config: {
name: "model1",
base_path: "/tmp/model",
model_platform: "tensorflow"
},
config: {
name: "model2",
base_path: "/tmp/model2",
model_platform: "tensorflow"
}
}
Однако,У меня есть 2 задачи:
Задача 1:
Какие изменения необходимы в файле client.py для взаимодействия с несколькими моделями?Я ссылался на mnist_client.py:
def do_inference(hostport, work_dir, concurrency, num_tests):
test_data_set = mnist_input_data.read_data_sets(work_dir).test
channel = grpc.insecure_channel(hostport)
stub = prediction_service_pb2_grpc.PredictionServiceStub(channel)
result_counter = _ResultCounter(num_tests, concurrency)
for _ in range(num_tests):
request = predict_pb2.PredictRequest()
request.model_spec.name = 'mnist'
request.model_spec.signature_name = 'predict_images'
image, label = test_data_set.next_batch(1)
request.inputs['images'].CopyFrom(
tf.contrib.util.make_tensor_proto(image[0], shape=[1, image[0].size]))
result_counter.throttle()
result_future = stub.Predict.future(request, 5.0) # 5 seconds
result_future.add_done_callback(
_create_rpc_callback(label[0], result_counter))
return result_counter.get_error_rate()
Приведенный выше код предназначен только для одной модели.
Какое конкретное поле / переменную мне нужно добавить в код, который будет идентифицировать каждый из моихуникальность нескольких моделей и это уникальное значение, которое я могу использовать, когда отправляю запрос своей модели, размещенной на tenorflow, обслуживающем внутри контейнера докера?
Задача 2:
Для одной модели я использовал этот формат клиентаrequest:
python mnist_client.py --server=172.17.0.2:9000 --image=<image folder>
Какой должен быть точный формат, в котором я размещаю несколько моделей, и каждый раз поступает запрос на разные модели.Так какой должен быть правильный формат запроса клиента?
Заранее спасибо!