AWS Machine Learning Blog

Manage private pricing offers for Amazon Bedrock with managed entitlements

6.9内容质量
Manage private pricing offers for Amazon Bedrock with managed entitlements

TL;DR · AI 摘要

Manage private pricing offers for Amazon Bedrock with managed entitlements Artificial Intelligence Manage private pricin...

核心要点

  • 主题聚焦:Manage private pricing offers for Amazon Bedrock
  • 来源:AWS Machine Learning Blog,建议结合原文判断细节。
  • AI 分析暂不可用,本条为保底评分与摘要。
#AI#编程#后端#云计算#安全
打开原文

使用托管授权管理 Amazon Bedrock 的私有定价优惠 | 人工智能

使用托管授权管理 Amazon Bedrock 的私有定价优惠

在数十个或数百个 AWS 账户之间管理 AI 模型访问时,每个工作负载账户必须单独订阅并接受 AWS Marketplace 私有定价优惠(MPPO),这会带来运营摩擦。通过托管授权的 Amazon Bedrock 简化了第三方 AI 模型的多账户访问,您只需从中心账户订阅一次,即可在组织内分发访问权限。

在本文中,我们将展示两种在 AWS License Manager 中激活 AWS Marketplace 私有定价优惠(MPPO)授权的方法。当您需要对已信任的许可证进行一次性且无需基础设施的修复时,使用轻量级脚本。当您需要持续的事件驱动处理以验证卖家、创建并激活分布式授权时,使用 CDK 自动化。

为什么需要自动化授权激活

通过 AWS Marketplace 私有定价优惠,您可以为 Amazon Bedrock 上的第三方模型协商自定义费率。在符合条件的私有优惠被接受后,AWS Marketplace 会在 AWS License Manager 中创建许可证。在启用了所有功能的 AWS Organizations 中,组织级授权会自动接受,但需要您激活后才会启用。

团队通常通过检查 AWS License Manager 控制台并手动激活授权来管理此流程。手动检查虽然可行,但会增加工作量且容易遗漏。在有人激活授权之前,协商后的定价不会生效。当团队采用新模型或续订条款时,同样的工作量也会重复出现。

解决方案概述

示例仓库提供了两种路径:

  • 路径 1 – 轻量级路径:这是一个独立脚本,列出已接收的许可证并打印预演计划。只有在重新运行时使用 --apply --confirm-account-id 参数,才会创建并激活全组织范围的授权。由于没有卖家白名单,仅在您信任管理账户中所有已接收许可证时使用此路径。
  • 路径 2 – 事件驱动路径:使用 AWS Cloud Development Kit(AWS CDK)在您的 AWS 管理账户中部署持续自动化。

选择以下实现路径之一。若无需 CDK 且仅需一次性激活,请使用路径 1。若需要持续的事件驱动自动化,请使用路径 2。

路径 1:轻量级脚本(一次性激活)

当您需要在不部署 CDK 的情况下进行一次性激活时使用此路径。该脚本会列出管理账户中所有已接收的许可证,因此在应用更改前请先使用预演模式进行审查。

  • 将示例仓库克隆到本地并进入项目目录。
bash
  git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git
  cd sample-bedrock-managed-entitlements
  • 在预演模式下运行轻量级脚本。
bash
  python3 lightweight/distribute_licenses.py
  • 审查列出的每项许可证,确认 ISV 合作伙伴发行方和账户范围是否与您预期的私有优惠匹配。
  • 从同一 AWS Organizations 管理账户应用已审查的计划。
bash
  python3 lightweight/distribute_licenses.py --apply --confirm-account-id ACCOUNT_ID
  • 在授予生效后,使用私有优惠前,请先验证计费路径。AWS Cost Explorer中的计费数据可能存在延迟,因此请在计费信息出现后,使用该工具对比覆盖的Amazon Bedrock使用情况的实际收费。为实现可重复验证,可调整示例脚本/bedrock_discount_check.py工具,适配您的ISV合作伙伴发行人并确认预期的折扣路径。

路径2:CDK自动化(持续激活)

当您希望自动处理新的私有定价协议时使用此路径。CDK堆栈监听符合条件的AWS Marketplace协议事件,检查卖家白名单,创建分布式授权,并在License Manager需要更多时间时重试激活。该解决方案包含三个组件:

  • Amazon EventBridge规则:堆栈在us-east-1区域的默认事件总线中监听AWS Marketplace协议事件。该规则匹配来源aws.agreement-marketplace和详细类型Purchase Agreement Created - Acceptor,然后调用AWS Lambda函数。
  • AWS Lambda函数:该函数接收AWS Marketplace协议事件,验证卖家白名单,发现许可证,创建分布式授权,并通过CreateGrantVersion(Status=ACTIVE)请求激活。该函数将结果记录到Amazon CloudWatch Logs以供审计。
  • AWS License Manager授权:授权针对您的组织、选定的组织单元(OUs)或特定账户。协商定价仅在授权激活并达到ACTIVE或WORKFLOW_COMPLETED状态后生效。

