跳到正文
AWS Machine Learning Blog· Daniel Wirjo·· 20 天前AI 评分22

用托管权益管理 Amazon Bedrock 私有定价优惠

Manage private pricing offers for Amazon Bedrock with managed entitlements

AI 导读

Amazon Bedrock 的托管权益(managed entitlements)支持从中心账户一次性订阅 AWS Marketplace 私有定价优惠(MPPO),再把第三方模型访问权限分发到组织内多个 AWS 账户。

正文· AI 翻译

当每个工作负载账户都必须单独订阅并接受 AWS Marketplace 私有定价优惠(MPPO)时,跨数十或数百个 AWS 账户管理 AI 模型访问会产生运维摩擦。Amazon Bedrock 与托管权益简化了对第三方 AI 模型的多账户访问,因此你可以从一个中心账户订阅一次,并在整个组织中分发访问权限。

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

为什么要自动化授权激活

借助 AWS Marketplace 私有定价优惠,你可以为 Amazon Bedrock 上的第三方模型协商自定义费率。在接受符合条件的私有优惠后,AWS Marketplace 会在 AWS License Manager 中创建许可证。在启用了所有功能的 AWS Organizations 中,组织级授权会被自动接受,但在你激活之前会保持为 Disabled 状态。

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

解决方案概览

示例仓库提供两条路径:

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

选择以下实现路径之一。使用路径 1 进行无需 CDK 的一次性激活。使用路径 2 进行持续的事件驱动自动化。

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

当你需要在不部署 CDK 的情况下进行一次性激活时,请使用此路径。该脚本会列出管理账户中所有已接收的许可证,因此请将试运行作为应用更改前的审查关口。

  1. Clone the sample repository locally and move into the project directory.
    git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git
    cd sample-bedrock-managed-entitlements
  2. Run the lightweight script in dry-run mode.
    python3 lightweight/distribute_licenses.py
  3. 审查列出的每个许可证,并确认 ISV Partner 签发者和账户范围与你预期的私有优惠匹配。
  4. Apply the reviewed plan from the same AWS Organizations management account.
    python3 lightweight/distribute_licenses.py --apply --confirm-account-id ACCOUNT_ID
  5. 授权激活后,在生产环境中依赖私有优惠之前,请验证计费路径。AWS Cost Explorer 中的计费数据可能会有延迟,因此请在费用出现后使用它来比较所涵盖的 Amazon Bedrock 用量的实际收费。如需可重复的检查,请调整示例 scripts/bedrock_discount_check.py 工具,使其匹配你的 ISV Partner 签发者并确认预期的折扣路径。

路径 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 权益:该授权面向您的组织、选定的组织单位(OU)或特定账户。协商定价仅在授权激活并达到 ACTIVE 或 WORKFLOW_COMPLETED 后适用。

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

Sequence diagram showing AWS Marketplace sending a Purchase Agreement Created - Acceptor event to Amazon EventBridge, which invokes an AWS Lambda function. The function verifies the seller, discovers the received license, creates a distributed grant, requests activation with CreateGrantVersion(Status=ACTIVE), and writes the outcome to Amazon CloudWatch Logs.

图 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 中使用 AWS Organizations 管理账户,并配置 Python 3.12+、AWS Command Line Interface (AWS CLI) 和 AWS CDK v2。
  • 确认 AWS Organizations 启用了所有功能,并且私有优惠针对的是由 License Manager 支持的 Bedrock 模型。软件即服务(SaaS)产品不在本自动化的范围内。

