本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
TorchServe
TorchServe 是一个灵活的工具,用于处理从 PyTorch. TorchServe 预装了深度学习 AMI,Conda 从 v34 开始。
有关使用的更多信息 TorchServe,请参阅Model Server PyTorch文档
主题
在上处理图像分类模型 TorchServe
本教程介绍如何将图像分类模型与 TorchServe. 它使用一个 DenseNet-161 模型由提供 PyTorch。 在服务器开始运行后,它会立即侦听预测请求。在这种情况下,如果您上传图像(一个小猫的图像)时,服务器会返回在其上训练该模型时匹配的前 5 个类的预测。
在上处理示例图像分类模型 TorchServe
-
使用 Conda v34 或更高版本的深度学习 AMI Connect 亚马逊Elastic Compute Cloud (Amazon EC2) 实例。
-
激活
pytorch_latest_p36
环境。。。。source activate pytorch_latest_p36
-
Clone TorchServe 存储库,然后创建一个目录来存储您的模型。
git clone https://github.com/pytorch/serve.git mkdir model_store
-
使用模型存档器存档模型。这些区域有:
extra-files
param 使用来自TorchServe
repo,所以如有必要,请更新路径。 有关模型归档程序的更多信息,请参阅的火炬模型存档器 TorchServe.wget https://download.pytorch.org/models/densenet161-8d451a50.pth torch-model-archiver --model-name densenet161 --version 1.0 --model-file ./serve/examples/image_classifier/densenet_161/model.py --serialized-file densenet161-8d451a50.pth --export-path model_store --extra-files ./serve/examples/image_classifier/index_to_name.json --handler image_classifier
-
运行 TorchServe 启动终端节点。正在添加
> /dev/null
使日志输出静音。torchserve --start --ncs --model-store model_store --models densenet161.mar > /dev/null
-
下载小猫图像并将其发送到 TorchServe预测终点:
curl -O https://s3.amazonaws.com/model-server/inputs/kitten.jpg curl http://127.0.0.1:8080/predictions/densenet161 -T kitten.jpg
该预测终端节点将返回一个 JSON 格式的预测 (类似于下面的前 5 个预测),其中,图像具有 47% 的可能性为埃及猫,然后有 46% 的可能性为虎斑猫。
{ "tiger_cat": 0.46933576464653015, "tabby": 0.463387668132782, "Egyptian_cat": 0.0645613968372345, "lynx": 0.0012828196631744504, "plastic_bag": 0.00023323058849200606 }
-
完成测试后,请停止服务器:
torchserve --stop
其他示例
TorchServe 具有可在上运行的各种示例。你可以在这 TorchServe项目存储库示例页面
更多信息
有关 TorchServe 文档,包括如何设置 TorchServe使用 Docker 和最新的 TorchServe 功能,请参阅这 TorchServe 项目页面