📰 AI 뉴스2026-07-104분
OpenAI, o3-mini 배치 API 정식 GA—대규모 추론 비용 50% 절감
OpenAI가 o3-mini 모델의 배치(Batch) API를 정식 GA로 전환하며, 비동기 대량 요청 시 토큰당 비용을 실시간 API 대비 50% 할인 적용한다. 24시간 내 완료 보장 SLA가 추가돼 코드 리뷰 자동화·데이터 라벨링 등 대규모 오프라인 파이프라인에 즉시 투입 가능해졌다.
openaiapicost-optimization
무엇이 달라졌나
OpenAI Batch API가 기존 GPT-4o 계열에 이어 o3-mini까지 공식 지원 범위를 확대했다. GA 전환과 함께 다음 변경 사항이 적용된다.
- 비용: 실시간 API 대비 입력·출력 토큰 모두 50% 할인 (정확한 단가는 공식 페이지 참조)
- 완료 SLA: 요청 제출 후 24시간 이내 처리 보장 (기존 베타는 미보장)
- 최대 배치 크기: 단일 배치당 최대 50,000건 요청, 파일 크기 상한 200 MB
- 추론 예산 파라미터:
reasoning_effort(low/medium/high) 배치 단위 설정 가능
한국 개발자 활용 시나리오
1. 코드베이스 정적 분석 자동화 야간 CI 파이프라인에 배치 잡을 삽입해 PR 전체 파일을 o3-mini로 일괄 리뷰하고, 결과를 다음 날 오전 리포트로 수신하는 구조가 현실적인 비용으로 가능해진다.
import openai, json
client = openai.OpenAI()
# 배치 입력 파일 생성
tasks = [
{
"custom_id": f"review-{i}",
"method": "POST",
"url": "/v1/chat/completions",
"body": {
"model": "o3-mini",
"reasoning_effort": "medium",
"messages": [{"role": "user", "content": code_snippet}]
}
}
for i, code_snippet in enumerate(pr_files)
]
with open("batch_input.jsonl", "w") as f:
for t in tasks:
f.write(json.dumps(t, ensure_ascii=False) + "\n")
batch_file = client.files.create(file=open("batch_input.jsonl", "rb"), purpose="batch")
batch = client.batches.create(
input_file_id=batch_file.id,
endpoint="/v1/chat/completions",
completion_window="24h"
)
print(batch.id) # 다음 날 상태 폴링
2. 대규모 콘텐츠 분류·태깅 쇼핑몰 상품 설명 수만 건을 카테고리·감성 태그로 일괄 분류할 때 실시간 API 대비 월 운영 비용을 절반으로 낮출 수 있다.
주의할 점
| 항목 | 실시간 API | 배치 API | |------|-----------|----------| | 응답 지연 | 수 초 | 최대 24시간 | | 스트리밍 | 지원 | 미지원 | | 요청 취소 | 즉시 | 처리 시작 전만 가능 | | 속도 제한 | 분당 RPM 적용 | 별도 배치 한도 적용 |
실시간 사용자 인터랙션이 필요한 서비스에는 적합하지 않으며, 결과 수신 후 후처리 로직의 멱등성(idempotency)을 반드시 설계해야 한다.
출처: OpenAI Blog