实施步骤

  1. Clone the sample repository locally and move into the project directory.
    git clone https://github.com/aws-samples/sample-bedrock-managed-entitlements.git
    cd sample-bedrock-managed-entitlements
  2. Verify or enable organization prerequisites.
    python3 scripts/bootstrap_prereqs.py --check --region us-east-1

    在进行更改之前,请检查任何 APPLY 或 MANUAL 项。引导脚本可以启用 License Manager 组织集成、License Manager 可信访问、AWS Marketplace 许可证管理可信访问以及所需的服务关联角色。

    python3 scripts/bootstrap_prereqs.py --apply --region us-east-1 --confirm-account-id ACCOUNT_ID
  3. Configure deployment inputs.
    python3 scripts/setup_config.py

    检查 config/sellers.json。配置您的组织 ID、卖家允许列表、通知和可选的授权目标。默认情况下,授权面向整个组织。使用 grantTargets 将授权范围限定为选定的 OU 或 AWS 账户。

  4. Deploy the CDK stack.
    cd cdk
    pip install -r requirements.txt
    cdk bootstrap aws://ACCOUNT_ID/us-east-1
    cdk deploy
  5. Seed the Amazon DynamoDB seller allow-list from config/sellers.json.
    cd ..
    python scripts/seed_sellers.py --config config/sellers.json

    将卖家允许列表视为安全边界。在填充表之前,请根据您接受的 AWS Marketplace 私有优惠或收到的 License Manager 许可证验证每个卖家账户 ID。不要添加宽泛或未经验证的卖家条目,因为匹配的卖家可能会在您配置的授权目标上触发授权创建和激活。

    部署并填充卖家后,该堆栈即可处理符合条件的 AWS Marketplace 协议事件。授权创建和激活仅对允许列表中已验证的卖家进行,并且激活可能会推迟到 License Manager 完成授权工作流处理之后。

  6. Validate the deployed automation.
    python scripts/e2e_validate.py --org-id o-xxxxxxxxxx --seller-account SELLER_ACCOUNT_ID --simulate
  7. Verify grant activation after an eligible AWS Marketplace agreement event.
    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 费用:

cdk destroy

客户之声

“作为每周支持数百万次临床医生咨询的 AI Care Partner,Heidi Health 依赖第三方基础模型进行真实规模的运营。AWS Marketplace 上的私有定价为我们提供了一种经济高效的方式来管理这种增长:我们可以跨 AWS 账户和组织单位精细归因用量和定价,并在采用新模型时自动管理授权。这使我们的平台团队能够扩展成本治理,而无需扩展人工工作。”

— Marcus Lau,Heidi Health 平台工程负责人

结论

本文展示了两种为 Amazon Bedrock 私有定价优惠激活托管权益的方法。使用轻量级脚本对受信任的已接收许可证进行一次性激活,或在需要对新 AWS Marketplace 协议进行持续事件驱动处理时部署 CDK 自动化。两种方法都能减少人工操作,并有助于在分布式授权激活后应用协商定价。

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

资源


关于作者

Daniel Wirjo

Daniel Wirjo

Daniel 是 AWS 的解决方案架构师,专注于 AI 和 SaaS 初创公司。作为前初创公司 CTO,他乐于与创始人和工程领导者合作,推动 AWS 上的增长和创新。工作之余,Daniel 喜欢手捧咖啡散步、欣赏自然、学习新想法。

Daniel Quang

Daniel Quang

Daniel 是 AWS Frontier AI Startups 团队的解决方案架构师,帮助全球最大、最具战略意义的 GenAI 初创公司在云上扩展其基础设施。他拥有加州大学欧文分校计算机科学博士学位,研究方向为机器学习和生物信息学。

Bryn Price

Bryn Price

Bryn 是一位技术专家、滑翔伞飞行员,也是 AWS 的首席解决方案架构师。他在电信、银行和软件领域拥有 20 多年的经验,近年来深入应用 AI 领域,设计并构建生产环境中的多智能体 AI 产品,帮助客户从试验生成式 AI 转向大规模交付。他热爱挑战重力,也乐于讨论从智能体架构到 AI 如何重塑软件工程本身的各种话题。

Cai Liu

Cai Liu

Cai 是 AWS License Manager 团队的软件开发工程师。

来源:AWS Machine Learning Blog · aws.amazon.com阅读原文

相关阅读

专题与标签

相关资讯专题