View a markdown version of this page

工作空间 () Anthropic-compatible - Amazon Bedrock

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

工作空间 () Anthropic-compatible

Amazon Bedrock Workspaces 使用终端节点上的 Anthropic-compatible 消息 API 为您的生成式 AI 工作负载提供应用程序级隔离。bedrock-mantleWorkspaces 使您能够对 AI 应用程序进行细分,以实现成本跟踪、可观察性和访问控制。

注意

工作空间只能与在bedrock-mantle端点上支持消息 API 的模型一起使用。要查看哪些型号支持消息 API,请参阅Amazon Bedrock 支持的 API

如果您使用的是 OpenAI-compatible API(响应 API、聊天完成),请项目 (OpenAI-compatible)改用。

什么是工作空间?

工作区是一个逻辑边界,用于在使用 Anthropic Messages API 时在 Amazon Bedrock 中隔离应用程序、环境或实验等工作负载。工作空间与底层资源相同项目 (OpenAI-compatible),它们使用 Projects API 进行管理,并提供相同的功能:

Workspaces 允许您在生产环境中管理多个生成式 AI 工作负载,无需创建单独的 AWS 账户或组织,从而降低运营复杂性,同时保持安全性和治理。

每个 AWS 账户都有一个默认的工作空间(项目),所有推理请求都与之关联。您可以使用 Projects API 创建其他工作空间,并使用anthropic-workspace标头在消息 API 请求中引用它们。

何时使用工作区

当你需要执行以下操作时,你应该使用工作区:

  • 按业务结构整理:根据您的组织分类(例如业务部门、团队、应用程序或成本中心)管理 Amazon Bedrock 的使用情况

  • 准确跟踪成本:监控人工智能支出并将其分配给特定团队、项目或环境

  • 强制执行访问策略:应用精细的 IAM 权限来控制谁可以访问特定 AI 工作负载

  • 扩展生产工作负载:在明确的运营界限和监控的情况下运行多个生产应用程序

工作空间与项目

工作空间和项目 (OpenAI-compatible)是相同的底层资源,两者都通过 Projects API 进行管理。不同之处在于你在推理请求中如何引用它们,具体取决于你使用的 API:

功能 Workspaces Projects
支持的 API 人类信息 API OpenAI-compatible API(回复、聊天完成)
端点 bedrock-mantle.{region}.api.aws/anthropic/v1/messages bedrock-mantle.{region}.api.aws/v1
标题 anthropic-workspace: {project-id} OpenAI-Project: {project-id}
管理 API 项目 API 项目 API
访问控制 在 IAM 策略中将项目作为资源 在 IAM 策略中将项目作为资源
成本跟踪 AWS 项目上的标签 AWS 项目上的标签

工作空间入门

本部分将指导您创建工作空间、将其与 Messages API 请求关联以及验证您的设置。

先决条件

在开始之前,请确保您满足以下条件:

  • 具有 Amazon Bedrock 访问权限的 AWS 账户

  • 创建和管理 Amazon Bedrock 项目的 IAM 权限

  • 用于 Amazon Bedrock 身份验证的 API 密钥

  • 访问 Claude 模型(参见请求访问模型

第 1 步:设置环境

使用您的 Amazon Bedrock 凭证配置您的环境变量:

export BEDROCK_API_KEY="<your-bedrock-key>" export BEDROCK_REGION="us-east-1"

步骤 2:创建工作区

工作空间是使用项目 API 创建的。创建一个带有名称和标签的工作空间(项目),用于成本监控:

curl -X POST "https://bedrock-mantle.$BEDROCK_REGION.api.aws/v1/organization/projects" \ -H "Authorization: Bearer $BEDROCK_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "name": "Claude Chatbot Production", "tags": { "Application": "CustomerChatbot", "Environment": "Production", "Team": "NLPEngineering", "CostCenter": "41250" } }'

响应:

{ "arn": "arn:aws:bedrock-mantle:us-east-1:123456789012:project/proj_abc123def456", "created_at": 1772135628, "id": "proj_abc123def456", "name": "Claude Chatbot Production", "object": "organization.project", "status": "active", "tags": { "Application": "CustomerChatbot", "Environment": "Production", "Team": "NLPEngineering", "CostCenter": "41250" } }

请注意该id字段 — 这是您在anthropic-workspace标题中传递的值。

步骤 3:将请求与您的工作区关联

要将您的 Messages API 请求与工作空间相关联,请在anthropic-workspace标题中添加项目 ID:

curl
curl -X POST "https://bedrock-mantle.$BEDROCK_REGION.api.aws/anthropic/v1/messages" \ -H "x-api-key: $BEDROCK_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "anthropic-workspace: proj_abc123def456" \ -H "Content-Type: application/json" \ -d '{ "model": "anthropic.claude-sonnet-4-6-v1", "max_tokens": 1024, "messages": [ {"role": "user", "content": "Hello, how can you help me today?"} ] }'
Python (Anthropic SDK)
import anthropic client = anthropic.Anthropic( base_url=f"https://bedrock-mantle.{region}.api.aws/anthropic", api_key=bedrock_api_key, ) response = client.messages.create( model="anthropic.claude-sonnet-4-6-v1", max_tokens=1024, extra_headers={"anthropic-workspace": "proj_abc123def456"}, messages=[ {"role": "user", "content": "Hello, how can you help me today?"} ] ) print(response.content[0].text)

使用相同的工作空间 ID 发出的所有推理请求都归为一组,从而实现了每个工作空间的成本跟踪、访问控制和可观察性。

步骤 4:验证您的工作区设置

列出所有工作空间(项目)以验证您的工作空间已成功创建:

curl -X GET "https://bedrock-mantle.$BEDROCK_REGION.api.aws/v1/organization/projects" \ -H "Authorization: Bearer $BEDROCK_API_KEY"

管理工作空间

由于工作区是通过 Projects API 管理的,因此所有项目管理操作都适用。有关以下处理 项目内容的详细说明,请参阅:

  • 列出工作空间:检索您账户中的所有工作空间

  • 检索详细信息:获取有关特定工作空间的信息

  • 更新工作空间:修改工作空间名称或标签

  • 管理标签:添加或移除标签以进行成本分配

  • 存档工作空间:存档不再使用的工作空间

最佳实践

每个应用程序一个工作区:为每个不同的应用程序或服务创建单独的工作区。

├── Claude-Chatbot-Production ├── Claude-Chatbot-Staging ├── Claude-Chatbot-Development ├── Claude-Summarizer-Production └── Claude-Summarizer-Development
  • 单独的环境:为开发、暂存和生产环境使用不同的工作空间。

  • 实验隔离:创建用于实验和概念验证的专用工作空间。

工作空间生命周期管理

  • 尽早创建工作空间:在部署应用程序之前设置工作空间

  • 使用一致的命名:遵循组织命名惯例

  • 成本分配标签:始终包括成本中心和团队标签

  • 定期审计:定期审查和存档未使用的工作空间

  • 监控使用情况:跟踪工作空间指标以确定优化机会