从Databricks mlflow到Sagemaker的服务模型

时间:2019-10-25 08:32:40

标签: amazon-web-services databricks amazon-sagemaker mlflow

我能够从databricks(cloud.databricks.com)成功使用mlflow-能够记录事件并写入文件。现在,我正在尝试将模型部署到AWS SageMaker,并遵循this article。我有ECR URL和模型URI,但是,我得到 ”。部署操作失败,并显示以下错误消息:“发生未知的SageMaker故障。请参阅SageMaker控制台日志以获取更多信息。“” 在运行 mlflow.sagemaker.deploy() 命令时。我在CloudWatch日志中找不到任何内容,也不确定SageMaker控制台日志在哪里。

我尝试使用此命令- “ mlflow sagemaker build-and-push-container --build” 创建模型。第一次出现此错误-“ PermissionError:[WinError 32]该进程无法访问文件,因为该文件正在被另一个进程使用:'C:\ Users \ ADMINI〜1.AGI \ AppData \ Local \ Temp \ tmpjjwu05xv'” ,第二次出现此错误-“ botocore.exceptions.NoCredentialsError:无法找到凭据” 。我正在PC上的 mlruns 文件夹中运行此命令。

我看到正在SageMaker中创建模型端点,但是部署失败,因为ECR中没有映像。我已经验证了docker在我的PC上运行(以管理员身份启动)。请让我知道我在想什么。

编辑1:

我将Databricks文件导出到本地计算机,并通过jupyter笔记本打开了文件。当我运行此命令-“ mlflow.sagemaker.run_local(model_uri,port = 5001,image ='mlflow-pyfunc',flavour = None)”时,我得到以下信息: 2019/10 / 29 19:26:50 INFO mlflow.sagemaker:使用路径C:\ Users \ 10261 \ AppData \ Local \ Temp \ tmp_wf3tk63 \ model启动docker映像 2019/10/29 19:26:50信息mlflow.sagemaker:执行:docker run -v C:\ Users \ 10261 \ AppData \ Local \ Temp \ tmp_wf3tk63 \ model:/ opt / ml / model / -p 5001:8080 -e MLFLOW_DEPLOYMENT_FLAVOR_NAME = python_function --rm mlflow-pyfunc服务

然后我从cmd提示符导航到此文件夹(C:\ Users \ 10261 \ AppData \ Local \ Temp \ tmp_wf3tk63 \ model)并执行此-> mlflow sagemaker build-and-push-container --build ,但要得到它-已成功构建701b67d2e9f6 已成功标记mlflow-pyfunc:latest 安全警告:您正在从Windows针对非Windows Docker主机构建Docker映像。添加到构建上下文的所有文件和目录都将具有“ -rwxr-xr-x”权限。建议仔细检查并重置敏感文件和目录的权限。 2019/10/29 19:56:57信息mlflow.sagemaker:将图像推送到ECR 2019/10/29 19:56:58信息mlflow.sagemaker:将docker映像mlflow-pyfunc推送到919490798061.dkr.ecr.us-west-2.amazonaws.com/mlflow-pyfunc:1.3.0 '$'不被识别为内部或外部命令, 可操作的程序或批处理文件。

0 个答案:

没有答案