Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
Serving
提交
5de30b68
S
Serving
项目概览
PaddlePaddle
/
Serving
接近 2 年 前同步成功
通知
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看板
提交
5de30b68
编写于
4月 06, 2020
作者:
M
MRXLT
提交者:
GitHub
4月 06, 2020
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #403 from MRXLT/0.2.0-fix-client-v1
fix py3 client bus error
上级
26ec84d4
fc702d1c
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
73 addition
and
69 deletion
+73
-69
doc/IMDB_GO_CLIENT_CN.md
doc/IMDB_GO_CLIENT_CN.md
+59
-59
python/paddle_serving_client/__init__.py
python/paddle_serving_client/__init__.py
+1
-1
python/paddle_serving_client/version.py
python/paddle_serving_client/version.py
+3
-3
python/paddle_serving_server/version.py
python/paddle_serving_server/version.py
+3
-3
python/paddle_serving_server_gpu/version.py
python/paddle_serving_server_gpu/version.py
+3
-3
tools/serving_build.sh
tools/serving_build.sh
+4
-0
未找到文件。
doc/IMDB_GO_CLIENT_CN.md
浏览文件 @
5de30b68
...
@@ -28,71 +28,71 @@ python -m paddle_serving_server.serve --model ./serving_server_model/ --port 929
...
@@ -28,71 +28,71 @@ python -m paddle_serving_server.serve --model ./serving_server_model/ --port 929
### 客户端代码示例
### 客户端代码示例
```
go
```
go
// imdb_client.go
// imdb_client.go
package
main
package
main
import
(
import
(
"io"
"io"
"fmt"
"fmt"
"strings"
"strings"
"bufio"
"bufio"
"strconv"
"strconv"
"os"
"os"
serving_client
"github.com/PaddlePaddle/Serving/go/serving_client"
serving_client
"github.com/PaddlePaddle/Serving/go/serving_client"
)
)
func
main
()
{
func
main
()
{
var
config_file_path
string
var
config_file_path
string
config_file_path
=
os
.
Args
[
1
]
config_file_path
=
os
.
Args
[
1
]
handle
:
=
serving_client
.
LoadModelConfig
(
config_file_path
)
handle
:=
serving_client
.
LoadModelConfig
(
config_file_path
)
handle
=
serving_client
.
Connect
(
"127.0.0.1"
,
"9292"
,
handle
)
handle
=
serving_client
.
Connect
(
"127.0.0.1"
,
"9292"
,
handle
)
test_file_path
:
=
os
.
Args
[
2
]
test_file_path
:=
os
.
Args
[
2
]
fi
,
err
:
=
os
.
Open
(
test_file_path
)
fi
,
err
:=
os
.
Open
(
test_file_path
)
if
err
!
=
nil
{
if
err
!
=
nil
{
fmt
.
Print
(
err
)
fmt
.
Print
(
err
)
}
}
defer
fi
.
Close
()
defer
fi
.
Close
()
br
:
=
bufio
.
NewReader
(
fi
)
br
:=
bufio
.
NewReader
(
fi
)
fetch
:
=
[]
string
{
"cost"
,
"acc"
,
"prediction"
}
fetch
:=
[]
string
{
"cost"
,
"acc"
,
"prediction"
}
var
result
map
[
string
]
[]
float32
var
result
map
[
string
][]
float32
for
{
for
{
line
,
err
:
=
br
.
ReadString
(
'\
n
'
)
line
,
err
:=
br
.
ReadString
(
'\
n'
)
if
err
==
io
.
EOF
{
if
err
==
io
.
EOF
{
break
break
}
}
line
=
strings
.
Trim
(
line
,
"
\
n"
)
line
=
strings
.
Trim
(
line
,
"
\
n
"
)
var
words
=
[]
int64
{}
var
words
=
[]
int64
{}
s
:
=
strings
.
Split
(
line
,
"
"
)
s
:=
strings
.
Split
(
line
,
"
"
)
value
,
err
:
=
strconv
.
Atoi
(
s
[
0
])
value
,
err
:=
strconv
.
Atoi
(
s
[
0
])
var
feed_int_map
map
[
string
]
[]
int64
var
feed_int_map
map
[
string
][]
int64
for
_
,
v
:
=
range
s
[
1
:
value
+
1
]
{
for
_
,
v
:=
range
s
[
1
:
value
+
1
]
{
int_v
,
_
:
=
strconv
.
Atoi
(
v
)
int_v
,
_
:=
strconv
.
Atoi
(
v
)
words
=
append
(
words
,
int64
(
int_v
))
words
=
append
(
words
,
int64
(
int_v
))
}
}
label
,
err
:
=
strconv
.
Atoi
(
s
[
len
(
s
)
-
1
])
label
,
err
:=
strconv
.
Atoi
(
s
[
len
(
s
)
-
1
])
if
err
!
=
nil
{
if
err
!
=
nil
{
panic
(
err
)
panic
(
err
)
}
}
feed_int_map
=
map
[
string
]
[]
int64
{}
feed_int_map
=
map
[
string
][]
int64
{}
feed_int_map
[
"words"
]
=
words
feed_int_map
[
"words"
]
=
words
feed_int_map
[
"label"
]
=
[]
int64
{
int64
(
label
)}
feed_int_map
[
"label"
]
=
[]
int64
{
int64
(
label
)}
Ranch
result
=
serving_client
.
Predict
(
handle
,
feed_int_map
,
fetch
)
result
=
serving_client
.
Predict
(
handle
,
feed_int_map
,
fetch
)
fmt
.
Println
(
result
[
"prediction"
]
[
1
],
"
\
t"
,
int64
(
label
))
fmt
.
Println
(
result
[
"prediction"
][
1
],
"
\t
"
,
int64
(
label
))
}
}
}
}
```
```
...
...
python/paddle_serving_client/__init__.py
浏览文件 @
5de30b68
...
@@ -93,7 +93,7 @@ class Client(object):
...
@@ -93,7 +93,7 @@ class Client(object):
lib_path
=
os
.
path
.
dirname
(
paddle_serving_client
.
__file__
)
lib_path
=
os
.
path
.
dirname
(
paddle_serving_client
.
__file__
)
client_path
=
os
.
path
.
join
(
lib_path
,
'serving_client.so'
)
client_path
=
os
.
path
.
join
(
lib_path
,
'serving_client.so'
)
lib_path
=
os
.
path
.
join
(
lib_path
,
'lib'
)
lib_path
=
os
.
path
.
join
(
lib_path
,
'lib'
)
os
.
popen
(
'patchelf --set-rpath {} {}'
.
format
(
lib_path
,
client_path
))
os
.
system
(
'patchelf --set-rpath {} {}'
.
format
(
lib_path
,
client_path
))
def
load_client_config
(
self
,
path
):
def
load_client_config
(
self
,
path
):
from
.serving_client
import
PredictorClient
from
.serving_client
import
PredictorClient
...
...
python/paddle_serving_client/version.py
浏览文件 @
5de30b68
...
@@ -12,6 +12,6 @@
...
@@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and
# See the License for the specific language governing permissions and
# limitations under the License.
# limitations under the License.
""" Paddle Serving Client version string """
""" Paddle Serving Client version string """
serving_client_version
=
"0.
1.3
"
serving_client_version
=
"0.
2.0
"
serving_server_version
=
"0.
1.3
"
serving_server_version
=
"0.
2.0
"
module_proto_version
=
"0.
1.3
"
module_proto_version
=
"0.
2.0
"
python/paddle_serving_server/version.py
浏览文件 @
5de30b68
...
@@ -12,6 +12,6 @@
...
@@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and
# See the License for the specific language governing permissions and
# limitations under the License.
# limitations under the License.
""" Paddle Serving Client version string """
""" Paddle Serving Client version string """
serving_client_version
=
"0.
1.3
"
serving_client_version
=
"0.
2.0
"
serving_server_version
=
"0.
1.3
"
serving_server_version
=
"0.
2.0
"
module_proto_version
=
"0.
1.3
"
module_proto_version
=
"0.
2.0
"
python/paddle_serving_server_gpu/version.py
浏览文件 @
5de30b68
...
@@ -12,6 +12,6 @@
...
@@ -12,6 +12,6 @@
# See the License for the specific language governing permissions and
# See the License for the specific language governing permissions and
# limitations under the License.
# limitations under the License.
""" Paddle Serving Client version string """
""" Paddle Serving Client version string """
serving_client_version
=
"0.
1.3
"
serving_client_version
=
"0.
2.0
"
serving_server_version
=
"0.
1.3
"
serving_server_version
=
"0.
2.0
"
module_proto_version
=
"0.
1.3
"
module_proto_version
=
"0.
2.0
"
tools/serving_build.sh
浏览文件 @
5de30b68
...
@@ -200,6 +200,7 @@ function python_run_criteo_ctr_with_cube() {
...
@@ -200,6 +200,7 @@ function python_run_criteo_ctr_with_cube() {
local
TYPE
=
$1
local
TYPE
=
$1
yum
install
-y
bc
>
/dev/null
yum
install
-y
bc
>
/dev/null
cd
criteo_ctr_with_cube
# pwd: /Serving/python/examples/criteo_ctr_with_cube
cd
criteo_ctr_with_cube
# pwd: /Serving/python/examples/criteo_ctr_with_cube
export
SERVING_BIN
=
${
SERVING_WORKDIR
}
/build-server-
${
TYPE
}
/core/general-server/serving
case
$TYPE
in
case
$TYPE
in
CPU
)
CPU
)
check_cmd
"wget https://paddle-serving.bj.bcebos.com/unittest/ctr_cube_unittest.tar.gz"
check_cmd
"wget https://paddle-serving.bj.bcebos.com/unittest/ctr_cube_unittest.tar.gz"
...
@@ -214,6 +215,7 @@ function python_run_criteo_ctr_with_cube() {
...
@@ -214,6 +215,7 @@ function python_run_criteo_ctr_with_cube() {
sh cube_prepare.sh &
sh cube_prepare.sh &
check_cmd
"mkdir work_dir1 && cp cube/conf/cube.conf ./work_dir1/"
check_cmd
"mkdir work_dir1 && cp cube/conf/cube.conf ./work_dir1/"
python test_server.py ctr_serving_model_kv &
python test_server.py ctr_serving_model_kv &
sleep
5
check_cmd
"python test_client.py ctr_client_conf/serving_client_conf.prototxt ./ut_data >score"
check_cmd
"python test_client.py ctr_client_conf/serving_client_conf.prototxt ./ut_data >score"
tail
-n
2 score |
awk
'NR==1'
tail
-n
2 score |
awk
'NR==1'
AUC
=
$(
tail
-n
2 score |
awk
'NR==1'
)
AUC
=
$(
tail
-n
2 score |
awk
'NR==1'
)
...
@@ -240,6 +242,7 @@ function python_run_criteo_ctr_with_cube() {
...
@@ -240,6 +242,7 @@ function python_run_criteo_ctr_with_cube() {
sh cube_prepare.sh &
sh cube_prepare.sh &
check_cmd
"mkdir work_dir1 && cp cube/conf/cube.conf ./work_dir1/"
check_cmd
"mkdir work_dir1 && cp cube/conf/cube.conf ./work_dir1/"
python test_server_gpu.py ctr_serving_model_kv &
python test_server_gpu.py ctr_serving_model_kv &
sleep
5
check_cmd
"python test_client.py ctr_client_conf/serving_client_conf.prototxt ./ut_data >score"
check_cmd
"python test_client.py ctr_client_conf/serving_client_conf.prototxt ./ut_data >score"
tail
-n
2 score |
awk
'NR==1'
tail
-n
2 score |
awk
'NR==1'
AUC
=
$(
tail
-n
2 score |
awk
'NR==1'
)
AUC
=
$(
tail
-n
2 score |
awk
'NR==1'
)
...
@@ -258,6 +261,7 @@ function python_run_criteo_ctr_with_cube() {
...
@@ -258,6 +261,7 @@ function python_run_criteo_ctr_with_cube() {
exit
1
exit
1
;;
;;
esac
esac
unset
SERVING_BIN
echo
"test criteo_ctr_with_cube
$TYPE
part finished as expected."
echo
"test criteo_ctr_with_cube
$TYPE
part finished as expected."
cd
..
# pwd: /Serving/python/examples
cd
..
# pwd: /Serving/python/examples
}
}
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录