TL;DR
Amazon Bedrock은 GPT-5.6의 Sol, Terra, Luna를 25개가 넘는 AWS Region에 제공하고, inference profile을 통해 geographic 또는 global Cross-Region inference를 지원합니다. Geographic profile은 지정된 지리 범위 안에서만 요청을 라우팅하고 global profile은 지원되는 상용 AWS Region 전체의 실시간 용량을 활용하므로, 데이터 처리 경계와 확장 가능한 용량 중 필요한 기준에 따라 선택할 수 있습니다. 모델은 OpenAI Responses API, Chat Completions API, Amazon Bedrock Converse API와 streaming을 지원하며, IAM·SCP 권한, prompt caching, profile별 TPM quota와 10x 출력 burndown rate를 함께 고려해야 합니다.
섹션별 상세
from aws_bedrock_token_generator import provide_token
from openai import OpenAI
region = "us-east-1"
# Point the OpenAI SDK at Amazon Bedrock's OpenAI-compatible endpoint for your Region.
provide_token() generates a short-term Amazon Bedrock API key from your current AWS credentials (valid up to 12 hours), so no static key needs to be stored.
client = OpenAI(
base_url= f"https://bedrock-runtime.{region}.amazonaws.com/openai/v1",
api_key=provide_token(region=region),
)
# Use the global inference profile ID for GPT-5.6 Terra.
model_id = "global.openai.gpt-5.6-terra"
response = client.responses.create(
model=model_id,
input="Summarize the difference between horizontal and vertical scaling in two sentences.",
max_output_tokens=512,
)
print(response.output_text)OpenAI SDK를 Amazon Bedrock의 OpenAI 호환 endpoint에 연결하고 global inference profile로 GPT-5.6 Terra를 호출합니다.
response = client.chat.completions.create(
# For US Geo CRIS, use "us.openai.gpt-5.6-terra".
# Other variants: gpt-5.6-sol, gpt-5.6-luna
model="global.openai.gpt-5.6-terra",
messages=[
{"role": "user", "content": "In one sentence, what is cross-Region inference in Amazon Bedrock?",}
],
max_completion_tokens=2000,
reasoning_effort="low",
)
print(response.choices[0].message.content)기존 Chat Completions 형식의 애플리케이션에서 global 또는 US geographic 프로파일을 지정해 요청을 보냅니다.
import boto3
client = boto3.client("bedrock-runtime", region_name="us-east-1")
model_id = "global.openai.gpt-5.6-terra"
response = client.converse(
modelId=model_id,
messages=[{"role": "user", "content": [{"text": "List three common uses for a message queue."}]}],
inferenceConfig={"maxTokens": 512},
)
print(response["output"]["message"]["content"][0]["text"])boto3로 Amazon Bedrock Converse API를 직접 호출해 다른 Bedrock 모델과 유사한 요청 형태로 GPT-5.6 Terra를 실행합니다.
stream_response = client.converse_stream(
modelId=model_id,
messages=[{"role": "user", "content": [{"text": "List three common uses for a message queue."}]}],
inferenceConfig={"maxTokens": 512},
)
for event in stream_response["stream"]:
if "contentBlockDelta" in event:
print(event["contentBlockDelta"]["delta"]["text"], end="")ConverseStream의 이벤트 스트림을 순회하면서 생성되는 텍스트 조각을 즉시 출력합니다.

