View a markdown version of this page

조정 및 처리량 모범 사례 - Amazon Bedrock

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

조정 및 처리량 모범 사례

이 주제에서는 Amazon Bedrock 엔드포인트에서 처리량 제한 및 일정이 작동하는 방법을 설명하고 생성형 AI 애플리케이션 규모 조정을 위한 모범 사례를 제공합니다.

Amazon Bedrock 엔드포인트

Amazon Bedrock은 추론을 위해 두 개의 엔드포인트를 지원합니다.

  • bedrock-mantle.{region}.api.aws - 채팅 완료 및 응답(OpenAI)과 메시지(Anthropic)를 지원합니다.

  • bedrock-runtime.{region}.amazonaws.com - Bedrock 네이티브 APIs(호출 및 대화), 채팅 완료 및 메시지 APIs를 지원합니다.

이러한 엔드포인트와 엔드포인트 중에서 선택하는 방법에 대한 자세한 내용은 섹션을 참조하세요Amazon Bedrock에서 지원하는 엔드포인트.

두 엔드포인트가 다르게 작동하는 이유

많은 기존 멀티 테넌트 서비스에서 아키텍처는 공유 리소스에 대한 공정 공유 액세스를 관리하기 위해 계정당 할당량을 중심으로 설계되었습니다. 이는에 사용되는 접근 방식입니다bedrock-runtime.

에서는 bedrock-mantle다른 접근 방식이 사용됩니다. 이 엔드포인트는 더 높은 초기 처리량 제한을 지원하면서 공정 공유 배포를 제공하는 고급 예약 및 작업 대기열 메커니즘으로 설계되었습니다. 또한이 설계를 통해는 광범위한 모델을 bedrock-mantle 호스팅하고 모델 카탈로그에서 사용할 수 있는 모든 기능을 제공할 수 있습니다. 대부분의 경우 요청은 즉시 처리됩니다. 경우에 따라 진행 중인 워크로드가 완료되고 처리량을 사용할 수 있게 되는 동안 요청이 잠시 대기열에 추가될 수 있습니다. 아래 섹션에서는 이러한 시나리오를 처리하는 방법을 설명합니다.

bedrock-mantle 엔드포인트: 처리량 및 할당량

의 모든 모델은 리전별로 계정당 10,000RPM의 단일 하드 제한을 bedrock-mantle 공유합니다. 아래와 같이 Claude와 다른 모델의 처리량과 할당량이 어떻게 작동하는지에 몇 가지 차이점이 있습니다.

  Claude 4.7 이상 다른 모든 모델
입력 TPM 10M * 고객당 또는 모델당 TPM 제한 없음
출력 TPM 2M 고객당 또는 모델당 TPM 제한 없음
RPM 10,000(이 엔드포인트의 모든 모델에서 공유됨) 10,000(이 엔드포인트의 모든 모델에서 공유됨)
온디맨드 티어 표준 Standard, Priority, Flex(일부 예외) - 가용성에 대한 모델 세부 정보 페이지를 참조하세요.
배치 아니요 지원되는 모델의 경우 예 - 가용성은 모델 세부 정보 페이지를 참조하세요.
예약 용량 없음 없음

* 입력 TPM 한도는 Amazon Bedrock 사용 내역에 따라 달라집니다. Amazon Bedrock 콘솔의 할당량 페이지에서 실제 할당을 확인합니다.

bedrock-runtime 엔드포인트: 처리량 및 할당량

다음 표에는의 처리량과 할당량이 요약되어 있습니다bedrock-runtime.

  Claude 4.7 이상 다른 모든 모델
입력 TPM 15M * 다양*
출력 TPM 입력 TPM과 결합됩니다. 번다운이 적용됩니다. 없음. 번다운이 적용됩니다.
RPM 10,000(모든 모델에서 공유됨) 다양*
온디맨드 티어 표준 Standard, Priority, Flex(일부 예외) - 가용성에 대한 모델 세부 정보 페이지를 참조하세요.
배치 아니요 지원되는 모델의 경우 예 - 가용성은 모델 세부 정보 페이지를 참조하세요.
예약 용량 없음 예약 티어/프로비저닝된 용량

* 이러한 모델의 할당량은 사용량에 따라 다릅니다. Amazon Bedrock 콘솔의 할당량 페이지에서 할당을 확인합니다.

HTTP 오류 응답 이해

HTTP 429

429 응답은 계정의 RPM 한도를 초과했음을 의미합니다. 요청 제출 속도를 줄입니다. 더 높은 RPM 할당이 필요한 경우 Service Quotas 콘솔을 통해 증가를 요청하거나 AWS 계정 팀에 문의하세요.

HTTP 503

503 응답은이 리전에서 Amazon Bedrock에 대한 수요가 증가함을 의미합니다. 요청 속도를 줄인 다음 지수 백오프를 사용하여 재시도하거나 리전 간에 트래픽을 분산해야 합니다.

권장 오류 처리

일시적 오류(경우에 따라 503 응답)

무작위 지터를 사용하여 지수 백오프를 구현합니다.

  • 짧은 지연으로 시작합니다(예: 1초).

  • 실패한 각 시도 후 지연 시간을 두 배로 늘립니다.

  • 재시도를 6회로 제한합니다.

