Die Batch API für Large Language Models ermöglicht die asynchrone Verarbeitung zahlreicher Inferenzanfragen und ist vollständig mit dem OpenAI API-Standard kompatibel.
Die Batch API ist eine kosteneffiziente Lösung, wenn sofortige Inferenzergebnisse nicht erforderlich sind. Sie bietet höhere Ratenlimits als Online-Aufrufe und stellt sicher, dass Ergebnisse innerhalb eines angemessenen Zeitrahmens von 24 Stunden bereitgestellt werden.
Diese API ist ideal für:
- Durchführen von Auswertungen und Datenanalysen.
- Klassifizieren umfangreicher Datensätze.
- Generieren von Dokumentzusammenfassungen im Offline-Modus.
Unterstützte Modelle:
Schnellstart
1. Batch-Dateien vorbereiten
Die Batch API verwendet Dateien im .jsonl-Format als Eingabe, wobei jede Zeile die Details einer API-Inferenzanfrage darstellt. Verfügbare Endpunkte umfassen /v1/chat/completions und /v1/completions.
Setzen Sie den Parameter endpoint auf /v1/chat/completions oder /v1/completions für OpenAI API-Kompatibilität.
Jede Anfrage muss eine eindeutige custom_id enthalten, um die Inferenzergebnisse nach Abschluss des Batchs in der Ausgabedatei zu finden. Parameter im Feld body jeder Zeile werden als tatsächliche Inferenzanfrageparameter an den Endpunkt gesendet.
Alle Anfragen innerhalb einer einzelnen Batch-JSONL-Datei müssen dasselbe Modell adressieren. Mischen Sie keine Anfragen für unterschiedliche Modelle in einem Batch.
Unten sehen Sie eine Beispiel-Eingabedatei mit 2 Anfragen:
2. Batch-Eingabedatei hochladen
Laden Sie die Batch-Eingabedatei hoch, um sicherzustellen, dass sie beim Erstellen eines Batchs korrekt referenziert werden kann. Verwenden Sie die Files API, um Ihre .jsonl-Datei hochzuladen, und setzen Sie den Zweck auf batch. Beachten Sie, dass die Datei 15 Tage lang aufbewahrt wird.
Codebeispiel
Python
Curl
Beispielantwort nach erfolgreichem Datei-Upload:
3. Einen Batch erstellen
Sobald die Eingabedatei erfolgreich hochgeladen wurde, können Sie einen Batch mit der ID des hochgeladenen File-Objekts starten. Das Abschlussfenster ist fest auf 24h gesetzt und derzeit nicht anpassbar.
Codebeispiel
Python
Curl
Diese Anfrage gibt ein Batch-Objekt zurück, das Metadaten zu Ihrem Batch enthält, wie im folgenden Beispiel dargestellt:
4. Status eines Batchs prüfen
Sie können den Status eines Batchs jederzeit prüfen, um die neuesten Batch-Informationen zu erhalten.
Die Status-Enumerationswerte des Batch-Objekts lauten wie folgt:
| Status | Beschreibung |
|---|
| VALIDATING | Die Eingabedatei wird validiert, bevor der Batch beginnen kann |
| PROGRESS | Batch wird ausgeführt |
| COMPLETED | Batch-Verarbeitung erfolgreich abgeschlossen |
| FAILED | Batch-Verarbeitung fehlgeschlagen |
| EXPIRED | Batch hat die Frist überschritten |
| CANCELLING | Batch wird abgebrochen |
| CANCELLED | Batch wurde abgebrochen |
Codebeispiel
Python
Curl
5. Ergebnisse abrufen
Sobald die Batch-Inferenz abgeschlossen ist, können Sie die Ergebnis-Ausgabedatei über das Feld output_file_id aus dem Batch-Objekt herunterladen.
Die Ergebnis-Ausgabedatei wird 30 Tage nach Abschluss der Batch-Inferenz gelöscht. Rufen Sie sie daher bitte zeitnah über die Schnittstelle ab.
Codebeispiel
Python
Curl
Die Antwort gibt den rohen Dateiinhalt zurück. Bei Batch-Ausgabedateien enthält jede Zeile eine Antwort wie diese:
Anweisungen
Einschränkungen
- Jeder Batch kann bis zu 50.000 Anfragen enthalten.
- Die maximale Eingabedateigröße pro Batch beträgt 100 MB.
Fehlerbehandlung
Fehler, die während der Batch-Verarbeitung auftreten, werden in einer separaten Fehlerdatei aufgezeichnet, die über das Feld error_file_id zugänglich ist. Häufige Fehlercodes umfassen:
| Fehlercode | Beschreibung | Lösung |
|---|
| 400 | Ungültiges Anfrageformat | JSONL-Syntax und erforderliche Felder prüfen |
| 401 | Authentifizierung fehlgeschlagen | API-Schlüssel überprüfen |
| 404 | Batch nicht gefunden | Batch-ID prüfen |
| 429 | Ratenlimit überschritten | Anfragehäufigkeit reduzieren |
| 500 | Serverfehler | Kontaktieren Sie uns |
Batch-Ablauf
Batchs, die nicht innerhalb von 24 Stunden abgeschlossen werden, wechseln in den Status EXPIRED. Nicht abgeschlossene Anfragen werden abgebrochen, während abgeschlossene Anfragen über eine Ausgabedatei bereitgestellt werden. Sie zahlen nur für Tokens, die von abgeschlossenen Anfragen verbraucht wurden. Der Batch unternimmt alle Anstrengungen, um innerhalb von 24 Stunden abgeschlossen zu werden.
Alle Batch APIs
- Batch erstellen
- Batch abrufen
- Batch abbrechen
- Batch auflisten
- Datei hochladen
- Dateien auflisten
- Datei abrufen
- Datei löschen
- Dateiinhalt abrufen
Zuletzt geändert am 15. Mai 2026