Batchvorhersagen

Mit Batchvorhersagen können Sie mehrere Text-Prompts, die nicht latenzempfindlich sind, effizient an ein Modell senden. Im Vergleich zu Onlinevorhersagen, bei denen Sie für jede Anfrage einen Eingabe-Prompt senden, können Sie eine große Anzahl von Eingabe-Prompts in einer einzelnen Anfrage zusammenfassen.

Unterstützte Modelle

Die Gemini Enterprise Agent Platform unterstützt Batchvorhersagen für die folgenden Modelle.

Llama :

OpenAI gpt-oss :

Qwen :

DeepSeek :

Einbettungsmodelle :

Eingabe vorbereiten

Bereiten Sie Ihre Eingaben in einer BigQuery-Tabelle oder als JSONL-Datei in Cloud Storage vor. Die Eingabe für beide Quellen muss dem OpenAI API-Schema JSONL-Format entsprechen, wie in den folgenden Beispielen gezeigt.

Large Language Models:

{"custom_id": "test-request-0", "method": "POST", "url": "/v1/chat/completions", "body": {"model": "MODEL_ID", "messages": [{"role": "user", "content": "Give me a recipe for banana bread"}], "max_tokens": 1000}}

Einbettungsmodelle:

{"custom_id": "test-request-0", "method": "POST", "url": "/v1/embeddings", "body": {"model": "MODEL_ID", "input": "Hello World"}}

BigQuery

Ihre BigQuery-Eingabetabelle muss dem folgenden Schema entsprechen:

Spaltenname Beschreibung
custom_id Eine ID für jede Anfrage, um die Eingabe mit der Ausgabe abzugleichen.
method Die Anfragemethode.
url Der Anfrageendpunkt.
body(JSON) Ihr Eingabe-Prompt.
  • Ihre Eingabetabelle kann andere Spalten enthalten, die vom Batchjob ignoriert und direkt an die Ausgabetabelle übergeben werden.
  • Batch-Vorhersagejobs reservieren zwei Spaltennamen für die Batch-Vorhersageausgabe: response(JSON) und id. Verwenden Sie diese Spalten nicht in der Eingabetabelle.
  • Die Spalten method und url werden entfernt und sind nicht in der Ausgabetabelle enthalten.

Cloud Storage

Für Cloud Storage muss die Eingabedatei eine JSONL-Datei sein, die sich in einem Cloud Storage-Bucket befindet.

Eine Batch-Vorhersage anfordern

Führen Sie eine Batch-Vorhersage für ein Modell mit Eingaben aus BigQuery oder Cloud Storage aus. Sie können unabhängig voneinander auswählen, ob Sie Vorhersagen in einer BigQuery-Tabelle oder einer JSONL-Datei in einem Cloud Storage-Bucket ausgeben möchten.

BigQuery

Geben Sie Ihre BigQuery-Eingabetabelle, das Modell und den Ausgabespeicherort an. Der Batch-Vorhersagejob und Ihre Tabelle müssen sich in derselben Region befinden.

REST

Nachdem Sie Ihre Umgebung eingerichtet haben, können Sie mit REST einen Text-Prompt testen. Im folgenden Beispiel wird eine Anfrage an den Publisher gesendet Modellendpunkt zu erstellen.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • LOCATION: Eine Region, die das Modell unterstützt.
  • PROJECT_ID: Ihre [Projekt-ID](/resource-manager/docs/creating-managing-projects#identifiers). .
  • MODEL: Der Name des Modells, das optimiert werden soll.
  • INPUT_URI: Die BigQuery-Tabelle, in der sich Ihre Batch-Vorhersageeingabe befindet, z. B. myproject.mydataset.input_table.
  • OUTPUT_FORMAT: Geben Sie bigquery an, um die Ausgabe in einer BigQuery-Tabelle zu speichern. Geben Sie jsonl an, um die Ausgabe in einem Cloud Storage-Bucket zu speichern.
  • DESTINATION: Geben Sie für BigQuery bigqueryDestination an. Geben Sie für Cloud Storage gcsDestination an.
  • OUTPUT_URI_FIELD_NAME: Geben Sie für BigQuery outputUri an. Geben Sie für Cloud Storage outputUriPrefix an.
  • OUTPUT_URI: Geben Sie für BigQuery den Speicherort der Tabelle an, z. B. myproject.mydataset.output_result. Geben Sie für Cloud Storage den Bucket- und Ordnerspeicherort an, z. B. gs://mybucket/path/to/outputfile.

HTTP-Methode und URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs

JSON-Text der Anfrage:

'{
  "displayName": "JOB_NAME",
  "model": "publishers/PUBLISHER/models/MODEL_ID",
  "inputConfig": {
    "instancesFormat":"bigquery",
    "bigquerySource":{
      "inputUri" : "INPUT_URI"
    }
  },
  "outputConfig": {
    "predictionsFormat":"OUTPUT_FORMAT",
    "DESTINATION":{
      "OUTPUT_URI_FIELD_NAME": "OUTPUT_URI"
    }
  }
}'

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

