diff --git a/doc/INFERENCE_TO_SERVING.md b/doc/INFERENCE_TO_SERVING.md index 719aa63c0a9b408d6bff628e7be4f35dfb49c5c8..15647dbbf8d461bcda237b0ef09b6818ee92fb00 100644 --- a/doc/INFERENCE_TO_SERVING.md +++ b/doc/INFERENCE_TO_SERVING.md @@ -2,35 +2,15 @@ ([简体中文](./INFERENCE_TO_SERVING_CN.md)|English) -We should know something before converting to serving model - -**inference_model_dir**:the directory of Paddle inference model - -**serving_client_dir**: the directory of server side configuration - -**serving_client_dir**: the directory of client side configuration - -**model_filename**: this is model description file whose default value is `__model__`, if it's not default name, set `model_filename` explicitly - -**params_filename**: during `save_inference_model` every Variable will be save as a single file. If we have the inference model whose params are compressed into one file, please set `params_filename` explicitly - - - -## Example - -``` python -from paddle_serving_client.io import inference_model_to_serving -inference_model_dir = "your_inference_model" -serving_client_dir = "serving_client_dir" -serving_server_dir = "serving_server_dir" -feed_var_names, fetch_var_names = inference_model_to_serving( - inference_model_dir, serving_server_dir, serving_client_dir) -``` - -if your model file and params file are both standalone, please use the following api. - -``` -feed_var_names, fetch_var_names = inference_model_to_serving( - inference_model_dir, serving_server_dir, serving_client_dir, - model_filename="model", params_filename="params") +you can use a build-in python module called `paddle_serving_client.convert` to convert it. +```python +python -m paddle_serving_client.convert --dirname ./your_inference_model_dir ``` +Arguments are the same as `inference_model_to_serving` API. +| Argument | Type | Default | Description | +|--------------|------|-----------|--------------------------------| +| `dirname` | str | - | Path of saved model files. Program file and parameter files are saved in this directory. | +| `serving_server` | str | `"serving_server"` | The path of model files and configuration files for server. | +| `serving_client` | str | `"serving_client"` | The path of configuration files for client. | +| `model_filename` | str | None | The name of file to load the inference program. If it is None, the default filename `__model__` will be used. | +| `params_filename` | str | None | The name of file to load all parameters. It is only used for the case that all parameters were saved in a single binary file. If parameters were saved in separate files, set it as None. | diff --git a/doc/INFERENCE_TO_SERVING_CN.md b/doc/INFERENCE_TO_SERVING_CN.md index 5d783f25a3f367baa94d471e50f227d9e6f733d1..64caf659f66f000cfab8a43abc66e3c3cd2e377c 100644 --- a/doc/INFERENCE_TO_SERVING_CN.md +++ b/doc/INFERENCE_TO_SERVING_CN.md @@ -2,32 +2,15 @@ ([English](./INFERENCE_TO_SERVING.md)|简体中文) -## 示例 - -在下列代码中,我们需要知道以下信息。 - -**模型文件夹**:这个文件夹就是Paddle的inference_model所在的文件夹 - -**serving_client_dir**: 这个文件夹是inference_model转换成Serving模型后,服务端配置的保存路径 - -**serving_client_dir**: 这个文件夹是inference_model转换成Serving模型后,客户端配置的保存路径 - -**模型描述文件**: 模型描述文件也就是`model_filename`默认值为`__model__`,是一个pb2文本文件,如果是别的文件名需要显式指定 - -**模型参数文件**: 在`save_inference_model`阶段,默认方式是每一个Variable保存一个二进制文件,如果是这种情况就不需要做指定。如果所有参数用压缩成一个文件的形式保存,则需要显式指定`params_filename` - - -``` python -from paddle_serving_client.io import inference_model_to_serving -inference_model_dir = "your_inference_model" -serving_client_dir = "serving_client_dir" -serving_server_dir = "serving_server_dir" -feed_var_names, fetch_var_names = inference_model_to_serving( - inference_model_dir, serving_server_dir, serving_client_dir) -``` -如果模型中有模型描述文件`model_filename` 和 模型参数文件`params_filename`,那么请用 -``` -feed_var_names, fetch_var_names = inference_model_to_serving( - inference_model_dir, serving_server_dir, serving_client_dir, - model_filename="model", params_filename="params") +你可以使用Paddle Serving提供的名为`paddle_serving_client.convert`的内置模块进行转换。 +```python +python -m paddle_serving_client.convert --dirname ./your_inference_model_dir ``` +模块参数与`inference_model_to_serving`接口参数相同。 +| 参数 | 类型 | 默认值 | 描述 | +|--------------|------|-----------|--------------------------------| +| `dirname` | str | - | 需要转换的模型文件存储路径,Program结构文件和参数文件均保存在此目录。| +| `serving_server` | str | `"serving_server"` | 转换后的模型文件和配置文件的存储路径。默认值为serving_server | +| `serving_client` | str | `"serving_client"` | 转换后的客户端配置文件存储路径。默认值为serving_client | +| `model_filename` | str | None | 存储需要转换的模型Inference Program结构的文件名称。如果设置为None,则使用 `__model__` 作为默认的文件名 | +| `params_filename` | str | None | 存储需要转换的模型所有参数的文件名称。当且仅当所有模型参数被保存在一个单独的>二进制文件中,它才需要被指定。如果模型参数是存储在各自分离的文件中,设置它的值为None | diff --git a/doc/LATEST_PACKAGES.md b/doc/LATEST_PACKAGES.md index 1c15371fda01e0f1aee00312a2f7bc9628b741af..3f4c5f04d17c93d63b75dcb1f60f8ea4eb05b0fb 100644 --- a/doc/LATEST_PACKAGES.md +++ b/doc/LATEST_PACKAGES.md @@ -29,9 +29,10 @@ https://paddle-serving.bj.bcebos.com/whl/paddle_serving_server_gpu-0.0.0.post102 https://paddle-serving.bj.bcebos.com/whl/paddle_serving_server_gpu-0.0.0.post9-py2-none-any.whl #cuda 10.0 https://paddle-serving.bj.bcebos.com/whl/paddle_serving_server_gpu-0.0.0.post10-py2-none-any.whl -##cuda10.1 with TensorRT 6 +#cuda10.1 with TensorRT 6 https://paddle-serving.bj.bcebos.com/whl/paddle_serving_server_gpu-0.0.0.post101-py2-none-any.whl #cuda10.2 with TensorRT 7 +>>>>>>> fit_a_line https://paddle-serving.bj.bcebos.com/whl/paddle_serving_server_gpu-0.0.0.post102-py2-none-any.whl ``` diff --git a/python/examples/fit_a_line/README.md b/python/examples/fit_a_line/README.md index 480457f8ce856cf22a89ff29260be7d1a9f0ccf8..af45b2a854381cb5c5739e9c89518d2e80753f1b 100644 --- a/python/examples/fit_a_line/README.md +++ b/python/examples/fit_a_line/README.md @@ -34,7 +34,7 @@ python test_client.py uci_housing_client/serving_client_conf.prototxt Start a web service with default web service hosting modules: ``` shell -python test_server.py +python -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9393 --name uci ``` ### Client prediction diff --git a/python/examples/fit_a_line/README_CN.md b/python/examples/fit_a_line/README_CN.md index 451f273322afe6c5ae76c4cd3ef102b01b8856e6..b18b7204ef2c678ac2811c2bc78df611e0dc538b 100644 --- a/python/examples/fit_a_line/README_CN.md +++ b/python/examples/fit_a_line/README_CN.md @@ -41,7 +41,7 @@ python test_client.py uci_housing_client/serving_client_conf.prototxt 通过下面的一行代码开启默认web服务: ``` shell -python test_server.py +python -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9393 --name uci ``` ### 客户端预测 diff --git a/python/paddle_serving_client/io/__init__.py b/python/paddle_serving_client/io/__init__.py index e6aa9947ca3326d8ff8e2bce012c37bffdb69b8d..48e0c8f2535db90e741eec4f8326a0b02b04486b 100644 --- a/python/paddle_serving_client/io/__init__.py +++ b/python/paddle_serving_client/io/__init__.py @@ -202,6 +202,7 @@ def inference_model_to_serving(dirname, serving_client="serving_client", model_filename=None, params_filename=None): + paddle.enable_static() place = fluid.CPUPlace() exe = fluid.Executor(place) inference_program, feed_target_names, fetch_targets = \