오늘 Gemini API의 일괄 모드에 대해 소개하게 되어 기쁩니다. 일괄 모드는 처리량이 많고 지연 시간이 중요하지 않은 워크로드에 특화된 신규 비동기 엔드포인트입니다. Gemini API 일괄 모드를 사용하면 대규모 작업을 제출하고 예약과 처리를 오프로드하여 24시간 이내에 결과를 도출할 수 있습니다. 또한 자사의 동기 API에 비해 가격이 50% 저렴합니다.
일괄 모드는 사전에 데이터가 준비되어 있으며 즉각적인 응답이 필요하지 않은 작업에 매우 적합합니다. 이와 같은 대규모 작업을 실시간 트래픽과 분리했을 때의 세 가지 주요 장점을 소개합니다.
API 사용 방법은 단순하고 직관적입니다. 모든 요청을 하나의 파일로 만들어 제출하면 작업이 완료된 후 결과가 반환됩니다. 다음은 현재 개발자가 작업에 일괄 모드를 활용하는 사례입니다.
Google GenAI Python SDK를 사용하면 지금 바로 일괄 모드를 사용할 수 있습니다.
# 다음 줄을 포함하여 JSONL을 생성하세요:
# {"key": "request_1", "request": {"contents": [{"parts": [{"text": "Explain how AI works in a few words"}]}]}},
# {"key": "request_2", "request": {"contents": [{"parts": [{"text": "Explain how quantum computing works in a few words"}]}]}}
uploaded_batch_requests = client.files.upload(file="batch_requests.json")
batch_job = client.batches.create(
model="gemini-2.5-flash",
src=uploaded_batch_requests.name,
config={
'display_name': "batch_job-1",
},
)
print(f"Created batch job: {batch_job.name}")
# 최대 24시간 기다리세요
if batch_job.state.name == 'JOB_STATE_SUCCEEDED':
result_file_name = batch_job.dest.file_name
file_content_bytes = client.files.download(file=result_file_name)
file_content = file_content_bytes.decode('utf-8')
for line in file_content.splitlines():
print(line)
자세히 알아보려면 공식 문서 및 가격 책정 페이지를 확인하시기 바랍니다.
오늘과 내일에 걸쳐 모든 사용자에게 Gemini API용 일괄 모드를 출시할 예정입니다. 이를 시작으로 계속해서 일괄 처리 기능을 확장할 수 있도록 적극적으로 노력하겠습니다. 앞으로 출시될 보다 효과적이고 유연한 옵션을 기대해 주시기 바랍니다!