本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
设置合作伙伴 AI 应用程序
以下主题描述了开始使用亚马逊 SageMaker 合作伙伴 AI 应用程序所需的权限。所需的权限分为两个部分,具体取决于用户权限级别:
-
管理权限 – 管理员设置数据科学家和机器学习(ML)开发人员环境所需的权限。
-
Amazon Web Services Marketplace
-
合作伙伴 AI 应用程序管理
-
Amazon License Manager
-
-
用户权限 – 数据科学家和机器学习开发人员的权限。
-
用户授权
-
身份传播
-
软件开发工具包访问
-
先决条件
管理员可以完成以下先决条件来设置合作伙伴 AI 应用程序。
-
(可选)加入 A SageMaker I 域。可以直接从 AI 域访问合作伙伴 A SageMaker I 应用程序。有关更多信息,请参阅 亚马逊 SageMaker AI 域名概述。
-
如果在仅限 VPC 模式的 A SageMaker I 域中使用合作伙伴 AI 应用程序,则管理员必须使用以下格式创建终端节点才能连接到合作伙伴 AI 应用程序。有关在仅限 VPC 模式下使用 Studio 的更多信息,请参阅将 VPC 中的 Amazon SageMaker Studio 连接到外部资源。
aws.sagemaker.region.partner-app
-
-
(可选)如果管理员使用与域进行交互Amazon CLI,则他们还必须满足以下先决条件。
-
Amazon CLI按照安装当前Amazon CLI版本中的步骤进行更新。
-
在本地计算机上运行
aws configure并提供 Amazon 凭证。有关Amazon证书的信息,请参阅了解和获取您的Amazon证书。
-
管理权限
管理员必须添加以下权限才能在 AI 中启用合作伙伴 A SageMaker I 应用程序。
-
允许完成合作伙伴 AI 应用程序的Amazon Web Services Marketplace订阅
-
设置合作伙伴 AI 应用程序执行角色
Amazon Web Services Marketplace订阅合作伙伴 AI 应用程序
管理员必须完成以下步骤才能为添加权限。Amazon Web Services Marketplace有关使用的信息Amazon Web Services Marketplace,请参阅买家使用入门Amazon Web Services Marketplace。
-
授予权限Amazon Web Services Marketplace。合作伙伴 AI 应用程序管理员需要这些权限才能从中购买合作伙伴 AI 应用程序的订阅Amazon Web Services Marketplace。要获得访问权限Amazon Web Services Marketplace,管理员必须将
AWSMarketplaceManageSubscriptions托管策略附加到他们用于访问 A SageMaker I 控制台和购买应用程序的 IAM 角色。有关AWSMarketplaceManageSubscriptions托管政策的详细信息,请参阅Amazon Web Services Marketplace买家Amazon托管政策。有关附加托管策略的信息,请参阅添加和删除 IAM 身份权限。 -
授予 A SageMaker I 使用其他Amazon Web Services 服务人代表管理员运行操作的权限。管理员必须授予 SageMaker AI 权限才能使用这些服务及其操作的资源。以下策略定义演示了如何授予所需的合作伙伴 AI 应用程序权限。除了管理员角色的现有权限外,还需具有这些权限。有关更多信息,请参阅 如何使用 SageMaker AI 执行角色。
设置合作伙伴 AI 应用程序执行角色
-
合作伙伴 AI 应用程序需要一个执行角色来与 Amazon Web Services 账户中的资源进行交互。管理员可以使用 Amazon CLI 创建此执行角色。合作伙伴 AI 应用程序使用此角色来完成与合作伙伴 AI 应用程序功能相关的操作。
aws iam create-role --role-name PartnerAiAppExecutionRole --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }' -
按照为 L Amazon License Manager icense Manager 创建服务相关角色中的步骤创建服务相关角色。
-
使用 Amazon CLI 授予合作伙伴 AI 应用程序访问 License Manager 的权限。需要这些权限才能访问合作伙伴 AI 应用程序的许可证。这可让合作伙伴 AI 应用程序验证对合作伙伴 AI 应用程序许可证的访问权限。
aws iam put-role-policy --role-name PartnerAiAppExecutionRole --policy-name LicenseManagerPolicy --policy-document '{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "license-manager:CheckoutLicense", "license-manager:CheckInLicense", "license-manager:ExtendLicenseConsumption", "license-manager:GetLicense", "license-manager:GetLicenseUsage" ], "Resource": "*" } }' -
如果合作伙伴 AI 应用程序需要访问 Amazon S3 存储桶,需向执行角色添加 Amazon S3 权限。有关更多信息,请参阅 Amazon S3 API 操作所需的权限。
配置 Amazon Bedrock 集成
合作伙伴 AI 应用程序(例如 Deepchecks)支持与 Amazon Bedrock 集成,以启用基于 LLM 的评估功能。在配置支持 Amazon Bedrock 的合作伙伴 AI 应用程序时,管理员可以指定哪些基础模型和推理配置文件可在应用程序中使用。如果您需要提高亚马逊 Bedrock 型号的配额限制,请参阅申请增加亚马逊 Bedrock 配额。
-
确保合作伙伴 AI 应用程序执行角色具有所需的 Amazon Bedrock 权限。添加以下权限以启用 Amazon Bedrock 模型访问权限:
aws iam put-role-policy --role-name PartnerAiAppExecutionRole --policy-name BedrockInferencePolicy --policy-document '{ "Version": "2012-10-17", "Statement": { "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetFoundationModel", "bedrock:GetInferenceProfile" ], "Resource": "*" } }' -
确定您的组织想要提供给合作伙伴 AI 应用程序的 Amazon Bedrock 模型。您可以使用 Amazon Bedrock 控制台查看您所在地区的可用型号。有关各地区模型可用性的信息,请参阅模型支持Amazon Web Services 区域。
-
(可选)创建客户管理的推理配置文件,用于成本跟踪和模型管理。推理配置文件允许您专门跟踪 Partner AI 应用程序的 Amazon Bedrock 使用情况,并且可以在当前区域没有模型时启用跨区域推理。有关更多信息,请参阅在 Amazon Bedrock 中使用推理配置文件。
-
创建或更新 Partner AI 应用程序时,请使用
CreatePartnerApp或UpdatePartnerAppAPI 指定允许的模型和推理配置文件。Partner AI 应用程序只能访问您明确配置的模型和推理配置文件。
重要
通过合作伙伴 AI 应用程序使用亚马逊 Bedrock 的费用将Amazon Web Services 账户使用您现有的亚马逊 Bedrock 定价直接向您收费。合作伙伴 AI 应用程序基础设施成本与 Amazon Bedrock 模型推理成本是分开的。
深度检查 Amazon Bedrock 集成
Deepchecks 支持 Amazon Bedrock 集成,以实现基于 LLM 的评估功能,包括:
-
法@@ 学硕士作为评判评估-使用基础模型自动评估模型输出的质量、相关性和其他标准
-
自动注记-使用基础模型为数据集生成标签和注释
-
内容分析-使用 LLM 功能分析文本数据的偏差、毒性和其他质量指标
有关 Deepchecks Amazon Bedrock 功能和配置的详细信息,请参阅应用程序中的 Deepchecks 文档。
用户权限
管理员在完成管理权限设置后,必须确保用户具有访问合作伙伴 AI 应用程序所需的权限。
-
授予 A SageMaker I 使用其他人代表您运行操作的权限Amazon Web Services 服务。管理员必须授予 SageMaker AI 权限才能使用这些服务及其操作的资源。管理员使用 IAM 执行角色向 A SageMaker I 授予这些权限。有关 IAM 角色的更多信息,请参阅 IAM 角色。以下策略定义演示了如何授予所需的合作伙伴 AI 应用程序权限。可将此策略添加到用户配置文件的执行角色中。 有关更多信息,请参阅 如何使用 SageMaker AI 执行角色。
-
(可选)如果从 Studio 启动合作伙伴 AI 应用程序,请将
sts:TagSession信任策略添加到用于启动 Studio 的角色,或直接将该策略添加到合作伙伴 AI 应用程序中,如下所示。这将确保身份能够正常传播。{ "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession" ] } -
(可选)如果使用合作伙伴 AI 应用程序的 SDK 来访问 SageMaker AI 中的功能,请向用于运行 SDK 代码的角色添加以下
CallPartnerAppApi权限。如果从 Studio 运行 SDK 代码,请向 Studio 执行角色添加权限。如果从 Studio 以外的任何其他位置运行代码,请向笔记本中使用的 IAM 角色添加权限。这可让用户从合作伙伴 AI 应用程序 SDK 访问合作伙伴 AI 应用程序的功能。
管理用户授权和身份验证
要向其团队成员提供对合作伙伴 AI 应用程序的访问权限,管理员必须确保其用户的身份正常传播到合作伙伴 AI 应用程序。此传播确保用户能够正常访问合作伙伴 AI 应用程序的用户界面,并执行授权的合作伙伴 AI 应用程序操作。
合作伙伴 AI 应用程序支持以下身份来源:
-
Amazon IAM Identity Center
-
外部身份提供商 (IdPs)
-
基于 IAM 会话的身份
以下各部分提供了有关合作伙伴 AI 应用程序支持的身份来源的信息,以及与该身份源相关的重要详细信息。
如果用户通过 IAM Identity Center 的身份验证后登录到 Studio,并从 Studio 启动应用程序,则 IAM Identity Center UserName 会自动以合作伙伴 AI 应用程序的用户身份传播。如果用户直接使用 CreatePartnerAppPresignedUrl API 启动合作伙伴 AI 应用程序,则情况并非如此。
如果使用 SAML 进行Amazon Web Services 账户联合,则管理员有两种选择可以将 IdP 身份作为合作伙伴 AI 应用程序的用户身份保留。有关设置Amazon Web Services 账户联合的信息,请参阅如何为联合身份验证配置 SAML 2.0
-
Princip@@ al 标签 — 管理员可以配置特定于 IDP 的 IAM Identity Center 应用程序,使其使用
PrincipalTag具有以下属性的会话传递登录Amazon会话中的身份信息。Name在使用 SAML 时,登录角色会话会使用 IAM 角色。要使用PrincipalTag,管理员必须将sts:TagSession权限添加至该登录角色以及 Studio 执行角色。有关PrincipalTag的更多信息,请参阅为身份验证响应配置 SAML 断言。https://aws.amazon.com/SAML/Attributes/PrincipalTag:SageMakerPartnerAppUser -
登录会话名称 – 管理员可以将登录会话名称作为合作伙伴 AI 应用程序的身份进行传播。为此,他们必须为每个合作伙伴 AI 应用程序设置
EnableIamSessionBasedIdentity选择加入标志。有关更多信息,请参阅 EnableIamSessionBasedIdentity。
重要
我们建议不将此方法用于生产账户。对于生产账户,请使用身份提供者以提高安全性。
SageMaker 在使用基于 IAM 会话的身份时,AI 支持以下身份传播选项。除了使用带有的会话标签外Amazon STS,所有选项都需要为每个应用程序设置EnableIamSessionBasedIdentity选择加入标志。有关更多信息,请参阅 EnableIamSessionBasedIdentity。
在传播身份时, SageMaker AI 会验证是否正在使用Amazon STS会话标签。如果未使用,则 SageMaker AI 会传播 IAM 用户名或Amazon STS会话名称。
-
Amazon STS会话标签-管理员可以为启动器 IAM
SageMakerPartnerAppUser会话设置会话标签。当管理员使用 AI 控制台或启动合作伙伴 SageMaker AI 应用程序时Amazon CLI,SageMakerPartnerAppUser会话标签会自动作为合作伙伴 AI 应用程序的用户身份传递。以下示例说明如何使用 Amazon CLI 设置SageMakerPartnerAppUser会话标签。键值将作为主体标签添加。aws sts assume-role \ --role-arn arn:aws:iam::account:role/iam-role-used-to-launch-partner-ai-app\ --role-session-name session_name \ --tags Key=SageMakerPartnerAppUser,Value=user-name当使用
CreatePartnerAppPresignedUrl授予用户访问合作伙伴 AI 应用程序的权限时,我们建议您验证SageMakerPartnerAppUser键的值。这有助于防止对合作伙伴 AI 应用程序资源的意外访问。以下信任策略可验证会话标签是否与关联的 IAM 用户完全匹配。管理员可使用任意主体标签来实现此目的。应在启动 Studio 的角色或合作伙伴 AI 应用程序上进行此项配置。 -
经过身份验证的 IAM 用户 – 用户的用户名将自动作为合作伙伴 AI 应用程序用户进行传播。
-
Amazon STS会话名称-如果在使用时未配置
SageMakerPartnerAppUser会话标签Amazon STS,则当用户启动合作伙伴 SageMaker AI 应用程序时,AI 会返回错误。要避免此错误,管理员必须为每个合作伙伴 AI 应用程序设置EnableIamSessionBasedIdentity选择加入标志。有关更多信息,请参阅 EnableIamSessionBasedIdentity。启用
EnableIamSessionBasedIdentity选择加入标志后,可使用 IAM 角色信任策略确保 IAM 会话名称是 IAM 用户名或包含 IAM 用户名。这可确保用户无法通过冒充其他用户来获取访问权限。以下信任策略可验证会话名称是否与关联的 IAM 用户完全匹配。管理员可使用任意主体标签来实现此目的。应在启动 Studio 的角色或合作伙伴 AI 应用程序上进行此项配置。管理员还必须将
sts:TagSession信任策略添加到启动 Studio 的角色或合作伙伴 AI 应用程序中。这将确保身份能够正常传播。{ "Effect": "Allow", "Principal": { "Service": "sagemaker.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession" ] }
设置凭证后,管理员可以分别Amazon CLI使用或 API 调用向其用户授予访问 Studio CreatePresignedDomainUrl 或 Partner A CreatePartnerAppPresignedUrl I 应用程序的权限。
然后,用户还可以从 SageMaker AI 控制台启动 Studio,并从 Studio 启动合作伙伴 AI 应用程序。
EnableIamSessionBasedIdentity
EnableIamSessionBasedIdentity 是一个选择加入标志。设置该EnableIamSessionBasedIdentity标志后,A SageMaker I 会将 IAM 会话信息作为合作伙伴 AI 应用程序用户身份传递。有关Amazon STS会话的更多信息,请参阅在Amazon资源中使用临时证书。
访问控制
要控制对合作伙伴 AI 应用程序的访问权限,请使用附加到用户配置文件的执行角色的 IAM 策略。要直接从 Studio 或使用启动合作伙伴 AI 应用程序Amazon CLI,则用户个人资料的执行角色必须具有授予 CreatePartnerAppPresignedUrl API 权限的策略。从用户配置文件的执行角色中移除此权限,以确保他们无法启动合作伙伴 AI 应用程序。
根管理员用户
Comet 和 Fiddler 合作伙伴 AI 应用程序需要至少一个根管理员用户。根管理员用户有权添加普通用户和管理员用户以及管理资源。作为根管理员用户提供的用户名必须与身份来源的用户名一致。
虽然根管理员用户保留在 SageMaker AI 中,但在合作伙伴 AI 应用程序终止之前,普通管理员用户不是,并且仅存在于合作伙伴 AI 应用程序中。
管理员可以使用 UpdatePartnerApp API 调用更新根管理员用户。在更新根管理员用户后,更新后的根管理员用户列表将传递给合作伙伴 AI 应用程序。合作伙伴 AI 应用程序可确保列表中的所有用户名都被授予根管理员权限。如果从列表中移除某个根管理员用户,则该用户仍会保留普通管理员权限,直到:
-
从应用程序中移除该用户。
-
另一个管理员用户撤销了该用户的管理员权限。
注意
Fiddler 不支持更新管理员用户。仅 Comet 支持对根管理员用户进行更新。
要删除根管理员用户,必须先使用 UpdatePartnerApp API 更新根管理员用户的列表。然后,通过合作伙伴 AI 应用程序的用户界面移除或撤销管理员权限。
如果您在未使用 UpdatePartnerApp API 更新根管理员用户列表的情况下,从合作伙伴 AI 应用程序的用户界面中移除一个根管理员用户,则此更改为临时更改。当 SageMaker AI 发送下一个合作伙伴 AI 应用程序更新请求时, SageMaker AI 会将仍包含该用户的根管理员列表发送到合作伙伴 AI 应用程序。这会覆盖从合作伙伴 AI 应用程序用户界面中完成的删除操作。