更新模型版本的詳細資訊 - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

更新模型版本的詳細資訊

您可以使用 AWS SDK for Python (Boto3) 或 Amazon SageMaker Studio 主控台來檢視和更新特定模型版本的詳細資訊。

重要

Amazon 將模型卡 SageMaker 整合到模型登錄檔中。在模型登錄檔中註冊的模型套件包含簡化的模型卡作為模型套件的元件。如需詳細資訊,請參閱模型套件模型卡結構描述 (Studio)

檢視和更新模型版本的詳細資訊 (Boto3)

若要使用 Boto3 檢視模型版本的詳細資訊,請完成下列步驟。

  1. 呼叫 list_model_packagesAPI操作以檢視模型群組中的模型版本。

    sm_client.list_model_packages(ModelPackageGroupName="ModelGroup1")

    系統會回應模型套件摘要的清單。您可以從此清單中取得模型版本的 Amazon Resource Name (ARN)。

    {'ModelPackageSummaryList': [{'ModelPackageGroupName': 'AbaloneMPG-16039329888329896', 'ModelPackageVersion': 1, 'ModelPackageArn': 'arn:aws:sagemaker:us-east-2:123456789012:model-package/ModelGroup1/1', 'ModelPackageDescription': 'TestMe', 'CreationTime': datetime.datetime(2020, 10, 29, 1, 27, 46, 46000, tzinfo=tzlocal()), 'ModelPackageStatus': 'Completed', 'ModelApprovalStatus': 'Approved'}], 'ResponseMetadata': {'RequestId': '12345678-abcd-1234-abcd-aabbccddeeff', 'HTTPStatusCode': 200, 'HTTPHeaders': {'x-amzn-requestid': '12345678-abcd-1234-abcd-aabbccddeeff', 'content-type': 'application/x-amz-json-1.1', 'content-length': '349', 'date': 'Mon, 23 Nov 2020 04:56:50 GMT'}, 'RetryAttempts': 0}}
  2. 呼叫 describe_model_package 以查看模型版本的詳細資訊。您可以將您在呼叫輸出中取得的ARN模型版本的 傳遞給 list_model_packages

    sm_client.describe_model_package(ModelPackageName="arn:aws:sagemaker:us-east-2:123456789012:model-package/ModelGroup1/1")

    此呼叫的輸出是具有模型版本詳細資訊的JSON物件。

    {'ModelPackageGroupName': 'ModelGroup1', 'ModelPackageVersion': 1, 'ModelPackageArn': 'arn:aws:sagemaker:us-east-2:123456789012:model-package/ModelGroup/1', 'ModelPackageDescription': 'Test Model', 'CreationTime': datetime.datetime(2020, 10, 29, 1, 27, 46, 46000, tzinfo=tzlocal()), 'InferenceSpecification': {'Containers': [{'Image': '257758044811.dkr.ecr.us-east-2.amazonaws.com/sagemaker-xgboost:1.0-1-cpu-py3', 'ImageDigest': 'sha256:99fa602cff19aee33297a5926f8497ca7bcd2a391b7d600300204eef803bca66', 'ModelDataUrl': 's3://sagemaker-us-east-2-123456789012/ModelGroup1/pipelines-0gdonccek7o9-AbaloneTrain-stmiylhtIR/output/model.tar.gz'}], 'SupportedTransformInstanceTypes': ['ml.m5.xlarge'], 'SupportedRealtimeInferenceInstanceTypes': ['ml.t2.medium', 'ml.m5.xlarge'], 'SupportedContentTypes': ['text/csv'], 'SupportedResponseMIMETypes': ['text/csv']}, 'ModelPackageStatus': 'Completed', 'ModelPackageStatusDetails': {'ValidationStatuses': [], 'ImageScanStatuses': []}, 'CertifyForMarketplace': False, 'ModelApprovalStatus': 'PendingManualApproval', 'LastModifiedTime': datetime.datetime(2020, 10, 29, 1, 28, 0, 438000, tzinfo=tzlocal()), 'ResponseMetadata': {'RequestId': '12345678-abcd-1234-abcd-aabbccddeeff', 'HTTPStatusCode': 200, 'HTTPHeaders': {'x-amzn-requestid': '212345678-abcd-1234-abcd-aabbccddeeff', 'content-type': 'application/x-amz-json-1.1', 'content-length': '1038', 'date': 'Mon, 23 Nov 2020 04:59:38 GMT'}, 'RetryAttempts': 0}}

模型套件模型卡結構描述 (Studio)

