429 오류: gemini-3.1-pro-preview-customtools 호출이 실패할 때 대처법
429는 속도 제한에 걸렸다는 뜻입니다. 일정 시간 내 요청 수나 토큰 수가 현재 요금제 할당량을 초과했습니다.
429 Too Many Requests 는 오류가 아니라 레이트 리밋 응답입니다. 요청 자체는 유효하지만 현재 요금제가 허용하는 요청 속도나 동시 실행 수를 초과한 것입니다. 응답 헤더가 알려주는 시간만큼 기다렸다가 재시도하면 복구되며, 요청 본문을 바꿀 필요는 없습니다.
gemini-3.1-pro-preview-customtools 는 Google 가 제공하며, 이 페이지의 원인 분석·처리 방법·실측 데이터는 모두 게이트웨이 계층에서 이 모델의 실제 운영 상황을 바탕으로 정리했습니다.
이 게이트웨이에서 가장 흔한 원인은 「동시 요청이 너무 많음」입니다. 우선 처리할 동작은 「동시 요청을 제한하고 지수 백오프로 재시도」입니다.
주요 원인
- 동시 요청이 너무 많음
- 현재 요금제 쿼터 소진
- 대기 없이 즉시 재시도
해결 방법
- 동시 요청을 제한하고 지수 백오프로 재시도
- 쿼터가 큰 요금제로 변경
- 반복 요청 캐싱
지수 백오프 재시도 예시
아래 코드는 gemini-3.1-pro-preview-customtools가 429를 반환할 때 최대 5회까지 재시도합니다. 대기 시간은 점점 길어지고 무작위 지터가 더해져 동시 재시도를 막습니다. base URL과 API 키는 환경 변수에서 읽고, 코드에 하드코딩하지 마세요.
import os, time, random
import requests
BASE = os.getenv("OPENAI_BASE_URL") # e.g. https://<your-gateway>/v1
KEY = os.getenv("OPENAI_API_KEY")
MODEL = 'gemini-3.1-pro-preview-customtools'
def chat(messages, retries=5):
"""Retry with exponential backoff + jitter."""
for i in range(retries):
try:
r = requests.post(
BASE + "/chat/completions",
headers={"Authorization": "Bearer " + KEY},
json={"model": MODEL, "messages": messages, "stream": True},
timeout=60,
)
if r.status_code == 429 or r.status_code >= 500:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
continue
r.raise_for_status()
return r.json()
except requests.exceptions.Timeout:
time.sleep(min(2 ** i + random.uniform(0, 1), 30))
raise RuntimeError("gave up after " + str(retries) + " retries")
print(chat([{"role": "user", "content": "hello"}]))이 모델의 핵심 데이터
| API 엔드포인트 | https://api.airai.cc/v1 |
|---|---|
| OpenAI 호환 | OpenAI-compatible |
| 제공사 | |
|---|---|
| 컨텍스트 | 1M |
| 지원 기능 | Reasoning, Tools, Files, Vision, Audio |
| API 형식 | openai, openai-response, openai-response-compact, anthropic, gemini, openai-alpha-search |
| 과금 공식 | p * 2 + cr * 0.2 + c * 12) : tier("200k_plus", p * 4 + cr * 0.4 + c * 18 |
자주 묻는 질문
결과 캐싱이 429 를 줄이나요?
먼저 동시성을 낮추세요. 처리량 문제의 대부분은 그것으로 사라집니다. 이 모델의 컨텍스트 윈도우는 1M, 벤더는 Google 입니다. 동시성은 낮은 값에서 시작해 몇 분 지켜본 뒤 단계적으로 높이세요.
상위 노드가 여러 개일 때 429 발생 시 게이트웨이가 자동 전환되나요?
이 오류는 모델 성능과 무관하며 게이트웨이 계층의 문제입니다. 대부분 일시적인 문제이며 스스로 복구됩니다. 이 모델의 기능 태그는 Reasoning, Tools, Files, Vision, Audio 입니다. 몇 분 이상 지속되면 플랫폼 고객센터에 연락해 업스트림 상태를 확인하세요. 먼저 계정 수준인지 모델 수준인지 판단하세요. 두 경우의 대응은 완전히 다릅니다.
응답의 Retry-After 헤더는 어떻게 사용하나요?
재시도가 가장 효과적인 첫 단계입니다. 과금 방식이 p * 2 + cr * 0.2 + c * 12) : tier("200k_plus", p * 4 + cr * 0.4 + c * 18 인 경우, 실패한 요청은 사용량에 포함되지 않습니다. 재시도 상한을 3~5회로 정하고 지터를 추가하세요. 재시도 가능한 오류에는 지수 백오프를 쓰고, 나머지는 즉시 오류를 반환하세요.
긴 컨텍스트가 429 발생 가능성을 높이나요?
요청 파라미터를 바꿔야 하며, 재시도만으로는 해결되지 않습니다. 클라이언트 설정 문제이므로 서버 쪽을 바꿀 필요는 없습니다. 이 모델의 기능 태그는 Reasoning, Tools, Files, Vision, Audio 이며, 파라미터 상한은 그 기능 집합에서 비롯됩니다. 파라미터 오류는 즉시 실패시키고 재시도를 낭비하지 마세요.
이 모델의 다른 오류
- gemini-3.1-pro-preview-customtools: 오류 timeout — 원인과 해결
- gemini-3.1-pro-preview-customtools: 오류 500 — 원인과 해결
- gemini-3.1-pro-preview-customtools: 오류 502 — 원인과 해결
- gemini-3.1-pro-preview-customtools: 오류 503 — 원인과 해결
- gemini-3.1-pro-preview-customtools: 오류 504 — 원인과 해결
- gemini-3.1-pro-preview-customtools: 오류 401 — 원인과 해결
- gemini-3.1-pro-preview-customtools: 오류 403 — 원인과 해결
- gemini-3.1-pro-preview-customtools: 오류 400 — 원인과 해결
같은 오류가 나는 다른 모델
- gpt-5
- claude-opus-5
- gemini-2.5-pro
- deepseek-v4-pro
- grok-4.3
- llama-3.3-70b-instruct
- qvq-max
- qwq-32b
- glm-5
- MiniMax-M3
- kimi-k3
- hy3
- doubao-seed-evolving
- mimo-v2.5
- gpt-4o
- claude-opus-4-6
데이터 업데이트: 2026-10-10 15:45