Batch API

تم تصميم Gemini Batch API لمعالجة كميات كبيرة من الطلبات بشكل غير متزامن بنصف التكلفة العادية. الوقت المستهدف لإنجاز المهمة هو 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.5-flash",
    src=inline_requests,
    config={
        'display_name': "inlined-requests-job-1",
    },
)

print(f"Created batch job: {inline_batch_job.name}")

JavaScript


import {GoogleGenAI} from '@google/genai';

const ai = new GoogleGenAI({});

const inlinedRequests = [
    {
        contents: [{
            parts: [{text: 'Tell me a one-sentence joke.'}],
            role: 'user'
        }]
    },
    {
        contents: [{
            parts: [{'text': 'Why is the sky blue?'}],
            role: 'user'
        }]
    }
]

const response =