속도 제한
OfoxAI의 속도 제한은 플랫폼 안정성을 보장합니다. 제한 규칙을 이해하고 호출 전략을 최적화하세요.
기본 제한
OfoxAI는 종량제 과금이며, 모든 사용자가 동일한 속도 정책을 공유합니다:
| 제한 항목 | 할당량 |
|---|---|
| RPM (요청/분) | 100 (팀 단위 집계) |
| TPM (토큰/분) | 무제한 |
팀 단위 집계: RPM은 전체 조직(팀) 단위로 누적 계산되며, 팀 산하의 여러 API Key가 동일한 할당량을 공유합니다. 이를 통해 다중 Key 누적 사용으로 상위 공급자의 속도 제한을 돌파하는 것을 근본적으로 방지합니다. 더 높은 RPM 할당량이 필요하시면 [email protected]에 조정을 요청하세요.
Rate Limit Header
모든 API 응답에 속도 제한 정보가 포함됩니다:
x-ratelimit-limit-requests: 100
x-ratelimit-remaining-requests: 95
x-ratelimit-reset-requests: 12s| Header | 설명 |
|---|---|
x-ratelimit-limit-requests | RPM 제한 값 |
x-ratelimit-remaining-requests | 남은 요청 횟수 |
x-ratelimit-reset-requests | 요청 제한 리셋 시간 |
429 에러 처리
속도 제한이 초과되면 API가 429 Too Many Requests를 반환합니다:
from openai import RateLimitError
import time
try:
response = client.chat.completions.create(...)
except RateLimitError as e:
retry_after = float(e.response.headers.get("retry-after", 1))
print(f"속도 제한 초과, {retry_after}초 대기 중...")
time.sleep(retry_after)최적화 전략
1. 프롬프트 캐싱 사용
반복되는 system prompt의 경우, 캐싱을 활성화하면 토큰 소비를 줄일 수 있습니다:
response = client.chat.completions.create(
model="openai/gpt-4o",
messages=[
# 긴 system prompt는 자동으로 캐싱됩니다
{"role": "system", "content": "당신은 전문적인...(긴 텍스트 생략)"},
{"role": "user", "content": "사용자 질문"}
]
)자세한 내용은 다음을 참조하세요: 프롬프트 캐싱.
2. 배치 처리
여러 짧은 요청을 하나의 요청으로 합칩니다:
# ❌ 비권장: 각 질문에 대해 개별 요청 전송
for question in questions:
client.chat.completions.create(messages=[{"role": "user", "content": question}])
# ✅ 권장: 하나의 요청으로 통합
combined = "\n".join(f"{i+1}. {q}" for i, q in enumerate(questions))
client.chat.completions.create(
messages=[{"role": "user", "content": f"다음 질문에 순서대로 답변해 주세요:\n{combined}"}]
)3. 적합한 모델 선택
추천 모델은 모델 마켓플레이스 를 참조하세요。
4. max_tokens 제어
적절한 max_tokens 제한을 설정하여 불필요한 토큰 소비를 방지합니다:
response = client.chat.completions.create(
model="openai/gpt-4o",
messages=[{"role": "user", "content": "한 문장으로 요약"}],
max_tokens=100 # 출력 길이 제한
)5. 모델 폴백 사용
주 모델이 제한에 도달하면 자동으로 대체 모델로 전환합니다:
response = client.chat.completions.create(
model="openai/gpt-4o",
messages=[...],
extra_body={
"provider": {
"fallback": ["anthropic/claude-sonnet-4.6", "google/gemini-3.1-flash-lite-preview"]
}
}
)자세한 내용은 다음을 참조하세요: 장애 복구.
Last updated on