下图展示了事件驱动的流程。

Figure 1: 序列图显示AWS Marketplace向Amazon EventBridge发送Purchase Agreement Created – Acceptor事件,该事件调用AWS Lambda函数。该函数验证卖家,发现收到的许可证,创建分布式授权,通过CreateGrantVersion(Status=ACTIVE)请求激活,并将结果写入Amazon CloudWatch Logs。

此方法的关键优势:

  • 更快实现协商定价。分布式授权达到ACTIVE或WORKFLOW_COMPLETED状态后,协商费率立即生效,无需等待手动控制台检查。
  • 账户间处理一致性。相同的AWS Lambda函数和Amazon EventBridge规则模式可部署到每个接收第三方模型授权的组织,因此激活逻辑不会因操作者不同而变化。
  • 内置审计追踪。每次激活尝试或跳过决策都会记录到CloudWatch Logs,为您提供每个授权激活、延迟或忽略的时间记录。

#### 先决条件

部署此路径前,请确认以下先决条件:

  • 使用在us-east-1区域中配置了Python 3.12+、AWS命令行界面(AWS CLI)和AWS CDK v2的AWS Organizations管理账户。
  • 确认AWS Organizations启用了所有功能,并且私有优惠针对的是基于License Manager的Bedrock模型。软件即服务(SaaS)产品不在此次自动化范围内。

#### 实施步骤

  • 验证或启用组织先决条件。python3 scripts/bootstrap_prereqs.py --check --region us-east-1 在进行更改前检查所有APPLY或MANUAL项。引导脚本可启用License Manager组织集成、License Manager可信访问、AWS Marketplace license-management可信访问以及所需的服务关联角色。python3 scripts/bootstrap_prereqs.py --apply --region us-east-1 --confirm-account-id ACCOUNT_ID
  • 配置部署参数。python3 scripts/setup_config.py 检查config/sellers.json文件。配置您的组织ID、卖家白名单、通知和可选的授权目标。默认情况下,授权作用于整个组织。使用grantTargets参数可将授权范围限定到特定OU或AWS账户。
  • 部署CDK堆栈。cd cdk pip install -r requirements.txt cdk bootstrap aws://ACCOUNT_ID/us-east-1 cdk deploy
  • 从config/sellers.json文件初始化Amazon DynamoDB卖家白名单。cd .. python scripts/seed_sellers.py --config config/sellers.json 将卖家白名单视为安全边界。在初始化表之前,需将每个卖家账户ID与您接受的AWS Marketplace私有报价或接收到的License Manager许可证进行验证。不要添加未经验证的广泛卖家条目,因为匹配的卖家可能在配置的授权目标中触发授权创建和激活。部署和卖家初始化完成后,堆栈即可处理符合条件的AWS Marketplace协议事件。仅已验证的白名单卖家会触发授权创建和激活,且激活可能延迟到License Manager完成授权工作流处理后才会执行。
  • 验证部署的自动化流程。python scripts/e2e_validate.py --org-id o-xxxxxxxxxx --seller-account SELLER_ACCOUNT_ID --simulate
  • 验证符合条件的AWS Marketplace协议事件后的授权激活状态。aws logs tail /aws/lambda/mppo-grants-handler --follow --region us-east-1 python scripts/bedrock_discount_check.py --issuer "ISV Partner" 激活和计费可见性可能需要数小时或数天。事件驱动的工作流接受并激活授权后,请在AWS License Manager中确认授权状态,然后在计费数据出现后,使用AWS Cost Explorer验证覆盖的Amazon Bedrock使用情况。如需可重复检查,可将示例脚本scripts/bedrock_discount_check.py调整为匹配您的ISV Partner发行方和目标关联账户。

清理

如果仅为测试部署了此堆栈,请删除以避免持续的Lambda和Amazon EventBridge费用:

code
cdk destroy

客户心声

“作为每周支持数百万临床咨询的AI Care合作伙伴,Heidi Health依赖于在真实场景中大规模使用第三方基础模型。AWS Marketplace的私有定价为我们提供了一种高效且经济的方式管理增长:我们可以精细地在AWS账户和组织单元之间分配使用量和定价,并在采用新模型时自动化授权管理。这使我们的平台团队能够在不增加人工工作量的情况下扩展成本治理。” — Heidi Health平台工程部负责人Marcus Lau

结论

本文介绍了两种激活 Amazon Bedrock 私有定价优惠的托管授权方法。可通过轻量级脚本实现可信接收许可证的一次性激活,或在需要对新 AWS Marketplace 协议进行持续事件驱动处理时部署 CDK 自动化。这两种方法都能减少人工操作,并确保分布式授权激活后适用协商定价。

要开始使用,请在您的 AWS 管理账户中尝试代码示例,以实现模型订阅的自动化。

资源

关于作者

'\"`