将模型热负载到tensorflow服务容器中

问题描述 投票:1回答:1

我知道如何将模型加载到容器中,而且我知道我们可以创建一个静态配置文件,当我们运行tensorflow服务容器时将其传递给容器,然后在配置文件中使用一个模型,但我想知道如果有任何方法可以将全新模型(不是以前型号的较新版本)热加载到运行的tensorflow服务容器中。我的意思是我们用模型A运行容器,然后我们将模型-B加载到容器中并使用它,我们可以这样做吗?如果有,怎么样?

tensorflow tensorflow-serving
1个回答
3
投票

您可以。

首先,您需要将新模型文件复制到启动tf服务时指定的model_base_path,以便服务器可以看到新模型。目录布局通常是:$ MODEL_BASE_PATH / $ model_a / $ version_a / *和$ MODEL_BASE_PATH / $ model_b / $ version_b / *

然后,您需要使用包含新模型条目的新model_config_file刷新tf服务。见here on how to add entries to the model config file。要使服务器接受新配置,有两种方法:

  1. 保存新的配置文件并重新启动tf服务。
  2. 无需重新启动tf服务即可重新加载新的模型配置。此服务在model_service.proto中定义为HandleReloadConfigRequest,但服务的REST api似乎不支持它,因此您需要依赖gRPC API。可悲的是,Python client for gRPC似乎没有实现。我设法从protobuf文件生成Java客户端代码,但它非常复杂。示例here解释了如何生成用于执行gRPC推理的Java客户端代码,并且执行handleReloadConfigRequest()非常相似。
© www.soinside.com 2019 - 2024. All rights reserved.