本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Workspaces (與 Anthropic 相容)
Amazon Bedrock Workspaces 使用bedrock-mantle端點上的 Anthropic 相容訊息 API,為您的生成式 AI 工作負載提供應用程式層級隔離。Workspaces 可讓您分割 AI 應用程式,以進行成本追蹤、可觀測性和存取控制。
注意
Workspaces 只能與bedrock-mantle端點上支援 Messages API 的模型搭配使用。若要查看哪些模型支援 Messages API,請參閱 Amazon Bedrock 支援的 APIs。
如果您使用的是 OpenAI 相容 APIs(回應 API、聊天完成),請專案 (OpenAI 相容)改用 。
什麼是工作區?
工作區是邏輯界限,用於在使用 Anthropic Messages API 時隔離 Amazon Bedrock 內的應用程式、環境或實驗等工作負載。工作區的基礎資源與 相同 專案 (OpenAI 相容) — 它們是使用專案 API 進行管理,並提供相同的功能:
-
存取隔離:控制誰可以使用 Amazon Bedrock 專案的 IAM 政策存取特定工作區資源
-
成本監控:使用 AWS 標籤和 AWS Cost Explorer 追蹤工作區層級的支出
-
可觀測性:追蹤每個工作區的用量指標和模式,以進行監控和最佳化。
工作區可讓您在生產環境中管理多個生成式 AI 工作負載,而無需建立單獨的 AWS 帳戶或組織,從而降低操作複雜性,同時保持安全和控管。
每個 AWS 帳戶都有一個預設工作區 (專案),其中所有推論請求都已關聯。您可以使用專案 API 建立其他工作區,並使用 anthropic-workspace標頭在訊息 API 請求中參考它們。
何時使用工作區
當您需要以下項目時,應使用工作區:
-
依業務結構組織:根據您的組織分類管理 Amazon Bedrock 用量,例如業務單位、團隊、應用程式或成本中心
-
準確追蹤成本:監控並配置 AI 支出給特定團隊、專案或環境
-
強制執行存取政策:套用精細的 IAM 許可,以控制誰可以存取特定 AI 工作負載
-
擴展生產工作負載:執行多個具有明確操作界限和監控的生產應用程式
工作區與專案
Workspaces 和 專案 (OpenAI 相容)是相同的基礎資源,兩者都是透過 Projects API 管理。差別在於您在推論請求中參考它們的方式,取決於您使用的 API:
| 功能 | 工作區 | 專案 |
|---|---|---|
| 支援的 API | 人類訊息 API | OpenAI 相容 APIs (回應、聊天完成) |
| Endpoint | 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 專案上的標籤 |
Workspaces 入門
本節會逐步引導您建立工作區、將其與訊息 API 請求建立關聯,以及驗證您的設定。
先決條件
開始前,請確保您具備以下條件:
步驟 1:設定您的環境
使用 Amazon Bedrock 登入資料設定您的環境變數:
export BEDROCK_API_KEY="<your-bedrock-key>" export BEDROCK_REGION="us-east-1"
步驟 2:建立工作區
工作區是使用 Projects 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 請求與工作區建立關聯,請包含具有專案 ID 的 anthropic-workspace 標頭:
使用相同工作區 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
-
個別環境:針對開發、預備和生產環境使用不同的工作區。
-
實驗隔離:為實驗和proof-of-concepts建立專用工作區。
工作區生命週期管理
-
提早建立工作區:在部署應用程式之前設定工作區
-
使用一致的命名:遵循組織命名慣例
-
成本分配標籤:一律包含成本中心和團隊標籤
-
定期稽核:定期檢閱和封存未使用的工作區
-
監控用量:追蹤工作區指標以識別最佳化機會