

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

# Amazon Bedrock API 오류 코드 문제 해결
<a name="troubleshooting-api-error-codes"></a>

이 섹션에서는 Amazon Bedrock API를 사용할 때 발생할 수 있는 일반적인 오류, 오류의 원인 및 오류 해결 방법에 대한 자세한 정보를 제공합니다.

## AccessDeniedException
<a name="ts-access-denied"></a>

**HTTP 상태 코드:** 403

**원인: **요청된 작업을 수행할 수 있는 충분한 권한이 없습니다.

**해결 방법**:
+ 시도 중인 작업에 필요한 권한이 IAM 사용자 또는 역할에 있는지 확인합니다.
+ 임시 보안 자격 증명을 사용하는 경우 만료되지 않았는지 확인합니다.

## FTUFormNotFilled
<a name="ts-ftu-form"></a>

**HTTP 상태 코드:** 404

**원인: **이 계정에 대한 모델 사용 사례 세부 정보가 제출되지 않았습니다.

**해결 방법**:
+ 모델을 사용하기 전에 Anthropic 사용 사례 세부 정보 양식을 작성합니다.

## IncompleteSignature
<a name="ts-incomplete-signature"></a>

**HTTP 상태 코드:** 400

**원인:** 요청 서명이 AWS 표준을 준수하지 않습니다.

**해결 방법**:
+ Amazon Bedrock을 지원하는 AWS SDK 버전을 사용하고 있는지 확인합니다.
+  AWS 액세스 키 ID와 보안 키가 올바르게 구성되었는지 확인합니다.
+ 요청에 수동으로 서명하는 경우 서명 계산 프로세스를 다시 확인하는 것이 좋습니다.

## InternalFailure
<a name="ts-internal-failure"></a>

**HTTP 상태 코드:** 500

**원인: **서버 오류로 인해 요청 처리에 실패했습니다.