Cloud Storage

Geben Sie den Cloud Storage-Speicherort, das Modell und den Ausgabespeicherort Ihrer JSONL-Datei an.

REST

Nachdem Sie Ihre Umgebung eingerichtet haben, können Sie mit REST einen Text-Prompt testen. Im folgenden Beispiel wird eine Anfrage an den Publisher gesendet Modellendpunkt zu erstellen.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • LOCATION: Eine Region, die das Modell unterstützt.
  • PROJECT_ID: Ihre [Projekt-ID](/resource-manager/docs/creating-managing-projects#identifiers). .
  • MODEL: Der Name des Modells, das optimiert werden soll.
  • INPUT_URI: Der Cloud Storage-Speicherort Ihrer JSONL-Batchvorhersageeingabe, z. B. gs://bucketname/path/to/jsonl.
  • OUTPUT_FORMAT: Geben Sie bigquery an, um die Ausgabe in einer BigQuery-Tabelle zu speichern. Geben Sie jsonl an, um die Ausgabe in einem Cloud Storage-Bucket zu speichern.
  • DESTINATION: Geben Sie für BigQuery bigqueryDestination an. Geben Sie für Cloud Storage gcsDestination an.
  • OUTPUT_URI_FIELD_NAME: Geben Sie für BigQuery outputUri an. Geben Sie für Cloud Storage outputUriPrefix an.
  • OUTPUT_URI: Geben Sie für BigQuery den Speicherort der Tabelle an, z. B. myproject.mydataset.output_result. Geben Sie für Cloud Storage den Bucket- und Ordnerspeicherort an, z. B. gs://mybucket/path/to/outputfile.

HTTP-Methode und URL:

POST https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs

JSON-Text der Anfrage:

'{
  "displayName": "JOB_NAME",
  "model": "publishers/PUBLISHER/models/MODEL_ID",
  "inputConfig": {
    "instancesFormat":"jsonl",
    "gcsSource":{
      "uris" : "INPUT_URI"
    }
  },
  "outputConfig": {
    "predictionsFormat":"OUTPUT_FORMAT",
    "DESTINATION":{
      "OUTPUT_URI_FIELD_NAME": "OUTPUT_URI"
    }
  }
}'

Wenn Sie die Anfrage senden möchten, wählen Sie eine der folgenden Optionen aus:

curl

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs"

PowerShell

Speichern Sie den Anfragetext in einer Datei mit dem Namen request.json und führen Sie den folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

Status eines Batch-Vorhersagejobs abrufen

Rufen Sie den Status Ihres Batchvorhersagejobs ab, um zu prüfen, ob er erfolgreich abgeschlossen wurde. Die Joblänge hängt von der Anzahl der von Ihnen gesendeten Eingabeelemente ab.

REST

Nachdem Sie Ihre Umgebung eingerichtet haben, können Sie mit REST einen Text-Prompt testen. Im folgenden Beispiel wird eine Anfrage an den Publisher gesendet Modellendpunkt zu erstellen.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • PROJECT_ID: Ihre [Projekt-ID](/resource-manager/docs/creating-managing-projects#identifiers). .
  • LOCATION: Die Region, in der sich Ihr Batchjob befindet.
  • JOB_ID: Die Batchjob-ID, die beim Erstellen des Jobs zurückgegeben wurde.

HTTP-Methode und URL:

GET https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs/JOB_ID

Senden Sie die Anfrage mithilfe einer der folgenden Optionen:

curl

Führen Sie folgenden Befehl aus:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs/JOB_ID"

PowerShell

Führen Sie folgenden Befehl aus:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/batchPredictionJobs/JOB_ID" | Select-Object -Expand Content

Sie sollten eine JSON-Antwort ähnlich wie diese erhalten:

Ausgabe abrufen

Wenn ein Batch-Vorhersagejob abgeschlossen ist, rufen Sie die Ausgabe vom angegebenen Speicherort ab. Für BigQuery befindet sich die Ausgabe in der Spalte response(JSON) Ihrer BigQuery-Zieltabelle. Für Cloud Storage wird die Ausgabe als JSONL-Datei am Cloud Storage-Ausgabespeicherort gespeichert.

Nächste Schritte