배치로 옮길 물량부터 골라냅니다

기준은 단순합니다. 사용자가 결과를 기다리며 화면을 보고 있는가입니다. 보고 있다면 배치 대상이 아닙니다. 야간 문서 분류, 대량 요약, 데이터 정제, 백필, 평가 파이프라인처럼 사람이 기다리지 않는 작업이 대상입니다.

실측 로그를 보면 많은 서비스에서 전체 토큰의 절반 이상이 이런 비실시간 물량입니다. 그 물량을 배치로 분리하는 것만으로 해당 비용이 반으로 줄어듭니다.

할인은 모델 단가에 그대로 절반입니다

2026년 8월 28일 기준 공식 가격 문서의 배치 단가입니다. 모두 100만 토큰당 미국 달러입니다.

모델표준 입력/출력배치 입력/출력
Claude Haiku 4.5$1.00 / $5.00$0.50 / $2.50
Claude Sonnet 5$2.00 / $10.00$1.00 / $5.00
Claude Opus 5$5.00 / $25.00$2.50 / $12.50

OpenAI도 동기 API 대비 50% 할인이라는 같은 구조입니다. 어느 쪽이든 "대량 작업 전용 저가 모델"을 따로 찾을 필요 없이 쓰던 모델 그대로 반값이 됩니다.

요청을 모아 보내고 결과를 나중에 가져옵니다

동작 방식은 두 회사가 비슷합니다. 요청 여러 건을 각자 고유 ID(custom_id)와 함께 하나의 배치로 제출하면, 처리 상태를 조회하다가 완료되면 결과 파일을 내려받는 구조입니다.

Anthropic 공식 문서의 Batch processing 안내
Anthropic 공식 문서의 Batch processing 비용 50% 절감과 비동기 처리 구조, 대부분 1시간 내 완료된다는 안내가 담겨 있습니다. 촬영 2026.08.28
OpenAI 쪽 제한 수치

배치 하나에 최대 5만 건, 입력 파일 200MB, 완료 보장 24시간(보통 더 빨리 끝납니다), 결과 보관 30일입니다. 배치는 일반 API와 별도의 처리량 풀을 쓰기 때문에 실시간 트래픽의 rate limit을 잠식하지 않는 부수 효과도 있습니다.

Anthropic 쪽 제한 수치

배치 하나에 최대 10만 건 또는 256MB, 결과 보관 29일입니다. 공식 문서 기준 대부분의 배치가 1시간 안에 끝난다고 안내되어 있어 체감 지연은 24시간보다 훨씬 짧은 경우가 많습니다. 단, 배치 안에서는 캐시 사전 워밍(max_tokens 0)이 지원되지 않습니다.

제출과 수거의 뼈대 (Python·Claude 기준)batch = client.messages.batches.create(requests=[
  dict(custom_id=f"doc-{d.id}", # 원본과 잇는 열쇠
     params=dict(model="claude-haiku-4-5",
       max_tokens=256, messages=[...]))
  for d in docs])
# 이후 상태 폴링 → ended면 results()로 스트리밍 수거

custom_id에 원본 데이터의 기본키를 넣어두면 결과 매핑 코드가 한 줄로 끝납니다.

주의할 점은 결과 순서입니다. 결과는 제출 순서대로 오지 않습니다. 반드시 custom_id로 원본 요청과 짝을 맞춰야 합니다. 순서 기반으로 매핑하는 코드는 조용히 데이터가 섞이는 사고를 만듭니다.

부분 실패를 전제로 설계합니다

수천 건짜리 배치에서는 일부가 실패하는 게 정상입니다. 결과에는 건별 성공·실패 상태가 담겨 오므로, 실패 건만 골라 재제출하는 경로를 처음부터 만들어 두세요. 24시간 안에 못 끝난 건은 만료 처리되는데 이 역시 실패로 간주하고 같은 경로로 태우면 됩니다.

파이프라인에 넣을 때는 "제출 → 상태 폴링 → 결과 수집 → 실패 재제출"을 하나의 작업 단위로 묶고, 폴링 간격은 분 단위면 충분합니다. 초 단위 폴링은 의미 없이 API 호출만 늘립니다.

1만 건 분류 작업으로 계산해 보면

가정: 문서 1만 건, 건당 입력 1,500·출력 100토큰, Haiku 4.5동기 API: 입력 15M×$1 + 출력 1M×$5 = $20.00
Batch: 입력 15M×$0.50 + 출력 1M×$2.50 = $10.00
Batch+캐싱(공통 지침 1,000토큰이 캐시 적중):
  적중분 10M×$0.05 + 나머지 5M×$0.50 + 출력 $2.50 = 약 $5.50

같은 작업이 구조만 바꿔 $20에서 $5.50까지 내려갑니다. 단순화한 계산이며 실제 캐시 적중률에 따라 달라집니다.

이 정도 규모라면 어느 쪽이든 절대 금액은 크지 않아 보입니다. 하지만 매일 도는 파이프라인이라면 연 단위로 수백 달러 차이가 되고, 문서가 10만 건 단위로 커지면 월 청구서에서 바로 보이는 숫자가 됩니다.

캐싱과 겹쳐 쓰면 할인이 더 커집니다

Claude는 배치 할인과 프롬프트 캐싱 할인이 중복 적용됩니다. 같은 시스템 프롬프트를 공유하는 대량 배치라면 배치 50%에 캐시 읽기 90% 할인이 곱해지는 셈입니다. 반복 접두부가 큰 배치 작업에서 특히 효과가 큽니다.

야간 대량 분류·요약배치 이관 1순위, 캐싱 중복 적용 확인

실시간 챗봇·검색배치 부적합 — 캐싱과 모델 티어링으로

주기적 리포트 생성스케줄러 + 배치 조합이 정석

일회성 백필배치 단발 실행, 실패 재제출 경로 필수

Anthropic Batch 문서 확인 ↗

확인한 공식 자료

Anthropic 가격 문서의 Batch 단가 표와 OpenAI Batch API 문서를 2026년 8월 28일 확인했습니다.

Claude API 가격 문서 ↗

OpenAI Batch 문서 ↗