Batch가 진짜 무엇을 위한 것
Batch API가 옳은 도구 — 야간 분류, 주기적 backfill, 큰 평가 run, 데이터셋 annotation, 콘텐츠 audit. '답이 24시간 안 land 가능' 진실인 어떤 거. 거래는 그 유연성에 ~50% per-token 가격 할인.
Custom ID로 결과 re-key
각 batch 요청이 custom_id 받음. 결과가 그 id로 키된 채 임의 순서로 stream back. Position이 아니라 custom_id로 도메인 row에 매핑. Batch input list와 output stream을 id로 join된 두 독립 collection처럼 다뤄.
Polling, webhook, idempotent retry
가벼운 워크로드면 30-60초마다 polling OK. 프로덕션이면 webhook(제공될 때) 또는 scheduled check 선호. 결과 처리 단계 항상 idempotent — 끝난 batch 다시 pull해도 downstream store 더블 쓰지 마.
원칙: Batch는 'slow API' 아니야. 'wait 가능한 작업에 더 싼 API'. 차이 사용, Messages와 같은 척 X.