AI 초보자 QnA
질문
OpenAI API의 남은 요청·토큰 한도는 응답에서 어떻게 확인하나요?
답변
공식 Python SDK에서는
with_raw_response
로 원시 응답을 받아
headers
의 한도 항목을 읽습니다. 남은 요청 수는
x-ratelimit-remaining-requests
, 남은 토큰 수는
x-ratelimit-remaining-tokens
를 확인하세요.
이 값은 일정 시간 안의 API 사용 속도 제한입니다. 선불 크레딧 잔액이나 모델의 남은 대화 공간과는 다릅니다. 모든 응답에 모든 헤더가 있다고 가정하지 말고 실제로 받은 값만 기록합니다.
짧게 답하면
현재 요청 확인 → 원시 응답 받기 → 요청·토큰 헤더 읽기 → parse로 답변 확인 순서로 진행하세요. 이미 동작하는 짧은 요청에서 시작하고 한도 확인을 위해 대량 호출하지 않습니다.
limit
해당 속도 제한의 최대 요청 수·토큰 수를 나타냅니다.
remaining
해당 제한을 소진하기 전 남은 요청 수·토큰 수입니다.
reset
요청·토큰 제한이 초기 상태로 돌아갈 때까지 남은 시간입니다.
처음 쓰는 사람 기준으로 설명하면
문서를 차례로 요약하는 앱에서 요청 수는 남아 있지만 토큰 제한에 먼저 닿을 수 있습니다. Rate limits 가이드는 여러 한도 중 하나라도 먼저 소진되면 제한에 걸릴 수 있다고 설명합니다. 요청 수 하나만 보고 다음 호출이 성공한다고 판단하지 마세요.
일반 SDK 호출의 모델 답변 객체와 HTTP 응답 헤더는 구분합니다. Python 문서는 HTTP 메서드 앞에
with_raw_response
를 붙이면 헤더에 접근하고,
parse()
로 기존 호출이 돌려주던 답변 객체를 얻는다고 안내합니다. 이 글은 비스트리밍 동기 호출을 다룹니다.
한도는 조직·프로젝트와 모델에 따라 달라집니다. 프로젝트 토큰 제한이 적용되면 별도의 프로젝트 토큰 헤더가 올 수 있습니다. 한 번 받은 remaining을 다른 앱도 함께 쓰는 계정의 고정 잔량이나 다음 요청을 위한 예약 수량으로 해석하지 마세요.
한 줄 정리: 헤더의 한도는 요청 시점의 운영 정보입니다. 답변 본문의 usage, 결제 잔액, 다음 호출의 성공 여부를 대신하지 않습니다.
바로 따라 해보기
1단계. 현재 호출과 비교 조건을 확인합니다.
공식 openai Python 패키지와 설치 버전을 확인하세요. 이미 성공하는 비스트리밍 Responses 요청의 model·input을 유지합니다. 비밀 정보가 없는 짧은 입력을 쓰고 키는 서버의 환경 변수에서 불러옵니다.
2단계. 원시 응답에서 필요한 헤더를 읽습니다.
기존 호출을
raw = client.
형태로 바꾸세요. model_id와 text는 기존 값입니다.
raw.headers.get("x-ratelimit-remaining-requests")
와 토큰 항목을 읽고 없으면 미확인으로 남깁니다.
3단계. 시간 정보와 답변을 함께 확인합니다.
x-ratelimit-reset-requests
와
x-ratelimit-reset-tokens
도 따로 읽으세요. reset은 남은 시간이며 절대 시각이 아닙니다. 이어
response = raw.parse()
로 답변을 확인하고, 시각·모델·받은 헤더를 최소한으로 기록합니다.
주의할 점
오류 응답은 성공 때의 raw 변수로 처리하지 않습니다. SDK의
APIStatusError
에는 상태 코드와
response
가 있으므로 오류 경로에서 확인하세요. 네트워크 오류처럼 응답을 못 받았다면 헤더 값을 추정하지 않습니다. 한도 검사를 위해 일부러 오류를 만들 필요는 없습니다.
remaining이 보이지 않는데 0으로 바꿔 기록합니다. 누락과 실제 0을 구분하고 설치 버전·호출 경로를 확인하세요.
요청 수가 남았으니 긴 문서도 반드시 처리된다고 생각합니다. 토큰·프로젝트 한도와 실제 오류 문구까지 따로 봅니다.
헤더 전체와 인증 정보·고객 자료를 공개 로그에 출력합니다. 필요한 항목만 고르고, 일시적 오류에 Retry-After가 있더라도 결제 문제까지 기다림으로 해결된다고 보지 마세요.
웹사이트와 앱 중 무엇부터 쓰면 좋을까요?
필드 뜻은 공식 웹 문서에서
Rate limits의 헤더 설명과 Python의 원시 응답 예시를 함께 읽으세요. 한도 대시보드도 같은 조직·프로젝트·모델로 맞춰 확인합니다. 문서의 샘플 숫자는 내 계정의 수치가 아닙니다.
실제 확인은 API 개발 환경에서
ChatGPT 웹·모바일 앱의 메뉴에서 읽는 한도가 아닙니다. API를 호출하는 서버 코드에서 헤더를 확인하세요. with_raw_response는 본문을 먼저 읽으므로 완성 전 글자를 보여 주는 모델 스트리밍과 혼동하지 않습니다.
같이 보면 좋은 질문
확인한 공식 자료
OpenAI 공식 Python 문서 — OpenAI Python API library — with_raw_response·headers·parse의 흐름과 오류 응답의 별도 처리, 비스트리밍 동작을 확인했습니다.
OpenAI 공식 가이드 — Rate limits — limit·remaining·reset의 뜻, 조직·프로젝트·모델별 제한과 Retry-After 조건을 확인했습니다.
OpenAI API 참조 — API Overview — 응답 헤더의 한도 항목과 조건부 프로젝트 토큰 헤더, 서버에서의 키 보관 기준을 확인했습니다.
자료 확인일: 2026년 10월 15일. 공식 문서의 확인 절차를 안내하며, 특정 계정의 실제 잔량을 측정한 결과는 아닙니다.