與模型版本相關的所有詳細資訊都封裝在模型套件的模型卡中。模型套件的模型卡是 Amazon SageMaker 模型卡的特殊用途,其結構描述也經過簡化。模型套件模型卡結構描述顯示在下列可擴展下拉式清單中。

{ "title": "SageMakerModelCardSchema", "description": "Schema of a model package’s model card.", "version": "0.1.0", "type": "object", "additionalProperties": false, "properties": { "model_overview": { "description": "Overview about the model.", "type": "object", "additionalProperties": false, "properties": { "model_creator": { "description": "Creator of model.", "type": "string", "maxLength": 1024 }, "model_artifact": { "description": "Location of the model artifact.", "type": "array", "maxContains": 15, "items": { "type": "string", "maxLength": 1024 } } } }, "intended_uses": { "description": "Intended usage of model.", "type": "object", "additionalProperties": false, "properties": { "purpose_of_model": { "description": "Reason the model was developed.", "type": "string", "maxLength": 2048 }, "intended_uses": { "description": "Intended use cases.", "type": "string", "maxLength": 2048 }, "factors_affecting_model_efficiency": { "type": "string", "maxLength": 2048 }, "risk_rating": { "description": "Risk rating for model card.", "$ref": "#/definitions/risk_rating" }, "explanations_for_risk_rating": { "type": "string", "maxLength": 2048 } } }, "business_details": { "description": "Business details of model.", "type": "object", "additionalProperties": false, "properties": { "business_problem": { "description": "Business problem solved by the model.", "type": "string", "maxLength": 2048 }, "business_stakeholders": { "description": "Business stakeholders.", "type": "string", "maxLength": 2048 }, "line_of_business": { "type": "string", "maxLength": 2048 } } }, "training_details": { "description": "Overview about the training.", "type": "object", "additionalProperties": false, "properties": { "objective_function": { "description": "The objective function for which the model is optimized.", "function": { "$ref": "#/definitions/objective_function" }, "notes": { "type": "string", "maxLength": 1024 } }, "training_observations": { "type": "string", "maxLength": 1024 }, "training_job_details": { "type": "object", "additionalProperties": false, "properties": { "training_arn": { "description": "SageMaker Training job ARN.", "type": "string", "maxLength": 1024 }, "training_datasets": { "description": "Location of the model datasets.", "type": "array", "maxContains": 15, "items": { "type": "string", "maxLength": 1024 } }, "training_environment": { "type": "object", "additionalProperties": false, "properties": { "container_image": { "description": "SageMaker training image URI.", "type": "array", "maxContains": 15, "items": { "type": "string", "maxLength": 1024 } } } }, "training_metrics": { "type": "array", "items": { "maxItems": 50, "$ref": "#/definitions/training_metric" } }, "user_provided_training_metrics": { "type": "array", "items": { "maxItems": 50, "$ref": "#/definitions/training_metric" } }, "hyper_parameters": { "type": "array", "items": { "maxItems": 100, "$ref": "#/definitions/training_hyper_parameter" } }, "user_provided_hyper_parameters": { "type": "array", "items": { "maxItems": 100, "$ref": "#/definitions/training_hyper_parameter" } } } } } }, "evaluation_details": { "type": "array", "default": [], "items": { "type": "object", "required": [ "name" ], "additionalProperties": false, "properties": { "name": { "type": "string", "pattern": ".{1,63}" }, "evaluation_observation": { "type": "string", "maxLength": 2096 }, "evaluation_job_arn": { "type": "string", "maxLength": 256 }, "datasets": { "type": "array", "items": { "type": "string", "maxLength": 1024 }, "maxItems": 10 }, "metadata": { "description": "Additional attributes associated with the evaluation results.", "type": "object", "additionalProperties": { "type": "string", "maxLength": 1024 } }, "metric_groups": { "type": "array", "default": [], "items": { "type": "object", "required": [ "name", "metric_data" ], "properties": { "name": { "type": "string", "pattern": ".{1,63}" }, "metric_data": { "type": "array", "items": { "anyOf": [ { "$ref": "#/definitions/simple_metric" }, { "$ref": "#/definitions/linear_graph_metric" }, { "$ref": "#/definitions/bar_chart_metric" }, { "$ref": "#/definitions/matrix_metric" } ] } } } } } } } }, "additional_information": { "additionalProperties": false, "type": "object", "properties": { "ethical_considerations": { "description": "Ethical considerations for model users.", "type": "string", "maxLength": 2048 }, "caveats_and_recommendations": { "description": "Caveats and recommendations for model users.", "type": "string", "maxLength": 2048 }, "custom_details": { "type": "object", "additionalProperties": { "$ref": "#/definitions/custom_property" } } } } }, "definitions": { "source_algorithms": { "type": "array", "minContains": 1, "maxContains": 1, "items": { "type": "object", "additionalProperties": false, "required": [ "algorithm_name" ], "properties": { "algorithm_name": { "description": "The name of the algorithm used to create the model package. The algorithm must be either an algorithm resource in your SageMaker account or an algorithm in AWS Marketplace that you are subscribed to.", "type": "string", "maxLength": 170 }, "model_data_url": { "description": "Amazon S3 path where the model artifacts, which result from model training, are stored.", "type": "string", "maxLength": 1024 } } } }, "inference_specification": { "type": "object", "additionalProperties": false, "required": [ "containers" ], "properties": { "containers": { "description": "Contains inference related information used to create model package.", "type": "array", "minContains": 1, "maxContains": 15, "items": { "type": "object", "additionalProperties": false, "required": [ "image" ], "properties": { "model_data_url": { "description": "Amazon S3 path where the model artifacts, which result from model training, are stored.", "type": "string", "maxLength": 1024 }, "image": { "description": "Inference environment path. The Amazon Elastic Container Registry (Amazon ECR) path where inference code is stored.", "type": "string", "maxLength": 255 }, "nearest_model_name": { "description": "The name of a pre-trained machine learning benchmarked by an Amazon SageMaker Inference Recommender model that matches your model.", "type": "string" } } } } } }, "risk_rating": { "description": "Risk rating of model.", "type": "string", "enum": [ "High", "Medium", "Low", "Unknown" ] }, "custom_property": { "description": "Additional property.", "type": "string", "maxLength": 1024 }, "objective_function": { "description": "Objective function for which the training job is optimized.", "additionalProperties": false, "properties": { "function": { "type": "string", "enum": [ "Maximize", "Minimize" ] }, "facet": { "type": "string", "maxLength": 63 }, "condition": { "type": "string", "maxLength": 63 } } }, "training_metric": { "description": "Training metric data.", "type": "object", "required": [ "name", "value" ], "additionalProperties": false, "properties": { "name": { "type": "string", "pattern": ".{1,255}" }, "notes": { "type": "string", "maxLength": 1024 }, "value": { "type": "number" } } }, "training_hyper_parameter": { "description": "Training hyperparameter.", "type": "object", "required": [ "name", "value" ], "additionalProperties": false, "properties": { "name": { "type": "string", "pattern": ".{1,255}" }, "value": { "type": "string", "pattern": ".{1,255}" } } }, "linear_graph_metric": { "type": "object", "required": [ "name", "type", "value" ], "additionalProperties": false, "properties": { "name": { "type": "string", "pattern": ".{1,255}" }, "notes": { "type": "string", "maxLength": 1024 }, "type": { "type": "string", "enum": [ "linear_graph" ] }, "value": { "anyOf": [ { "type": "array", "items": { "type": "array", "items": { "type": "number" }, "minItems": 2, "maxItems": 2 }, "minItems": 1 } ] }, "x_axis_name": { "$ref": "#/definitions/axis_name_string" }, "y_axis_name": { "$ref": "#/definitions/axis_name_string" } } }, "bar_chart_metric": { "type": "object", "required": [ "name", "type", "value" ], "additionalProperties": false, "properties": { "name": { "type": "string", "pattern": ".{1,255}" }, "notes": { "type": "string", "maxLength": 1024 }, "type": { "type": "string", "enum": [ "bar_chart" ] }, "value": { "anyOf": [ { "type": "array", "items": { "type": "number" }, "minItems": 1 } ] }, "x_axis_name": { "$ref": "#/definitions/axis_name_array" }, "y_axis_name": { "$ref": "#/definitions/axis_name_string" } } }, "matrix_metric": { "type": "object", "required": [ "name", "type", "value" ], "additionalProperties": false, "properties": { "name": { "type": "string", "pattern": ".{1,255}" }, "notes": { "type": "string", "maxLength": 1024 }, "type": { "type": "string", "enum": [ "matrix" ] }, "value": { "anyOf": [ { "type": "array", "items": { "type": "array", "items": { "type": "number" }, "minItems": 1, "maxItems": 20 }, "minItems": 1, "maxItems": 20 } ] }, "x_axis_name": { "$ref": "#/definitions/axis_name_array" }, "y_axis_name": { "$ref": "#/definitions/axis_name_array" } } }, "simple_metric": { "description": "Metric data.", "type": "object", "required": [ "name", "type", "value" ], "additionalProperties": false, "properties": { "name": { "type": "string", "pattern": ".{1,255}" }, "notes": { "type": "string", "maxLength": 1024 }, "type": { "type": "string", "enum": [ "number", "string", "boolean" ] }, "value": { "anyOf": [ { "type": "number" }, { "type": "string", "maxLength": 63 }, { "type": "boolean" } ] }, "x_axis_name": { "$ref": "#/definitions/axis_name_string" }, "y_axis_name": { "$ref": "#/definitions/axis_name_string" } } }, "axis_name_array": { "type": "array", "items": { "type": "string", "maxLength": 63 } }, "axis_name_string": { "type": "string", "maxLength": 63 } } }

