Пакетный API

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'