Как подтолкнуть новую модель к обслуживанию tenserflow? - PullRequest
1 голос
/ 11 апреля 2019

Мне нужен способ использовать Python 3 для отправки недавно обученных моделей в развернутый контейнер, выполняющий tenserflow-Обслуживание .

Найден пакет tfx (https://www.tensorflow.org/tfx/guide/pusher), но он работает только с python 2.7 .

Также обнаружен этот вопрос, который указывает, что эта функциональность существует: Как добавить новую модель в обслуживание тензорного потока Но мне все еще не хватает хорошего руководства по развертыванию новой модели с использованием Python 3 .

1 Ответ

0 голосов
/ 03 мая 2019

Я создал модель и сохранил ее по пути "/ usr / local / google / home / abc / Jupyter_Notebooks / export".

Затем я зафиксировал его в контейнере обслуживающего док-сервера Tensorflow, определил эту модель и получил результаты.

Команды, которые должны быть выполнены в командной строке, для достижения целей, описанных выше, показаны ниже.:

sudo docker run -d --name sb tensorflow/serving

sudo docker cp /usr/local/google/home/abc/Jupyter_Notebooks/export sb:/models/export

sudo docker commit --change "ENV MODEL_NAME export" sb rak_iris_container

sudo docker kill sb

sudo docker pull tensorflow/serving

sudo docker run -p 8501:8501 --mount type=bind,source=/usr/local/google/home/abc/Jupyter_Notebooks/export,target=/models/export -e MODEL_NAME=export -t tensorflow/serving &

saved_model_cli show --dir /usr/local/google/home/abc/Jupyter_Notebooks/export/1554294699 --all

curl -d '{"examples":[{"SepalLength":[5.1],"SepalWidth":[3.3],"PetalLength":[1.7],"PetalWidth":[0.5]}]}' \
  -X POST http://localhost:8501/v1/models/export:classify

Вывод вышеуказанного логического вывода:

{
    "results": [[["0", 0.998091], ["1", 0.00190929], ["2", 1.46236e-08]]
    ]
}

Модель сохранена с использованием кода, указанного ниже:

feature_spec = tf.feature_column.make_parse_example_spec(my_feature_columns)
serving_input_receiver_fn = tf.estimator.export.build_parsing_serving_input_receiver_fn(feature_spec)
export_dir = classifier.export_savedmodel('export', serving_input_receiver_fn)
print('Exported to {}'.format(export_dir))

Вывод вышеуказанной команды:

Экспортируется в b '/ usr / local / google / home / abc / Jupyter_Notebooks / export / 1554980806'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...