檢視和更新模型版本的詳細資訊 (Studio 或 Studio Classic)

若要檢視和更新模型版本的詳細資訊,請根據您是否使用 Studio 或 Studio Classic 完成下列步驟。在 Studio Classic 中,您可以更新模型版本的核准狀態。如需詳細資訊,請參閱 更新模型的核准狀態。另一方面,在 Studio 中為模型套件 SageMaker 建立模型卡,而模型版本 UI 提供更新模型卡中詳細資訊的選項。

Studio
  1. 按照啟動 Amazon SageMaker Studio 中的說明開啟 Studio 主控台。 SageMaker

  2. 在左側導覽窗格中,從功能表中選擇模型

  3. 如果尚未選取,請選擇已註冊模型索引標籤。

  4. 如果尚未選取,請在已註冊模型索引標籤標籤的正下方選擇模型群組

  5. 選取欲檢視模型版本所在的模型群組名稱。

  6. 在模型版本清單中,選取要檢視的模型版本。

  7. 選擇下列其中一個索引標籤。

    • 訓練 :檢視或編輯與訓練任務相關的詳細資訊,包括效能指標、成品、IAM角色和加密,以及容器。如需詳細資訊,請參閱新增訓練任務 (Studio)

    • 評估 :檢視或編輯訓練任務的相關詳細資訊,例如效能指標、評估資料集和安全性。如需詳細資訊,請參閱新增評估任務 (Studio)

    • 稽核 :檢視或編輯與模型業務目的、用量、風險和技術詳細資訊相關的高階詳細資訊,例如演算法和效能限制。如需詳細資訊,請參閱更新稽核 (治理) 資訊 (Studio)

    • 部署 :檢視或編輯推論映像容器的位置,以及編寫端點的執行個體。如需詳細資訊,請參閱更新部署資訊 (Studio)

