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을 지원합니다. boto3와 같은 AWS SDK를 직접 사용할 수도 있습니다.
pip install -U "anthropic[bedrock]"

Bedrock 액세스

Anthropic 모델 구독

AWS 콘솔 > Bedrock > 모델 액세스로 이동하여 Anthropic 모델에 대한 액세스를 요청합니다. Anthropic 모델 가용성은 지역에 따라 다릅니다. 최신 정보는 AWS 문서를 참조하세요.

API 모델 ID

모델기본 Bedrock 모델 IDglobaluseujpapac
Claude Sonnet 4.5anthropic.claude-sonnet-4-5-20250929-v1:0Copied!YesYesYesYesNo
Claude Sonnet 4anthropic.claude-sonnet-4-20250514-v1:0Copied!YesYesYesNoYes
Claude Sonnet 3.7anthropic.claude-3-7-sonnet-20250219-v1:0Copied!NoYesYesNoYes
Claude Sonnet 3.5 anthropic.claude-3-5-sonnet-20241022-v2:0Copied!NoYesNoNoYes
Claude Opus 4.1anthropic.claude-opus-4-1-20250805-v1:0Copied!NoYesNoNoNo
Claude Opus 4anthropic.claude-opus-4-20250514-v1:0Copied!NoYesNoNoNo
Claude Opus 3 anthropic.claude-3-opus-20240229-v1:0Copied!NoYesNoNoNo
Claude Haiku 4.5anthropic.claude-haiku-4-5-20251001-v1:0Copied!YesYesYesNoNo
Claude Haiku 3.5anthropic.claude-3-5-haiku-20241022-v1:0Copied!NoYesNoNoNo
Claude Haiku 3anthropic.claude-3-haiku-20240307-v1:0Copied!NoYesYesNoYes
지역별 및 글로벌 모델 ID에 대한 자세한 내용은 아래의 글로벌 vs 지역별 엔드포인트 섹션을 참조하세요.

사용 가능한 모델 나열

다음 예제는 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/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="global.anthropic.claude-sonnet-4-5-20250929-v1:0",
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}]
)
print(message.content)
자세한 내용은 클라이언트 SDK를 참조하고, 공식 Bedrock 문서는 여기를 참조하세요.

활동 로깅

Bedrock은 호출 로깅 서비스를 제공하여 고객이 사용과 관련된 프롬프트 및 완료를 로깅할 수 있습니다. Anthropic은 활동을 이해하고 잠재적인 오용을 조사하기 위해 최소 30일 롤링 기준으로 활동을 로깅할 것을 권장합니다.
이 서비스를 켜면 AWS 또는 Anthropic에 콘텐츠에 대한 액세스 권한이 주어지지 않습니다.

기능 지원

Bedrock에서 현재 지원되는 모든 기능은 여기에서 찾을 수 있습니다.

Bedrock의 PDF 지원

PDF 지원은 Converse API 및 InvokeModel API를 통해 Amazon Bedrock에서 사용 가능합니다. PDF 처리 기능 및 제한 사항에 대한 자세한 내용은 PDF 지원 문서를 참조하세요. Converse API 사용자를 위한 중요한 고려 사항:
  • 시각적 PDF 분석(차트, 이미지, 레이아웃)에는 인용이 활성화되어야 합니다
  • 인용 없이는 기본 텍스트 추출만 사용 가능합니다
  • 강제 인용 없이 완전한 제어를 위해 InvokeModel API를 사용하세요
두 가지 문서 처리 모드 및 해당 제한 사항에 대한 자세한 내용은 PDF 지원 가이드를 참조하세요.

1M 토큰 컨텍스트 윈도우

Claude Sonnet 4 및 4.5는 Amazon Bedrock에서 1M 토큰 컨텍스트 윈도우를 지원합니다.
1M 토큰 컨텍스트 윈도우는 현재 베타 버전입니다. 확장된 컨텍스트 윈도우를 사용하려면 Bedrock API 요청context-1m-2025-08-07 베타 헤더를 포함하세요.

글로벌 vs 지역별 엔드포인트

Claude Sonnet 4.5 및 모든 향후 모델부터 Amazon Bedrock은 두 가지 엔드포인트 유형을 제공합니다:
  • 글로벌 엔드포인트: 최대 가용성을 위한 동적 라우팅
  • 지역별 엔드포인트: 특정 지리적 지역을 통한 보장된 데이터 라우팅
지역별 엔드포인트는 글로벌 엔드포인트보다 10% 가격 프리미엄을 포함합니다.
이는 Claude Sonnet 4.5 및 향후 모델에만 적용됩니다. 이전 모델(Claude Sonnet 4, Opus 4 및 이전 버전)은 기존 가격 구조를 유지합니다.

각 옵션을 사용할 때

글로벌 엔드포인트(권장):
  • 최대 가용성 및 가동 시간 제공
  • 사용 가능한 용량이 있는 지역으로 요청을 동적으로 라우팅
  • 가격 프리미엄 없음
  • 데이터 상주가 유연한 애플리케이션에 최적
지역별 엔드포인트(CRIS):
  • 특정 지리적 지역을 통해 트래픽 라우팅
  • 데이터 상주 및 규정 준수 요구 사항에 필요
  • 미국, EU, 일본 및 호주에서 사용 가능
  • 10% 가격 프리미엄은 전용 지역 용량의 인프라 비용을 반영합니다

구현

글로벌 엔드포인트 사용(Sonnet 4.5 및 4의 기본값): Claude Sonnet 4.5 및 4의 모델 ID에는 이미 global. 접두사가 포함되어 있습니다:
from anthropic import AnthropicBedrock

client = AnthropicBedrock(aws_region="us-west-2")

message = client.messages.create(
    model="global.anthropic.claude-sonnet-4-5-20250929-v1:0",
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}]
)
지역별 엔드포인트 사용(CRIS): 지역별 엔드포인트를 사용하려면 모델 ID에서 global. 접두사를 제거합니다:
from anthropic import AnthropicBedrock

client = AnthropicBedrock(aws_region="us-west-2")

# US 지역별 엔드포인트(CRIS) 사용
message = client.messages.create(
    model="anthropic.claude-sonnet-4-5-20250929-v1:0",  # global. 접두사 없음
    max_tokens=256,
    messages=[{"role": "user", "content": "Hello, world"}]
)

추가 리소스