API Gemini Batch предназначен для асинхронной обработки больших объемов запросов со скоростью, составляющей 50% от стандартной . Целевое время выполнения составляет 24 часа, но в большинстве случаев оно значительно быстрее.
Используйте Batch API для крупномасштабных, несрочных задач, таких как предварительная обработка данных или проведение оценок, где не требуется немедленный ответ.
Создание пакетного задания
В Batch API у вас есть два способа отправлять запросы:
- Встроенные запросы : список объектов
GenerateContentRequestнепосредственно включенных в ваш пакетный запрос на создание контента. Это подходит для небольших пакетов, общий размер запроса которых не превышает 20 МБ. Результатом работы модели является список объектовinlineResponse. - Входной файл : файл JSON Lines (JSONL) , где каждая строка содержит полный объект
GenerateContentRequest. Этот метод рекомендуется для больших запросов. Выходные данные , возвращаемые моделью, представляют собой файл JSONL, где каждая строка является либо объектомGenerateContentResponse, либо объектом статуса.
Встроенные запросы
Для небольшого количества запросов вы можете напрямую встраивать объекты GenerateContentRequest в ваш BatchGenerateContentRequest . В следующем примере метод BatchGenerateContent вызывается с помощью встроенных запросов:
Python
from google import genai
from google.genai import types
client = genai.Client()
# A list of dictionaries, where each is a GenerateContentRequest
inline_requests = [
{
'contents': [{
'parts': [{'text': 'Tell me a one-sentence joke.'}],
'role': 'user'
}]
},
{
'contents': [{
'parts': [{'text': 'Why is the sky blue?'}],
'role': 'user'
}]
}
]
inline_batch_job = client.batches.create(
model="gemini-3.8-flash",
src=inline_requests,
config={
'display_name'