在AWS SageMaker容器中设置环境变量(自带容器) [英] Setup env variable in aws SageMaker container (bring your own container)

查看:13
本文介绍了在AWS SageMaker容器中设置环境变量(自带容器)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们使用的是AWS sagemaker,它使用的是ECS容器,有没有办法,在使用低级的python SDK调用sagemaker API时,可以在容器中设置环境变量(如STAGE或PROD)

推荐答案

即使直接调用接口(比使用pythonSDK的级别低),也不能直接在容器内设置环境任意变量。但是,您可以将任意超参数作为TrainingJob的配置传递,例如,传递一个类似{"mystage": "prod"}的超参数。超级参数出现在容器中的一个名为/opt/ml/input/config/hyperparameters.json的文件中,这是一个简单的键值映射,作为一个JSON对象。您可以使用它在启动脚本中设置环境变量,如下所示:

#!/bin/bash

export STAGE=$(jq -r ".mystage" /opt/ml/input/config/hyperparameters.json)

# Now run your code...

您可以通过在Dockerfile中将其设置为ENTRYPOINT来使SageMaker调用此脚本,或者在未设置ENTRYPOINT的情况下将其命名为train并确保它位于外壳的PATH上。

这篇关于在AWS SageMaker容器中设置环境变量(自带容器)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