**해결 방법**:
+ 신뢰성 향상을 위해 [지수 백오프 및 무작위 지터와 함께 재시도를](https://docs.aws.amazon.com//prescriptive-guidance/latest/cloud-design-patterns/retry-backoff.html) 사용하는 AWS 권장 접근 방식을 사용하는 것이 좋습니다. [https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/](https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/) 
+ 문제가 지속되면 [AWS 지원 센터](https://aws.amazon.com/support)에 문의하여 요청 및 발생하는 오류에 대한 세부 정보를 제공하세요.

## InvalidAction
<a name="ts-invalid-action"></a>

**HTTP 상태 코드:** 400

**원인: **요청된 동작 또는 작업이 유효하지 않습니다.

**해결 방법**:
+ 요청에서 작업 이름의 철자와 형식을 다시 확인하는 것이 좋습니다.
+ 작업 직접 호출이 Amazon Bedrock에서 지원되고 [Amazon Bedrock API 참조](https://docs.aws.amazon.com//bedrock/latest/APIReference/API_Operations.html)에 표시된 대로 올바르게 문서화되었는지 확인합니다.
+  AWS SDK 또는 CLI의 up-to-date 버전을 사용하고 있는지 확인합니다.

## InvalidClientTokenId
<a name="ts-invalid-client-token"></a>

**HTTP 상태 코드:** 403

**원인: **제공된 X.509 인증서 또는 AWS 액세스 키 ID가 레코드에 존재하지 않습니다.

**해결 방법**:
+ 올바른 AWS 액세스 키 ID를 사용하고 있는지 확인합니다.
+ 최근에 새 액세스 키를 만든 경우 이전 키가 아닌 새 자격 증명 정보를 사용하고 있는지 확인합니다.

## AWS 15분 이내에 Marketplace 계약 실패
<a name="ts-mp-agreement-failed"></a>

**HTTP 상태 코드:** 403

**원인: **기본 문제로 인해 AWS Marketplace 계약이 실패했습니다.

**해결 방법**:
+ 오류 메시지를 검토하고 기본 문제를 해결합니다. 일반적인 기본 문제는 잘못된 결제 오류와 제한된 지리적 위치입니다.
+ 잘못된 결제 오류의 경우 Amazon Bedrock에서 모델 액세스를 요청한 후 [AWS Marketplace 및 INVALID\_PAYMENT\_INSTRUMENT를 사용하는 AISPL 고객의 신용 카드 및 직불 카드 구매 제한을](https://aws.amazon.com/blogs/awsmarketplace/restriction-on-credit-and-debit-card-purchases-for-aispl-customers-using-aws-marketplace/) 검토하세요. [https://repost.aws/questions/QU0UOsutrWSSS4nOqgHcIUJg/invalid-payment-instrument-after-requesting-model-access-in-amazon-bedrock](https://repost.aws/questions/QU0UOsutrWSSS4nOqgHcIUJg/invalid-payment-instrument-after-requesting-model-access-in-amazon-bedrock) 

## AWS 15분 후 보류 중인 Marketplace 계약
<a name="ts-mp-agreement-pending"></a>

**HTTP 상태 코드:** 403

**원인: ** AWS Marketplace 계약이 성공하지 못했으며 요청 후 15분이 지났습니다.

**해결 방법**:
+ 15분마다 요청을 다시 시도하세요. 문제가 지속되면 [AWS 지원 센터](https://aws.amazon.com/support)에 문의하여 요청 및 발생하는 오류에 대한 세부 정보를 제공하세요.

## MPAgreementBeingCreated
<a name="ts-mp-agreement-created"></a>

**HTTP 상태 코드:** 403

**원인: **계정에 이 모델에 액세스할 권한이 없습니다. 이 모델에 대한 AWS Marketplace 구독이 아직 처리 중입니다.

**해결 방법**:
+ 15분 후에 다시 시도하세요.

## NotAuthorized
<a name="ts-not-authorized"></a>

**HTTP 상태 코드:** 400

**원인: **이 작업을 수행하는 데 필요한 권한이 없습니다.

**해결 방법**:
+ IAM 권한을 검토하고 Amazon Bedrock 리소스에서 요청된 작업을 수행하는 데 필요한 권한이 있는지 확인합니다.
+ IAM 역할을 사용하는 경우 역할에 적절한 권한과 신뢰 관계가 있는지 확인합니다.
+ 액세스를 제한할 수 있는 조직 정책 또는 서비스 제어 정책이 있는지 확인합니다.

## RequestExpired
<a name="ts-request-expired"></a>

**HTTP 상태 코드:** 400

**원인: **타임스탬프가 만료되어 요청이 더 이상 유효하지 않습니다.

**해결 방법**:
+ 시스템 시계가 안정적인 시간 소스와 올바르게 동기화되었는지 확인합니다.
+ 서로 다른 시간대에서 요청하는 경우 타임스탬프 불일치가 발생할 수 있다는 점에 유의하세요.

## ServiceUnavailable
<a name="ts-service-unavailable"></a>

**HTTP 상태 코드:** 503

**원인: **서비스가 일시적으로 요청을 처리할 수 없습니다. 503 오류는 서비스에 수요가 많거나 일시적인 용량 제약이 있음을 나타냅니다. 이는 계정 수준 할당량 또는 속도 제한(429 ThrottlingException 반환)과 관련이 없습니다.

**해결 방법**:
+ 신뢰성 향상을 위해 [지수 백오프 및 무작위 지터와 함께 재시도를](https://docs.aws.amazon.com//prescriptive-guidance/latest/cloud-design-patterns/retry-backoff.html) 사용하는 AWS 권장 접근 방식을 사용하는 것이 좋습니다. [https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/](https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/) 
+ 현재 리전에서 문제가 지속되는 AWS 리전 경우 다른 로 전환하는 것이 좋습니다. 리전마다 로드 및 가용성 수준이 다를 수 있습니다.
+ [교차 리전 추론을 사용하면](https://docs.aws.amazon.com//bedrock/latest/userguide/cross-region-inference.html) 다양한 컴퓨팅을 사용하여 계획되지 않은 트래픽 버스트를 원활하게 관리할 수 있습니다 AWS 리전.
+ 처리량 요구 사항이 높은 경우 사용 사례에 맞게 [프로비저닝된 처리량](https://docs.aws.amazon.com//bedrock/latest/userguide/prov-throughput.html)을 살펴보는 것이 좋습니다.

**모범 사례**
+ 애플리케이션이 오류 처리 및 재시도 로직에서 503 상태 코드를 적절하게 처리할 수 있는지 확인합니다.
+  AWS 서비스에 영향을 미칠 수 있는 알려진 문제 또는 예약된 유지 관리가 있는지 서비스 상태 대시보드를 확인합니다.

503 오류가 자주 발생하거나 작업에 상당한 영향을 미치는 경우 [AWS Support](https://aws.amazon.com/support)에 특정 사용 사례에 맞는 추가 지원 및 지침을 문의하세요.

## ThrottlingException
<a name="ts-throttling-exception"></a>

**HTTP 상태 코드:** 429

**원인: **Amazon Bedrock의 계정 할당량을 초과하여 요청이 거부되었습니다.

**해결 방법**:
+ [Amazon Bedrock 서비스 할당량](https://docs.aws.amazon.com/general/latest/gr/bedrock.html#limits_bedrock) 콘솔에서 Amazon Bedrock 서비스 할당량을 확인하여 계정에 할당된 제한에 대해 알아봅니다.
+ 신뢰성 향상을 위해 지수 백오프가 있는 재시도를 사용하는 AWS 권장 접근 방식을 사용하는 것이 좋습니다. 및 무작위 [지터](https://aws.amazon.com/builders-library/timeouts-retries-and-backoff-with-jitter/). [https://docs.aws.amazon.com//prescriptive-guidance/latest/cloud-design-patterns/retry-backoff.html](https://docs.aws.amazon.com//prescriptive-guidance/latest/cloud-design-patterns/retry-backoff.html) 
+ 처리량 요구 사항이 높은 경우 사용 사례에 맞게 [프로비저닝된 처리량](https://docs.aws.amazon.com//bedrock/latest/userguide/prov-throughput.html)을 살펴보는 것이 좋습니다.
+ 워크로드 트래픽이 계정 할당량을 초과하는 경우 계정 관리자 또는 [AWS Support](https://aws.amazon.com/support)에 문의하여 할당량 증가를 요청합니다.

## ValidationError
<a name="ts-validation-error"></a>

**HTTP 상태 코드:** 400

**원인: **입력이 Amazon Bedrock에서 지정한 제약 조건을 충족하지 못합니다.

**해결 방법**:
+ API 설명서를 검토하여 필요한 모든 파라미터가 올바르게 포함되고 형식이 지정되었는지 확인합니다.
+ 입력 값이 허용 범위 내에 있는지 또는 예상 패턴을 준수하는지 확인합니다.
+ 사용 중인 작업에 대한 API 참조에 언급된 특정 검증 규칙에 주의를 기울이는 것이 좋습니다.

## ResourceNotFound
<a name="ts-resource-not-found"></a>

**HTTP 상태 코드:** 404

**원인: **요청한 리소스를 찾을 수 없습니다.

**해결 방법**:
+ 요청에서 모델 ID, 엔드포인트 이름 또는 기타 리소스 식별자의 정확성을 확인합니다.
+ 기본 리소스를 찾을 수 없는 경우 대체 모델 또는 엔드포인트를 사용하려면 폴백 메커니즘을 구현하세요.

**모범 사례**
+ [ListFoundationModels](https://docs.aws.amazon.com//bedrock/latest/APIReference/API_ListFoundationModels.html)을 사용하여 이용 가능한 Amazon Bedrock 파운데이션 모델에 대해 알아봅니다.
+ 주기적인 동기화 프로세스를 구현하여 로컬 리소스 카탈로그를 업데이트하는 것이 좋습니다.

이러한 솔루션을 시도한 후에도 문제가 계속 발생하면 [AWS Support](https://aws.amazon.com/support)에 특정 사용 사례에 맞는 추가 지원 및 지침을 문의하세요.

## 장기 실행 또는 유휴 연결 시 연결 제한 시간 또는 재설정
<a name="ts-connection-timeout"></a>

**증상: **API 호출은 연결 재설정 또는 제한 시간, 특히 트래픽이 NAT 게이트웨이, 인터페이스 VPC 엔드포인트 또는 Network Load Balancer를 통과하는 스트리밍, 확장 사고 또는 대규모 추론 응답과 같은 장기 실행 요청의 경우 실패합니다. 또한 네트워크가 자동으로 연결을 끊은 후 유휴 풀링 연결을 재사용할 때 콜드 스타트 지연 시간이 길어질 수 있습니다(예: 유휴 기간 후 첫 번째 호출에는 일반적인 소수 대신 70초 이상 소요됨).

**원인: **NAT 게이트웨이, 인터페이스 VPC 엔드포인트 및 Network Load Balancer의 고정 유휴 연결 제한 시간은 350초입니다. TCP 연결이이 기간보다 오래 유휴 상태로 유지되면 클라이언트에 알리지 않고 연결이 끊어집니다. 클라이언트는 연결을 다시 설정하기 전에 OS 수준 TCP 재시도 또는 제한 시간을 기다려야 하는 다음 요청까지 연결이 끊긴 것을 감지하지 못할 수 있습니다.

**적용되는 경우:**
+ Amazon EKS 또는 Amazon ECS에서 실행되는 애플리케이션으로, Amazon Bedrock에 대한 포드 트래픽이 NAT 게이트웨이 또는 VPC 인터페이스 엔드포인트를 통해 송신됩니다.
+ NAT 게이트웨이, Amazon Bedrock용 인터페이스 VPC 엔드포인트 또는 Network Load Balancer 뒤의 Amazon EC2 인스턴스에서 실행되는 애플리케이션. Load Balancer
+ Amazon Bedrock 클라이언트 연결이 호출 간 연결 풀에서 유휴 상태인 장기 실행 또는 버스트 워크로드.

**해결 방법**:

Amazon Bedrock 클라이언트에서 TCP 연결 유지를 활성화하려면 두 *가지* 설정이 함께 작동해야 합니다. 하나만 설정하는 것만으로는 충분하지 않습니다.

1. **AWS SDK 클라이언트에서 TCP 연결 유지를 활성화합니다.** boto3 `Config` 객체는 `tcp_keepalive` 파라미터를 수락하며, 기본값은 입니다`False`. Amazon Bedrock 클라이언트를 구성할 `True` 때 로 설정합니다.

   ```
   import boto3
   from botocore.config import Config
   
   config = Config(tcp_keepalive=True)
   client = boto3.client("bedrock-runtime", config=config)
   ```

   다른 AWS SDKs 해당 HTTP 클라이언트 구성 설명서를 참조하세요.

1. **350초 유휴 제한 시간 전에 실행되도록 OS 수준 연결 유지 간격을 구성합니다.** Linux의 기본값은 NAT 또는 VPC 엔드포인트 유휴 제한 시간보다 훨씬 긴 `net.ipv4.tcp_keepalive_time = 7200` (2시간)이므로 SDK 수준 연결 유지만으로는 효과가 없습니다. 커널 설정을 350초 미만의 값(예: 45초)으로 낮춥니다.

   ```
   sysctl -w net.ipv4.tcp_keepalive_time=45
   ```

   Amazon EKS 및 Amazon ECS에서 포드 또는 작업 `securityContext`, init 컨테이너 또는 사용자 지정 노드 AMI에 sysctl을 적용합니다. Amazon EC2에서 재부팅 시 값이 지속`/etc/sysctl.d/`되도록에 설정합니다.

VPC 네트워킹에서 오래 실행되는 TCP 연결에 대한 자세한 내용은 AWS 네트워킹 및 콘텐츠 전송 블로그의 [VPC 네트워킹 내에서 오래 실행되는 TCP 연결 구현](https://aws.amazon.com/blogs/networking-and-content-delivery/implementing-long-running-tcp-connections-within-vpc-networking/)을 참조하세요.

두 설정을 모두 적용한 후에도 연결 문제가 계속 발생하면 [AWS Support](https://aws.amazon.com/support)에 문의하여 추가 지원을 받으세요.