项目介绍:Multi Model Server
项目概述
Multi Model Server(MMS)是一个灵活且易于使用的工具,专门用于服务任何机器学习或深度学习框架训练的模型。用户可以通过MMS服务器命令行界面(CLI)或预配置的Docker镜像,轻松启动服务,设置HTTP终端来处理模型预测请求。
快速开始
基本要求
在进行项目之前,请确保具备以下环境和工具:
- 操作系统:Ubuntu、CentOS或macOS(Windows支持目前为试验阶段)
- Python:MMS需要Python来运行工作程序
- Pip:Python包管理系统
- Java 8:需要安装Java 8来启动MMS,安装命令因系统而异:
- Ubuntu:
sudo apt-get install openjdk-8-jre-headless
- CentOS:
sudo yum install java-1.8.0-openjdk
- macOS:
brew install adoptopenjdk8
- Ubuntu:
使用Pip安装MMS
-
设置虚拟环境
- 安装 Virtualenv:
pip install virtualenv
- 创建虚拟环境并激活:
virtualenv -p /usr/local/bin/python2.7 /tmp/pyenv2 source /tmp/pyenv2/bin/activate
- 安装 Virtualenv:
-
安装MXNet引擎
- 如进行CPU推理,建议安装
mxnet-mkl
:pip install mxnet-mkl
- 如进行GPU推理,建议安装
mxnet-cu92mkl
:pip install mxnet-cu92mkl
- 如进行CPU推理,建议安装
-
安装或升级MMS
- 使用以下命令安装MMS的最新版本:
pip install multi-model-server
- 使用以下命令安装MMS的最新版本:
提供模型服务
安装结束后,可以快速启动MMS服务器。通过命令行查看所有可用的命令行选项:
multi-model-server --help
以下是服务对象分类模型的简单示例:
multi-model-server --start --models squeezenet=https://s3.amazonaws.com/model-server/model_archive_1.0/squeezenet_v1.1.mar
执行上述命令后,MMS将在主机上启动,监听预测请求。通过curl
命令,用户可以测试模型预测功能。
推荐的生产环境部署
- 用户需配置自己的认证代理,MMS不提供认证功能。
- 建议将MMS部署在防火墙后,以防止DDoS攻击。
- 出于安全考虑,建议在Docker容器中运行MMS,该项目提供了可用于生产部署的Docker镜像。
其他功能
项目文档提供了完整的教程和示例,包括如何自定义API服务、详细的API端点信息等等。
外部演示
MMS还在多个深度学习应用中提供演示,包括产品点评分类、视觉搜索、人脸情感识别、以及神经风格转换等。
贡献
欢迎所有的贡献,包括报告漏洞及功能请求。用户可以在GitHub上提交问题或拉取请求来参与此项目的发展。