本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建模型
要创建模型,您必须提供模型构件和容器映像的位置。您也可以使用 “模型注册表” 中的SageMaker 模型版本。以下各节中的示例向您展示了如何使用CreateModelAPI、模型注册表和 Amazon SageMaker 控制台
创建模型(使用模型注册表)
模型注册表是一项功能 SageMaker ,可帮助您对模型的版本进行编目和管理,以便在机器学习管道中使用。要将模型注册表与无服务器推理一起使用,必须先在模型注册表模型组中注册模型版本。要了解如何在模型注册表中注册模型,请按照创建模型组和注册模型版本中的步骤操作。
以下示例要求您拥有已注册模型版本的ARN,并使用 for Python (Boto3)
对于
model_name
,输入模型的名称。对于
sagemaker_role
,您可以使用本完成先决条件节步骤 4 中的默认 SageMaker创建 SageMaker IAM角色或自定义角色。对于
ModelPackageName
,ARN为您的模型版本指定,该版本必须注册到 “模型注册表” 中的模型组。
#Setup import boto3 import sagemaker region = boto3.Session().region_name client = boto3.client("sagemaker", region_name=region) #Role to give SageMaker permission to access Amazon services. sagemaker_role = sagemaker.get_execution_role() #Specify a name for the model model_name = "
<name-for-model>
" #Specify a Model Registry model version container_list = [ { "ModelPackageName":<model-version-arn>
} ] #Create the model response = client.create_model( ModelName = model_name, ExecutionRoleArn = sagemaker_role, container_list )
创建模型(使用API)
以下示例使用 for Python (Boto3)
#Setup import boto3 import sagemaker region = boto3.Session().region_name client = boto3.client("sagemaker", region_name=region) #Role to give SageMaker permission to access Amazon services. sagemaker_role = sagemaker.get_execution_role() #Get model from S3 model_url = "
s3://amzn-s3-demo-bucket/models/model.tar.gz
" #Get container image (prebuilt example) from sagemaker import image_uris container = image_uris.retrieve("xgboost", region, "0.90-1") #Create model model_name = "<name-for-model>
" response = client.create_model( ModelName = model_name, ExecutionRoleArn = sagemaker_role, Containers = [{ "Image": container, "Mode": "SingleModel", "ModelDataUrl": model_url, }] )
创建模型(使用控制台)
-
在导航选项卡中,选择推理。
-
接下来,选择模型。
-
选择创建模型。
-
在模型名称中,输入您的账户所独有的模型名称,然后 Amazon Web Services 区域。
-
对于IAM角色,请选择一个您已经创建的IAM角色(请参阅完成先决条件),或者 SageMaker 允许您创建一个角色。
-
在容器定义 1 中,对于容器输入选项,选择提供模型构件和输入位置。
-
对于提供模型构件和推理映像选项,选择使用单个模型。
-
对于推理代码图像的位置,请输入容器的 Amazon ECR 路径。该图像必须是 SageMaker提供的第一方图片(例如XGBoost) TensorFlow,或者是驻留在您创建终端节点的同一账户下的 Amazon ECR 存储库中的图片。如果没有容器,请返回完成先决条件部分的步骤 6 以了解更多信息。
-
对于模型构件的位置,请输入您的机器学习模型的 Amazon S3 URI。例如,
。s3://amzn-s3-demo-bucket/models/model.tar.gz
-
(可选)对于标签,添加键值对来为模型创建元数据。
-
选择创建模型。