Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
Serving
提交
628759e0
S
Serving
项目概览
PaddlePaddle
/
Serving
大约 1 年 前同步成功
通知
186
Star
833
Fork
253
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
105
列表
看板
标记
里程碑
合并请求
10
Wiki
2
Wiki
分析
仓库
DevOps
项目成员
Pages
S
Serving
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
105
Issue
105
列表
看板
标记
里程碑
合并请求
10
合并请求
10
Pages
分析
分析
仓库分析
DevOps
Wiki
2
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
628759e0
编写于
8月 12, 2021
作者:
H
HexToString
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update java doc
上级
121e63e4
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
32 addition
and
7 deletion
+32
-7
java/README_CN.md
java/README_CN.md
+31
-6
java/examples/src/main/java/PaddleServingClientExample.java
java/examples/src/main/java/PaddleServingClientExample.java
+1
-1
未找到文件。
java/README_CN.md
浏览文件 @
628759e0
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
(
[
English
](
./README.md
)
|简体中文)
(
[
English
](
./README.md
)
|简体中文)
##
#
开发环境
## 开发环境
为了方便用户使用java进行开发,我们提供了编译好的Serving工程放置在java镜像当中,获取镜像并进入开发环境的方式是
为了方便用户使用java进行开发,我们提供了编译好的Serving工程放置在java镜像当中,获取镜像并进入开发环境的方式是
...
@@ -15,7 +15,7 @@ cd Serving/java
...
@@ -15,7 +15,7 @@ cd Serving/java
Serving文件夹是镜像生成时的develop分支工程目录,需要git pull 到最新版本,或者git checkout 到想要的分支。
Serving文件夹是镜像生成时的develop分支工程目录,需要git pull 到最新版本,或者git checkout 到想要的分支。
##
#
安装客户端依赖
## 安装客户端依赖
由于依赖库数量庞大,因此镜像已经在生成时编译过一次,用户执行以下操作即可
由于依赖库数量庞大,因此镜像已经在生成时编译过一次,用户执行以下操作即可
...
@@ -27,7 +27,34 @@ mvn compile
...
@@ -27,7 +27,34 @@ mvn compile
mvn install
mvn install
```
```
### 启动服务端(Pipeline方式)
## 请求BRPC-Server
###服务端启动
以fit_a_line模型为例,服务端启动与常规BRPC-Server端启动命令一样。
```
cd ../../python/examples/fit_a_line
sh get_data.sh
python -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9393
```
###客户端预测
客户端目前支持多种请求方式,目前支持HTTP(数据为JSON格式)、HTTP(数据为PROTO格式)、GRPC
推荐您使用HTTP(数据为PROTO格式),此时数据体为PROTO格式,传输的数据量小,速度快,目前已经帮用户实现了HTTP/GRPC的数据体(JSON/PROTO)的封装函数,详见
[
Client.java
](
./src/main/java/io/paddle/serving/client/Client.java
)
```
cd ../../../java/examples/target
java -cp paddle-serving-sdk-java-examples-0.0.1-jar-with-dependencies.jar PaddleServingClientExample http_proto <configPath>
```
**注意 <configPath>为客户端配置文件,一般是名为serving_client_conf.prototxt的文件。**
更多示例详见
[
PaddleServingClientExample.java
](
./examples/src/main/java/PaddleServingClientExample.java
)
## 请求Pipeline-Server
###服务端启动
对于input data type = string类型,以IMDB model ensemble模型为例,服务端启动
对于input data type = string类型,以IMDB model ensemble模型为例,服务端启动
...
@@ -71,7 +98,7 @@ java -cp paddle-serving-sdk-java-examples-0.0.1-jar-with-dependencies.jar Pipeli
...
@@ -71,7 +98,7 @@ java -cp paddle-serving-sdk-java-examples-0.0.1-jar-with-dependencies.jar Pipeli
### 注意事项
### 注意事项
1.
在示例中,
所有非Pipeline模型都需要使用
`--use_multilang`
来启动GRPC多编程语言支持,以及端口号都是9393,如果需要别的端口,需要在java文件里修改
。
1.
在示例中,
端口号都是9393,ip默认设置为了0.0.0.0表示本机,注意ip和port需要与Server端对应
。
2.
目前Serving已推出Pipeline模式(原理详见
[
Pipeline Serving
](
../doc/PIPELINE_SERVING_CN.md
)
),面向Java的Pipeline Serving Client已发布。
2.
目前Serving已推出Pipeline模式(原理详见
[
Pipeline Serving
](
../doc/PIPELINE_SERVING_CN.md
)
),面向Java的Pipeline Serving Client已发布。
...
@@ -84,5 +111,3 @@ java -cp paddle-serving-sdk-java-examples-0.0.1-jar-with-dependencies.jar Pipeli
...
@@ -84,5 +111,3 @@ java -cp paddle-serving-sdk-java-examples-0.0.1-jar-with-dependencies.jar Pipeli
第一种是GPU Serving和Java Client在运行在同一个GPU镜像中,需要用户在启动GPU镜像后,把在java镜像中编译完成后的文件(位于/Serving/java目录下)拷贝到GPU镜像中的/Serving/java目录下。
第一种是GPU Serving和Java Client在运行在同一个GPU镜像中,需要用户在启动GPU镜像后,把在java镜像中编译完成后的文件(位于/Serving/java目录下)拷贝到GPU镜像中的/Serving/java目录下。
第二种是GPU Serving和Java Client分别在各自的docker镜像中(或具备编译开发环境的不同主机上)部署,此时仅需注意Java Client端与GPU Serving端的ip和port需要对应,详见上述注意事项中的第3项。
第二种是GPU Serving和Java Client分别在各自的docker镜像中(或具备编译开发环境的不同主机上)部署,此时仅需注意Java Client端与GPU Serving端的ip和port需要对应,详见上述注意事项中的第3项。
java/examples/src/main/java/PaddleServingClientExample.java
浏览文件 @
628759e0
...
@@ -284,7 +284,7 @@ public class PaddleServingClientExample {
...
@@ -284,7 +284,7 @@ public class PaddleServingClientExample {
if
(
args
.
length
<
2
)
{
if
(
args
.
length
<
2
)
{
System
.
out
.
println
(
"Usage: java -cp <jar> PaddleServingClientExample <test-type> <configPath>."
);
System
.
out
.
println
(
"Usage: java -cp <jar> PaddleServingClientExample <test-type> <configPath>."
);
System
.
out
.
println
(
"<test-type>: http_proto grpc bert cube_local yolov4 encrypt"
);
System
.
out
.
println
(
"<test-type>: http_proto
http_json
grpc bert cube_local yolov4 encrypt"
);
return
;
return
;
}
}
String
testType
=
args
[
0
];
String
testType
=
args
[
0
];
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录