BedrockでClaudeを呼び出す方法は、AnthropicのクライアントSDKを使用してClaudeを呼び出す方法とは若干異なります。このガイドでは、PythonまたはTypeScriptのいずれかを使用して、Bedrock上のClaudeへのAPIコールを完了するプロセスについて説明します。

このガイドでは、すでにAWSアカウントにサインアップし、プログラムによるアクセスを設定済みであることを前提としています。

AWS CLIのインストールと設定

  1. バージョン2.13.23以上のAWS CLIをインストールします。
  2. AWS configureコマンドを使用してAWSの認証情報を設定します(AWS CLIの設定を参照)。または、AWSダッシュボード内の「コマンドラインまたはプログラムによるアクセス」に移動し、ポップアップモーダルの指示に従って認証情報を見つけます。
  3. 認証情報が機能していることを確認します。
Shell
aws sts get-caller-identity  

BedrockにアクセスするためのSDKのインストール

AnthropicのクライアントSDKはBedrockをサポートしています。また、boto3などのAWS SDKを直接使用することもできます。

pip install -U "anthropic[bedrock]"

Bedrockへのアクセス

Anthropicモデルのサブスクライブ

AWSコンソール > Bedrock > モデルアクセスに移動し、Anthropicモデルへのアクセスをリクエストします。Anthropicモデルの利用可能性は地域によって異なることに注意してください。最新情報については、AWSドキュメントを参照してください。

APIモデル名

モデルBedrock APIモデル名
Claude 3 Haikuanthropic.claude-3-haiku-20240307-v1:0
Claude 3 Sonnetanthropic.claude-3-sonnet-20240229-v1:0
Claude 3 Opusanthropic.claude-3-opus-20240229-v1:0

利用可能なモデルの一覧表示

次の例は、Bedrockを通じて利用可能なすべてのClaudeモデルの一覧を出力する方法を示しています。

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

リクエストの作成

次の例は、Bedrock上のClaude 3 Sonnetからテキストを生成する方法を示しています。

from anthropic import AnthropicBedrock

client = AnthropicBedrock(
    # 以下のキーを提供するか、~/.aws/credentialsや"AWS_SECRET_ACCESS_KEY"および"AWS_ACCESS_KEY_ID"環境変数などのデフォルトのAWS認証情報プロバイダーを使用して認証します。
    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-3-sonnet-20240229-v1:0",
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}]
)
print(message.content)

詳細については、クライアントSDKを参照してください。公式のBedrockドキュメントはこちらにあります。