iT邦幫忙

2021 iThome 鐵人賽

DAY 12
1
AI & Data

機器學習與前端網頁系列 第 12

Day 12 跑 Tensorflow Serving Docker 範例

又到了跑範例環節,這次要試著學習 Tensorflow Serving,
Tensorflow Serving 是 Tensorflow 專門給 Tensorflow 模型的後端 API 服務。

簡單的說,指定模型位置給它讀,它就會自動幫你跑一個 server,設計好 API 路徑可以直接呼叫。
完全不需要親自寫伺服器提供服務,所以我之前手刻 server 是刻心酸的

想當初我研究所研究的是 Docker 和 kubernates,但現在我接的案子都還用不到這兩個技術。
Docker 的操作細節就略過,因為網路上已經有很多教學了,有問題可以在底下發問。

Tensorflow 給的範例如下。

# Download the TensorFlow Serving Docker image and repo
docker pull tensorflow/serving

git clone https://github.com/tensorflow/serving
# Location of demo models
TESTDATA="$(pwd)/serving/tensorflow_serving/servables/tensorflow/testdata"

# Start TensorFlow Serving container and open the REST API port
docker run -t --rm -p 8501:8501 \
    -v "$TESTDATA/saved_model_half_plus_two_cpu:/models/half_plus_two" \
    -e MODEL_NAME=half_plus_two \
    tensorflow/serving &

# Query the model using the predict API
curl -d '{"instances": [1.0, 2.0, 5.0]}' \
    -X POST http://localhost:8501/v1/models/half_plus_two:predict

# Returns => { "predictions": [2.5, 3.0, 4.5] }

不過很可惜,教學腳本只有給 linux 的指令,所以我得把它微調一下,讓 windows 可以執行。
用 %cd% 取代 pwd,用 %var% 取代 $var,以及調整 json 的引號格式。

# Download the TensorFlow Serving Docker image and repo
docker pull tensorflow/serving

# Start TensorFlow Serving container and open the REST API port
git clone https://github.com/tensorflow/serving

# Location of demo models
set TESTDATA="%cd%/serving/tensorflow_serving/servables/tensorflow/testdata"
echo %TESTDATA%

# Start TensorFlow Serving container and open the REST API port
docker run -t --rm -p 8501:8501 -v "%TESTDATA%/saved_model_half_plus_two_cpu:/models/half_plus_two"  -e MODEL_NAME=half_plus_two  tensorflow/serving

# Query the model using the predict API
curl -d "{\"instances\": [1.0, 2.0, 5.0]}"  -X POST http://localhost:8501/v1/models/half_plus_two:predict 

# Returns => { "predictions": [2.5, 3.0, 4.5] }

回傳資料和範例的一致

參考資料

https://www.tensorflow.org/tfx/serving/docker


上一篇
Day 11 打包 python 程式-3
下一篇
Day 13 Flask 與 Tensorflow Serving 的溝通
系列文
機器學習與前端網頁30

1 則留言

0
長風青雲
iT邦新手 4 級 ‧ 2021-09-28 13:24:14

@@第一次知道 偷偷學起來

我要留言

立即登入留言