本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
给予亚马逊 SageMaker 澄清作业访问 Amazon VPC 中的资源的访问权限
要控制对数据的访问, SageMaker 要澄清作业,建议您创建一个私有 Amazon VPC,并将其配置为不可通过公有 Internet 访问您的作业。有关创建和配置 Amazon VPC 以处理作业的信息,请参阅授予权 SageMaker 处理作业访问 Amazon VPC 中的资源的访问权限.
本文档介绍了如何添加满足以下要求的其他 Amazon VPC 配置 SageMaker 澄清工作。
配置 SageMaker 澄清 Job VPC 访问权限的作业
在为其配置私有 Amazon VPC 时,您需要指定子网和安全组 SageMaker 澄清工作并使工作能够从 SageMaker 计算训练后偏差指标和功能贡献时的模型,以帮助解释模型预测。
SageMaker 澄清 Job Amazon VPC 子网和安全组
您的私有 Amazon VPC 中的子网和安全组可以分配给 SageMaker 根据你创造工作的方式,以各种方式澄清工作。
-
SageMaker 控制台:在中创建作业时需要提供此信息SageMaker 控制板. 从处理菜单,选择处理任务,然后选择创建处理任务. 选择VPC中的选项网络面板并使用下拉列表提供子网和安全组。确保此面板中提供的网络隔离选项设置为禁用。
-
SageMaker API:使用
NetworkConfig.VpcConfig的请求参数CreateProcessingJobAPI,如以下示例所示:"NetworkConfig": { "VpcConfig": { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] } } -
Python 开发工具包:使用
NetworkConfig的参数SageMakerClarifyProcessorAPI 或 ProcessorAPI,如以下示例所示: from sagemaker.network import NetworkConfig network_config = NetworkConfig( subnets=[ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2", ], security_group_ids=[ "sg-0123456789abcdef0", ], )
SageMaker 使用信息创建网络接口并将其附加到 SageMaker 澄清工作。网络接口提供 SageMaker 使用 Amazon VPC 中未连接到公共 Internet 的网络连接来澄清工作。他们还启用 SageMaker 澄清连接到私有 Amazon VPC 中的资源的作业。
配置模型亚马逊 VPC 以进行推理
为了计算训练后的偏差指标和可解释性, SageMaker 澄清工作需要从中获取推理 SageMaker 由model_name的参数分析配置(对于 ) SageMaker 澄清处理作业。或者,如果你使用SageMakerClarifyProcessor中的 API SageMaker Python SDK,工作需要获得model_name由ModelConfig
两者的网络隔离选项 SageMaker 澄清作业并且模型必须被禁用(默认情况下该选项处于禁用状态),以便 SageMaker 澄清作业可以与影子端点进行通信。
要将您的私有 Amazon VPC 中的子网和安全组指定到 SageMaker 模型,请使用VpcConfig的请求参数CreateModel使用 API 或提供此信息在创建模型时提供此信息。 SageMaker 控制台中的控制面板。以下是您在调用 CreateModel 时将包含的 VpcConfig 参数的示例:
"VpcConfig": { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] }
您可以指定要使用启动的影子终端节点的实例数量。initial_instance_count的参数分析配置(对于 ) SageMaker 澄清处理作业。或者,如果你使用SageMakerClarifyProcessor中的 API SageMaker Python SDK,工作需要获得instance_count由ModelConfig
即使在创建影子终端节点时只请求一个实例,模型中至少需要两个子网ModelConfig
ClientError:托管端点 SageMaker-CLARIFY 端点-XXX 时出错:失败。原因:无法找到至少 2 个具有请求实例类型 YYY 且与 SageMaker 子网。
如果您的模型需要 Amazon S3 中的模型文件,则模型 Amazon VPC 需要具有 Amazon S3 VPC 终端节点。有关创建和配置 Amazon VPC 的更多信息。 SageMaker 模型,请参阅授予权 SageMaker 托管终端节点对 Amazon VPC 中的资源的访问权限.
为配置私有 Amazon VPC SageMaker 澄清工作
通常,您可以按照中的步骤进行操作配置私有 VPC SageMaker 处理为您的私有 Amazon VPC 配置 SageMaker 澄清工作。下面是一些亮点内容和特殊要求 SageMaker 澄清工作。
Connect 到 Amazon VPC 之外的资源
如果您将 Amazon VPC 配置为其不具有公共互联网访问权限,则需要进行一些额外的设置才能授予 SageMaker 澄清作业对亚马逊 VPC 外部资源和服务的访问权限。例如,需要 Amazon S3 VPC 终端节点,因为 SageMaker 澄清任务需要从 S3 存储桶加载数据集以及将分析结果保存到 S3 存储桶。有关更多信息,请参阅 。创建 Amazon S3 VPC 终端节点用于创作指南。另外,如果 SageMaker 澄清工作需要从影子端点获得推断,然后它需要再调用几个Amazon服务。
-
创建 Amazon SageMaker API 服务 VPC 终端节点:这些区域有: SageMaker 澄清工作需要致电亚马逊 SageMaker API 服务来操纵影子终端节点或描述 SageMaker 亚马逊 VPC 验证的模型。您可以按照中提供的指南进行操作保护所有亚马逊 SageMaker 使用 API 调用AmazonPrivateLink
创建亚马逊的博客 SageMaker API VPC 终端节点,允许 SageMaker 澄清工作以拨打服务电话。请注意,亚马逊的服务名称 SageMaker API 服务是 com.amazonaws.其中,region.sagemaker.api领域是您的亚马逊 VPC 所在地区的名称。 -
创建 Amazon SageMaker 运行时 VPC 端节点:这些区域有: SageMaker 澄清任务需要调用 Amazon SageMaker 运行时服务,该服务将调用路由到影子终端节点。设置步骤与亚马逊的设置步骤类似 SageMaker API 服务。请注意,亚马逊的服务名称 SageMaker Runtime 服务
com.amazonaws.其中,region.sagemaker.runtime领域是您的亚马逊 VPC 所在地区的名称。
配置 Amazon VPC 安全组
使用以下方式之一指定两个或多个处理实例时,SageMaker Clarity 作业支持分布式处理:
-
SageMaker 控制台:这些区域有:实例计数已在资源配置的一部分Job 设置上的面板创建处理任务页.
-
SageMaker API:这些区域有:
InstanceCount在使用创建作业时指定CreateProcessingJobAPI。 -
Python 开发工具包:这些区域有:
instance_count在使用SageMakerClarify 处理器API 或处理器 API。
在分布式处理中,您必须允许同一处理作业中的不同实例之间进行通信。为此,请为您的安全组配置规则,以允许同一安全组的成员之间实现入站连接。想要了解有关信息,请参阅安全组规则.