Bedrock을 통해 Claude를 호출하는 방식은 Claude API에서 직접 Claude를 호출하는 방식과 약간 다릅니다. 이 가이드는 Anthropic의 클라이언트 SDK 중 하나를 사용하여 Bedrock에서 Claude에 대한 API 호출을 완료하는 과정을 안내합니다.
이 가이드는 이미 AWS 계정에 가입하고 프로그래밍 방식 액세스를 구성했다고 가정합니다.
2.13.23 이상의 AWS CLI 버전을 설치하세요.aws sts get-caller-identityAnthropic의 클라이언트 SDK는 Bedrock을 지원합니다. boto3와 같은 AWS SDK를 직접 사용할 수도 있습니다.
pip install -U "anthropic[bedrock]"AWS Console > Bedrock > Model Access로 이동하여 Anthropic 모델에 대한 액세스를 요청하세요. Anthropic 모델 가용성은 리전에 따라 다릅니다. 최신 정보는 AWS 문서를 참조하세요.
수명 주기 용어(지원 중단, 종료)는 모델 지원 중단에 정의되어 있습니다. 파트너 운영 플랫폼의 수명 주기 날짜는 파트너가 설정하며 Claude API 일정과 다를 수 있습니다. Amazon Bedrock에서 모델의 현재 종료 날짜는 Amazon Bedrock의 모델 수명 주기 페이지를 참조하세요.
AWS는 온디맨드 처리량이 아닌 교차 리전 추론을 통해 최신 Claude 모델을 제공합니다. 이러한 모델의 경우 기본 모델 ID를 전달하는 요청은 다음과 같은 HTTP 400 오류와 함께 실패합니다:
Invocation of model ID anthropic.claude-sonnet-4-5-20250929-v1:0 with on-demand throughput isn't supported. Retry your request with the ID or ARN of an inference profile that contains this model.이러한 모델을 호출하려면 기본 모델 ID 대신 추론 프로필을 전달하세요. 추론 프로필 ID는 다음 표에서 "Yes"로 표시된 열의 접두사가 붙은 기본 모델 ID입니다. 예: . arn:aws:bedrock:{region}:{account-id}:inference-profile/{inference-profile-id} 형식의 전체 추론 프로필 ARN을 전달할 수도 있습니다. 사용 가능한 추론 프로필에 대한 AWS의 공식 목록은 추론 프로필에 지원되는 리전 및 모델을 참조하세요. 접두사가 라우팅 및 가격에 미치는 영향은 글로벌 엔드포인트와 리전 엔드포인트 비교 섹션을 참조하세요.
| 모델 | 기본 Bedrock 모델 ID | global | us | eu | jp | apac |
|---|---|---|---|---|---|---|
| Claude Opus 4.6 | Yes | Yes | Yes | Yes | Yes | |
| Claude Sonnet 4.6 | Yes | Yes | Yes | Yes | No | |
| Claude Sonnet 4.5 | Yes | Yes | Yes | Yes | No | |
| Claude Sonnet 4 지원 중단됨. | Yes | Yes | Yes | No | Yes | |
| Claude Sonnet 3.7 종료됨. | No | No | No | No | No | |
| Claude Opus 4.5 | Yes | Yes | Yes | No | No | |
| Claude Opus 4.1 지원 중단됨. | No | Yes | No | No | No | |
| Claude Opus 4 종료됨. | No | No | No | No | No | |
| Claude Haiku 4.5 | Yes | Yes | Yes | No | No | |
| Claude Haiku 3.5 지원 중단됨. | No | Yes | No | No | No |
다음 예제는 Bedrock을 통해 사용 가능한 모든 Claude 모델 목록을 출력하는 방법을 보여줍니다:
import boto3
bedrock = boto3.client(service_name="bedrock")
response = bedrock.list_foundation_models(byProvider="anthropic")
for summary in response["modelSummaries"]:
print(summary["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 리전을 변경합니다. 기본적으로 SDK는 AWS_REGION을 읽고,
# 해당 값이 없으면 us-east-1을 기본값으로 사용합니다. SDK는 리전을 위해 ~/.aws/config를 읽지 않습니다.
aws_region="us-west-2",
)
message = client.messages.create(
model="global.anthropic.claude-opus-4-6-v1",
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}],
)
print(message.content)자세한 내용은 클라이언트 SDK 및 공식 Bedrock 문서를 참조하세요.
AWS 자격 증명 대신 bearer 토큰을 사용하여 Bedrock에 인증할 수 있습니다. 이는 팀이 AWS 자격 증명, IAM 역할 또는 계정 수준 권한을 관리하지 않고 Bedrock에 액세스해야 하는 기업 환경에서 유용합니다.
가장 간단한 방법은 AWS_BEARER_TOKEN_BEDROCK 환경 변수를 설정하는 것입니다. 각 SDK는 환경에서 자격 증명을 확인할 때 이를 자동으로 감지합니다.
프로그래밍 방식으로 토큰을 제공하려면:
from anthropic import AnthropicBedrock
client = AnthropicBedrock(
api_key="your-bearer-token",
aws_region="us-west-2",
)
message = client.messages.create(
model="us.anthropic.claude-sonnet-4-5-20250929-v1:0",
max_tokens=1024,
messages=[{"role": "user", "content": "Hello!"}],
)
print(message.content)Bedrock은 사용과 관련된 프롬프트 및 완성을 로깅할 수 있는 호출 로깅 서비스를 제공합니다.
Anthropic은 활동을 파악하고 잠재적인 오용을 조사할 수 있도록 최소 30일 롤링 기준으로 활동을 로깅할 것을 권장합니다.
Amazon Bedrock 가용성이 포함된 전체 기능 목록은 기능 개요를 참조하세요.
fallbacks 매개변수; 대신 클라이언트 측 폴백 패턴을 사용하세요)cache_control 필드; 대신 명시적 캐시 중단점을 사용하세요)PDF 지원은 Converse API와 InvokeModel API 모두를 통해 Bedrock에서 사용할 수 있습니다. PDF 처리 기능 및 제한 사항에 대한 자세한 내용은 Amazon Bedrock PDF 지원을 참조하세요.
Converse API 사용자를 위한 중요 고려 사항:
Claude Fable 5, Claude Opus 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Sonnet 5, Claude Sonnet 4.6은 Amazon Bedrock에서 1M 토큰 컨텍스트 윈도우를 제공합니다. Sonnet 4.5 및 Sonnet 4(지원 중단됨)를 포함한 다른 Claude 모델은 200k 토큰 컨텍스트 윈도우를 제공합니다.
Bedrock은 요청 페이로드를 20MB로 제한합니다. 대용량 문서나 많은 이미지를 전송할 때 토큰 제한보다 먼저 이 제한에 도달할 수 있습니다.
Claude Sonnet 4.5 및 이후 모든 모델부터 Bedrock은 두 가지 엔드포인트 유형을 제공합니다:
리전 엔드포인트는 글로벌 엔드포인트 대비 10% 가격 프리미엄이 포함됩니다.
글로벌 엔드포인트(권장):
리전 엔드포인트(CRIS):
글로벌 엔드포인트 사용(Opus 4.6, Sonnet 4.6, Sonnet 4.5의 기본값):
Claude Opus 4.6, Sonnet 4.6, Sonnet 4.5의 모델 ID에는 이미 global. 접두사가 포함되어 있습니다:
from anthropic import AnthropicBedrock
client = AnthropicBedrock(aws_region="us-west-2")
message = client.messages.create(
model="global.anthropic.claude-opus-4-6-v1",
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}],
)리전 엔드포인트(CRIS) 사용:
리전 엔드포인트를 사용하려면 global. 접두사를 us.와 같은 리전 접두사로 바꾸세요:
from anthropic import AnthropicBedrock
client = AnthropicBedrock(aws_region="us-west-2")
# 미국 리전 엔드포인트(CRIS) 사용
message = client.messages.create(
model="us.anthropic.claude-opus-4-6-v1", # Regional prefix
max_tokens=256,
messages=[{"role": "user", "content": "Hello, world"}],
)Was this page helpful?