completion = client.chat.completions.create(
model=model_id,
messages=[
{
"role": "system",
"content": [
{
"type": "text",
"text": support_policy_manual,
"prompt_cache_breakpoint": {"mode": "explicit"},
}
],
},
{"role": "user", "content": "A customer wants a refund for a damaged laptop. What must I verify first?"},
],
max_completion_tokens=300,
prompt_cache_key="support-policy-v1",
)
# To confirm that caching is working, check the usage object of each response.
details = completion.usage.prompt_tokens_details
print("Cached tokens:", details.cached_tokens)
print("Written tokens:", details.cache_write_tokens)반복되는 system prompt의 끝에 명시적 cache breakpoint를 설정하고 응답 사용량에서 캐시된 토큰과 기록된 토큰을 확인합니다.
용어 해설
- 리전 간 추론(Cross-Region inference)
- — 리전 간 추론은 한 AWS Region에서 요청을 받은 뒤 다른 Region의 컴퓨팅 용량으로 모델을 실행하는 방식입니다. Amazon Bedrock에서는 inference profile이 모델과 라우팅 가능한 Region 집합을 묶고, 실시간 용량에 따라 요청을 목적지 Region으로 보냅니다. 단일 Region의 용량 제약을 완화해 처리량과 부하 상황의 성능 일관성을 높이는 데 중요합니다.
- 추론 프로파일(Inference profile)
- — Inference profile은 원시 모델 ID 대신 호출에 사용하는 논리적 식별자이며, 특정 모델과 요청을 처리할 AWS Region 집합을 정의합니다. geographic profile은 지정된 지리 범위 안에서만 라우팅하고, global profile은 지원되는 상용 AWS Region 전체를 용량에 따라 선택합니다. 애플리케이션은 하나의 프로파일 ID를 호출하면서 라우팅, 할당량, 관측 정보를 프로파일 단위로 관리할 수 있습니다.
- 프롬프트 캐싱(Prompt caching)
- — Prompt caching은 반복 요청에 공통으로 포함되는 긴 프롬프트 접두사를 저장한 뒤 후속 요청에서 다시 처리하지 않는 방식입니다. GPT-5.6에서는 암시적 캐싱과 명시적 cache breakpoint를 지원하며, 공통 접두사가 최소 1,024토큰이어야 합니다. 캐시 읽기 토큰은 TPM 할당량 계산에서 제외되어 입력 비용과 지연뿐 아니라 quota 소모도 줄입니다.
- 토큰 소모율(Burndown rate)
- — Burndown rate는 입력·출력 토큰이 TPM 할당량 사용량으로 변환되는 비율입니다. GPT-5.6에서는 입력 토큰이 1:1로 계산되지만 출력 토큰에는 10배 비율이 적용되어, 할당량 사용량은 입력 토큰과 cache write 토큰에 출력 토큰의 10배를 더해 산출됩니다. 따라서 출력이 많은 서비스는 단순한 원시 토큰 수보다 훨씬 빠르게 quota를 소모할 수 있습니다.
- 서비스 제어 정책(Service control policy)
- — Service control policy는 AWS 조직에서 계정과 서비스가 사용할 수 있는 Region이나 작업 범위를 제한하는 정책입니다. Global CRIS 요청은 aws:RequestedRegion을 특정 Region명이 아닌 unspecified로 설정하므로 일반적인 Region 허용 목록과 충돌할 수 있습니다. Amazon Bedrock은 bedrock:InferenceProfileArn 조건을 사용해 CRIS 프로파일만 예외로 허용하면서 다른 서비스의 Region 제한은 유지할 수 있습니다.
기술
- Amazon Bedrock
- OpenAI GPT-5.6
- OpenAI Responses API
- OpenAI Chat Completions API
- Amazon Bedrock Converse API
- ConverseStream
- OpenAI SDK
- aws-bedrock-token-generator
- boto3
- AWS Identity and Access Management (IAM)
- Amazon S3
- Amazon CloudWatch Logs
- AWS CloudTrail
- Amazon CloudWatch
- AWS Service Quotas
- Service control policy
활용 사례
- 데이터 처리 지리 경계를 유지하면서 여러 Region으로 GPT-5.6 추론을 확장하는 애플리케이션
- 가장 넓은 AWS 상용 Region 용량 풀을 활용하는 출력 중심 생성 서비스
- 기존 OpenAI SDK 애플리케이션의 Amazon Bedrock 전환
- 긴 system prompt와 few-shot 예시를 반복 사용하는 대화형 애플리케이션
- Amazon Bedrock 콘솔에서 GPT-5.6 Sol, Terra, Luna의 응답을 비교하는 사전 검증
언급된 리소스
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.