Studio Classic
  1. 登入 Amazon SageMaker Studio Classic。如需詳細資訊,請參閱啟動 Amazon SageMaker Studio Classic

  2. 在左側的導覽窗格中,選擇首頁圖示 ( Black square icon representing a placeholder or empty image. )。

  3. 選擇模型,然後選擇模型註冊表

  4. 從模型群組清單中,選取要檢視的模型群組的名稱。

  5. 系統會顯示一個新標籤,其中包含模型群組中模型版本的清單。

  6. 在模型版本清單中,選取您要檢視其詳細資訊的模型版本名稱。

  7. 在系統開啟的模型版本標籤上,選擇下列其中一項,以查看與模型版本相關的詳細資訊:

    • 活動:展示模型版本的事件,例如核准狀態更新。

    • 模型品質:報告與透過模型監控檢查模型品質相關的指標,這些檢查會將模型預測與 Ground Truth 進行比較。如需與透過模型監控檢查模型品質相關的詳細資訊,請參閱模型品質

    • 可解釋性:報告與透過模型監控檢查功能屬性相關的指標,這些檢查會將訓練資料與即時資料中功能的相對排名進行比較。如需與透過模型監控檢查可解釋性相關的詳細資訊,請參閱生產中模型的功能屬性漂移

    • 偏差:報告與透過監控偏差檢查偏差漂移相關的指標,這些檢查會將即時資料與訓練資料的分佈進行比較。如需與透過模型監控檢查偏差漂移相關的詳細資訊,請參閱生產中模型的偏差偏離

    • 推論建議程式:根據您的模型和範例承載,提供初始執行個體建議,以取得最佳效能。

    • 負載測試:當您提供特定的生產需求 (例如延遲和輸送量限制) 時,針對您選擇的執行個體類型執行負載測試。

    • 推論規格 :顯示即時推論和轉換任務的執行個體類型,以及 Amazon ECR容器的相關資訊。

    • 資訊:展示與模型版本相關聯的專案、產生模型的管道、模型群組,以及 Amazon S3 中模型的位置等資訊。