透過 Bedrock 呼叫 Claude 的方式與使用 Anthropic 的客戶端 SDK 呼叫 Claude 的方式略有不同。本指南將引導您完成在 Python 或 TypeScript 中透過 Bedrock 向 Claude 進行 API 呼叫的過程。

請注意,本指南假設您已經註冊了 AWS 帳戶 並配置了程式化存取。

安裝和配置 AWS CLI

  1. 安裝 AWS CLI 版本 不低於 2.13.23
  2. 使用 AWS configure 命令配置您的 AWS 憑證(參見 配置 AWS CLI)或在 AWS 儀表板中導航至「命令行或程式化存取」並按照彈出模態框中的指示找到您的憑證。
  3. 驗證您的憑證是否有效:
Shell
aws sts get-caller-identity

安裝用於存取 Bedrock 的 SDK

Anthropic 的客戶端 SDK 支援 Bedrock。您也可以直接使用 AWS SDK,如 boto3

pip install -U "anthropic[bedrock]"

存取 Bedrock

訂閱 Anthropic 模型

前往 AWS Console > Bedrock > Model Access 並請求存取 Anthropic 模型。請注意,Anthropic 模型的可用性因地區而異。有關最新信息,請參閱 AWS 文檔

API 模型名稱

模型Bedrock API 模型名稱
Claude Opus 4anthropic.claude-opus-4-20250514-v1:0
Claude Sonnet 4anthropic.claude-sonnet-4-20250514-v1:0
Claude Sonnet 3.7anthropic.claude-3-7-sonnet-20250219-v1:0
Claude Haiku 3.5anthropic.claude-3-5-haiku-20241022-v1:0
Claude Sonnet 3.5anthropic.claude-3-5-sonnet-20241022-v2:0
Claude Opus 3anthropic.claude-3-opus-20240229-v1:0
Claude Sonnet 3anthropic.claude-3-sonnet-20240229-v1:0
Claude Haiku 3anthropic.claude-3-haiku-20240307-v1:0

列出可用模型

以下示例展示如何列印透過 Bedrock 提供的所有 Claude 模型:

aws bedrock list-foundation-models --region=us-west-2 --by-provider anthropic --query "modelSummaries[*].modelId"

發送請求

以下示例展示如何在 Bedrock 上從 Claude 生成文本:

from anthropic import AnthropicBedrock

client = AnthropicBedrock(
    # 可以通過提供以下密鑰進行身份驗證,或使用默認的 AWS 憑證提供者,例如
    # 使用 ~/.aws/credentials 或 "AWS_SECRET_ACCESS_KEY" 和 "AWS_ACCESS_KEY_ID" 環境變數。
    aws_access_key="<access key>",
    aws_secret_key="<secret key>",
    # 臨時憑證可以與 aws_session_token 一起使用。
    # 在 https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html 閱讀更多信息。
    aws_session_token="<session_token>",
    # aws_region 更改請求發送到的 aws 區域。默認情況下,我們讀取 AWS_REGION,
    # 如果不存在,我們默認為 us-east-1。請注意,我們不會從 ~/.aws/config 讀取區域。
    aws_region="us-west-2",
)

message = client.messages.create(
    model="anthropic.claude-opus-4-20250514-v1:0",
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}]
)
print(message.content)

有關更多詳細信息,請參閱我們的客戶端 SDK,以及此處的官方 Bedrock 文檔。

活動日誌記錄

Bedrock 提供調用日誌記錄服務,允許客戶記錄與您的使用相關的提示和完成內容。

Anthropic 建議您至少在 30 天滾動基礎上記錄您的活動,以了解您的活動並調查任何潛在的濫用。

開啟此服務不會給 AWS 或 Anthropic 提供對您內容的任何訪問權限。