가이드

서비스 쿨다운과 재시도

LLMs Text

서비스 쿨다운 및 재시도

HTTP 503은 일시적인 업스트림 장애를 나타낼 수 있습니다. 플랫폼이 속도 제한, 할당량 제한, 네트워크 오류, 업스트림 접근 제한을 감지하면 해당 서비스로의 요청을 잠시 중단하고, 가용 조건이 충족되면 재시도합니다.

자동 라우팅

플랫폼은 다른 가용 업스트림 서비스를 시도합니다. 성공 여부는 모델 가용성, 할당량, 업스트림 정책에 따라 달라지며, 자동 라우팅이 모든 요청의 성공을 보장하지는 않습니다.

첫 바이트 타임아웃 단계별 처리

response header timeout은 업스트림 일시적 혼잡이나 긴 reasoning으로 흔히 발생합니다. 연속 실패 후 플랫폼은 실패를 기록하고 다른 가용 경로를 시도합니다.

  • 1~2회 연속 실패: 다른 경로 시도
  • 3~4회 실패: 30초 일시 중지
  • 5~6회 실패: 1분 일시 중지
  • 7회 이상: 5분 일시 중지

성공 응답이 오면 연속 실패 횟수가 초기화됩니다. 다른 업스트림 제한은 더 긴 복구 시간이 필요할 수 있습니다.

사용 가능한 서비스 없음

클라이언트는 다음과 같은 HTTP 503 오류를 받을 수 있습니다.

{
  "code": "no_account_available",
  "message": "all accounts cooling down, retry in 60s"
}

문제 해결을 위해 실제 API 오류 필드를 그대로 둡니다. retry in Xs는 재시도 대기 시간을 제안하며, 실제 복구는 업스트림 상태에 따릅니다.

클라이언트 처리

  • 지터가 있는 지수 백오프(예: 1, 2, 4, 8초)를 사용하고 최대 재시도 횟수를 설정하세요.
  • 도구나 SDK가 이미 재시도하는지 확인해 중첩 루프를 피하세요.
  • 자동화 작업 실패는 기록하고 수동 복구 경로를 제공하세요. 재시도 전에 tool call이나 쓰기 작업이 이미 실행됐는지 확인해 중복을 방지하세요.
  • 지속적 실패 시 서비스 및 지원을 확인하세요. 15분 이상 지속되거나 중요 작업에 영향이 있으면 요청 시각, 모델, 오류 코드와 함께 support@4aicode.com으로 문의하세요.

문제 공유 시 API 키와 민감한 요청 내용은 제거하세요.