如何在Sagemaker中为特定模型图像获取Amazon ECR容器URI?

问题描述

我想知道是否可以通过编程方式(使用AWS CLI或Python)获取特定图像的Amazon ECR容器URI。例如,如果我需要linear-learner区域的最新eu-central-1(内置模型)图像的URL。

预期结果:

664544806723.dkr.ecr.eu-central-1.amazonaws.com/linear-learner:latest

编辑:我找到了get_image_uri解决方案。看来此函数将被弃用,我不知道如何使用ImageURIProvider

解决方法

我们可以使用函数get_image_uri

from sagemaker.amazon.amazon_estimator import get_image_uri

region = boto3.Session().region_name
#or region = 'eu-central-1'

get_image_uri(region_name=region,repo_name='linear-learner',repo_version='latest')

输出:

664544806723.dkr.ecr.eu-central-1.amazonaws.com/linear-learner:latest

警告:

'get_image_uri' method will be deprecated in favor of 'ImageURIProvider' class in SageMaker Python SDK v2.

该功能似乎已被弃用,我找不到如何使用ImageURIProvider的地方。

,

较新版本的 SageMaker SDK 具有用于获取 URI 的更集中的 API:

import sagemaker 
sagemaker.image_uris.retrieve("linear-learner","eu-central-1")

给出了预期的结果:

664544806723.dkr.ecr.eu-central-1.amazonaws.com/linear-learner:1

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...