机器学习模型训练与部署:MLflow与SageMaker的高效实践
1. MLflow与SageMaker的容器构建与模型部署
1.1 用MLflow构建SageMaker容器
在本地机器上,只需一个命令即可完成:
$ mlflow sagemaker build-and-push-container
MLflow会自动构建一个与SageMaker兼容的Docker容器,并安装所有必需的依赖项。之后,它会在Amazon ECR中创建一个名为 mlflow-pyfunc
的存储库,并将镜像推送到该存储库。当然,这需要你正确设置AWS凭证,MLflow将使用AWS CLI配置的默认区域。命令完成后,你可以在ECR中看到该镜像。
1.2 用MLflow在本地部署模型
步骤如下:
1. 使用以下命令在本地部署模型,需传入运行标识符(可在MLflow运行的URL中看到)和要使用的HTTP端口,这将启动一个基于gunicorn的本地Web应用程序:
$ mlflow sagemaker run-local -p 8888 -m runs:/d08ab8383ee84f72a92164d3ca548693/dm-xgboost-model
你会看到类似如下的输出:
[2021-05-26 20:21:23 +00