AWS SDKs 및 인기 있는 HTTP 라이브러리는이 패턴에 대한 기본 지원을 제공합니다.

예에 대한 재시도 구성bedrock-runtime(AWS SDK/boto3)
import boto3 from botocore.config import Config config = Config(retries={"total_max_attempts": 6, "mode": "standard"}) client = boto3.client("bedrock-runtime", config=config)
예에 대한 재시도 구성bedrock-mantle(OpenAI SDK)
from openai import OpenAI client = OpenAI( api_key=api_key, base_url=f"https://bedrock-mantle.{region}.api.aws/v1", max_retries=6, timeout=60.0, )
예에 대한 재시도 구성bedrock-mantle(Anthropic SDK)
import anthropic client = anthropic.Anthropic( api_key=api_key, base_url=f"https://bedrock-mantle.{region}.api.aws", max_retries=6, timeout=60.0, )

지속적인 오류(지속적인 503 응답)

503 오류가 지속되면 단독으로 재시도해도 문제가 해결되지 않습니다. 요청 속도가 사용 가능한 처리량을 초과합니다. 다음 단계를 따릅니다.

  • 애플리케이션이 새 요청을 제출하는 속도를 줄입니다.

  • 클라이언트 측 속도 제한 또는 요청 대기열을 구현합니다.

  • 처리량이 복구될 때까지 우선 순위가 낮은 요청을 셰드했습니다.

처리량 증가

bedrock-mantle 엔드포인트에서 온디맨드 처리량을 사용하는 경우 사용 가능한 처리량은 시간이 지남에 따라 확장됩니다. 할당량 내의 모든 요청이 수요가 많은 기간 동안 성공한다는 보장은 없으므로 점진적으로 확장하는 것이 중요합니다.

권장 램프 업 절차

  1. 500RPM과 같은 대상 요청 볼륨에서 시작합니다.

  2. 503개의 응답을 받는 경우 비율을 50% 줄이세요.

  3. 요청이 일관되게 성공하는 안정 상태에 도달할 때까지 해당 속도만큼 계속 줄입니다.

  4. 15분이라는 짧은 시간 동안 안정 상태를 유지합니다.

  5. 처리량을 50%와 같이 다시 늘리고 15분 더 유지합니다.

  6. 대상 볼륨에 도달할 때까지 반복합니다.

예를 들어 대상이 2,000RPM이지만 503개의 오류가 발생하는 경우를 1,000RPM으로 줄입니다. 오류가 지속되면를 500RPM으로 줄입니다. 요청이 500RPM에서 일관되게 성공하면 15분 동안를 유지한 다음 750으로 조정한 다음 1,125로 조정합니다.

램프 속도는 조정할 수 없습니다. 더 높은 RPM 할당을 요청하려면 Service Quotas 콘솔을 사용합니다.

추가 모범 사례

  • 기능 플래그를 사용하면 모든 트래픽을 한 번에 전환하는 대신 모델 간에 트래픽을 점진적으로 전환할 수 있습니다.

  • 대규모 워크로드를 몇 분으로 분산하고 사용량이 가장 많은 기간을 피하기 위해 time-of-day 패턴을 고려합니다.

  • 작은 배치로 테스트를 시작하고 점진적으로 확장합니다. 수천 개의 테스트 요청을 동시에 보내지 마세요.

  • 대규모 오프라인 데이터 처리의 경우 애플리케이션이 응답을 비동기적으로 처리할 수 있는 경우 배치 API 또는 Flex Tier를 사용합니다.

리전 가용성 및 리전 간 추론

온디맨드 처리량은 리전 수준에서 할당되며 리전마다 다릅니다. 워크로드가 단일 리전을 대상으로 하는 경우 수요가 많은 기간 동안 503개의 응답이 발생할 수 있습니다. 가용성을 극대화하고를 사용하는 경우를 bedrock-runtime사용합니다글로벌 리전 간 추론.

도움말 가져오기

  • 처리량 계획 - 처리량 예측을 위해 AWS 계정 팀에 문의하세요. 조정 이벤트 중에 최대 처리량을 2배~3배로 계획합니다.

  • 성능 최적화 - 토큰 사용 효율성을 모니터링하고, 프롬프트를 최적화하여 토큰 소비를 줄이고, 사용 사례 요구 사항에 따라 모델을 선택합니다.

  • 에스컬레이션 지원 - 처리량 문제에 대한 AWS 지원 사례를 열 때 특정 오류 코드, 요청 IDs, 트래픽 패턴(RPM/TPM) 및 조정 타임라인을 포함합니다.

권장 사항 요약

시나리오 권장 사항
일반 워크로드 가능하면 bedrock-mantle 엔드포인트를 사용합니다.
가끔 발생하는 503 오류 지수 백오프 및 지터로 재시도합니다.
지속적인 503 오류 요청 제출 속도를 줄입니다. 클라이언트 측 속도 제한을 구현합니다.
429 오류 요청 속도를 줄입니다. Service Quotas를 통해 더 높은 RPM 할당을 요청합니다.
대규모 오프라인 처리 배치 API 또는 Flex Tier를 사용합니다.