README.md 2.8 KB
Newer Older
D
Dong Daxiang 已提交
1
<img src='https://paddle-serving.bj.bcebos.com/imdb-demo%2FLogoMakr-3Bd2NM-300dpi.png' width = "600" height = "127">
D
Dong Daxiang 已提交
2

D
Dong Daxiang 已提交
3
[![Release](https://img.shields.io/badge/Release-0.0.3-yellowgreen)](Release)
D
Dong Daxiang 已提交
4
[![Issues](https://img.shields.io/github/issues/PaddlePaddle/Serving)](Issues)
D
Dong Daxiang 已提交
5
[![License](https://img.shields.io/github/license/PaddlePaddle/Serving)](LICENSE)
D
Dong Daxiang 已提交
6
[![Slack](https://img.shields.io/badge/Join-Slack-green)](https://paddleserving.slack.com/archives/CU0PB4K35)
D
Dong Daxiang 已提交
7

D
Dong Daxiang 已提交
8
[中文](https://github.com/PaddlePaddle/Serving/blob/develop/README_CN.md)
D
Dong Daxiang 已提交
9

D
Dong Daxiang 已提交
10
## Motivation
D
Dong Daxiang 已提交
11
Paddle Serving helps deep learning developers deploy an online inference service without much effort. **The goal of this project**: once you have trained a deep neural nets with [Paddle](https://github.com/PaddlePaddle/Paddle), you already have a model inference service. A demo of serving is as follows:
D
Dong Daxiang 已提交
12
<p align="center">
D
Dong Daxiang 已提交
13
    <img src="doc/demo.gif" width="700">
D
Dong Daxiang 已提交
14
</p>
D
Dong Daxiang 已提交
15

D
Dong Daxiang 已提交
16
## Key Features
D
Dong Daxiang 已提交
17
- Integrate with Paddle training pipeline seemlessly, most paddle models can be deployed **with one line command**.
D
Dong Daxiang 已提交
18 19 20
- **Industrial serving features** supported, such as models management, online loading, online A/B testing etc.
- **Distributed Key-Value indexing** supported that is especially useful for large scale sparse features as model inputs.
- **Highly concurrent and efficient communication** between clients and servers.
D
Dong Daxiang 已提交
21
- **Multiple programming languages** supported on client side, such as Golang, C++ and python
D
Dong Daxiang 已提交
22
- **Extensible framework design** that can support model serving beyond Paddle.
D
Dong Daxiang 已提交
23

D
Dong Daxiang 已提交
24
## Installation
D
Dong Daxiang 已提交
25 26 27 28 29 30

```shell
pip install paddle-serving-client
pip install paddle-serving-server
```

D
Dong Daxiang 已提交
31 32
## Quick Start Example

D
Dong Daxiang 已提交
33
``` shell
D
Dong Daxiang 已提交
34
wget --no-check-certificate https://paddle-serving.bj.bcebos.com/uci_housing.tar.gz
D
Dong Daxiang 已提交
35
tar -xzf uci_housing.tar.gz
D
Dong Daxiang 已提交
36
python -m paddle_serving_server.serve --model uci_housing_model --thread 10 --port 9292 --name uci
D
Dong Daxiang 已提交
37 38
```

D
Dong Daxiang 已提交
39
Python Client Request
D
Dong Daxiang 已提交
40

D
Dong Daxiang 已提交
41
``` python
D
Dong Daxiang 已提交
42 43 44
from paddle_serving_client import Client

client = Client()
D
Dong Daxiang 已提交
45
client.load_client_config("uci_housing_client/serving_client_conf.prototxt")
D
Dong Daxiang 已提交
46
client.connect(["127.0.0.1:9292"])
D
Dong Daxiang 已提交
47
data = [0.0137, -0.1136, 0.2553, -0.0692, 0.0582, -0.0727,
D
Dong Daxiang 已提交
48
        -0.1583, -0.0584, 0.6283, 0.4919, 0.1856, 0.0795, -0.0332]
D
Dong Daxiang 已提交
49
fetch_map = client.predict(feed={"x": data}, fetch=["price"])
D
Dong Daxiang 已提交
50
print(fetch_map)
D
Dong Daxiang 已提交
51 52 53

```

D
Dong Daxiang 已提交
54 55


D
Dong Daxiang 已提交
56
## Document
D
Dong Daxiang 已提交
57 58 59

[Design Doc(Chinese)](doc/DESIGN.md)

D
Dong Daxiang 已提交
60
[How to config Serving native operators on server side?](doc/SERVER_DAG.md)
D
Dong Daxiang 已提交
61

D
Dong Daxiang 已提交
62
[How to develop a new Serving operator](doc/NEW_OPERATOR.md)
D
Dong Daxiang 已提交
63

D
Dong Daxiang 已提交
64
[Golang client](doc/IMDB_GO_CLIENT.md)
D
Dong Daxiang 已提交
65

D
Dong Daxiang 已提交
66
[Compile from source code(Chinese)](doc/COMPILE.md)
D
Dong Daxiang 已提交
67

D
Dong Daxiang 已提交
68 69
[FAQ(Chinese)](doc/FAQ.md)

D
Dong Daxiang 已提交
70 71 72
## Join Community
To connect with other users and contributors, welcome to join our [Slack channel](https://paddleserving.slack.com/archives/CUBPKHKMJ)

D
Dong Daxiang 已提交
73 74
## Contribution

D
Dong Daxiang 已提交
75
If you want to contribute code to Paddle Serving, please reference [Contribution Guidelines](doc/CONTRIBUTE.md)