Modelle

OpenAI: o4 Mini (batch)

Markdown · JSON

OpenAI: o4 Mini (batch)

OpenAI o4-mini ist ein kompaktes Reasoning-Modell mit Schwerpunkt auf effizienter Programmierung und visuellen Aufgaben. Es nimmt Text und Bilder entgegen, gibt Text aus und unterstützt strukturierte Antworten und Werkzeuge, um ein abgegrenztes technisches Problem zu lösen oder aus bereitgestelltem Material eine nützliche Schlussfolgerung zu ziehen.

Über das Modell

Diese Beschreibung erläutert die Fähigkeiten des Modells. Die über Ailoot verfügbaren Eingaben, Ausgaben und Optionen sind unten für die ausgewählte Methode aufgeführt.

o4-mini ist OpenAIs kompaktes Reasoning-Modell der o-Serie, optimiert für schnelles, wirksames Schlussfolgern bei Programmieraufgaben und visuellen Aufgaben. Es nimmt Text und Bilder entgegen und erzeugt Text. Sein nützlicher Einsatzbereich ist ein klar umrissenes technisches Problem, das vor der Antwort eine Analyse erfordert: einen Codefehler verstehen, ein Diagramm interpretieren, Fakten aus bereitgestelltem Material verknüpfen oder ein strukturiertes Ergebnis erzeugen, das ein nachfolgender Schritt nutzen kann.

Geben Sie dem Modell bei Programmieraufgaben die relevante Funktion oder die betreffenden Dateien, das erwartete Verhalten und die genaue fehlerauslösende Eingabe oder Fehlermeldung. Ergänzen Sie Angaben zur Programmiersprache und Umgebung, die das Ergebnis beeinflussen. Ein gezielter Auftrag kann nach der wahrscheinlichen Ursache, einem möglichst kleinen Korrekturvorschlag und einer Erklärung fragen, wie die Änderung das beobachtete Verhalten behebt. Legen Sie den Änderungsrahmen fest, etwa den Erhalt der öffentlichen Schnittstelle oder der Bedeutung vorhandener Daten, damit das Ergebnis anhand der tatsächlichen Aufgabe geprüft werden kann.

Stellen Sie bei einem visuellen Problem einen gut lesbaren Screenshot, ein Diagramm oder eine Grafik bereit und benennen Sie die zu beantwortende Frage. Halten Sie aussagekräftige Beschriftungen, Achsen und Einheiten sichtbar. Ein beispielhafter Auftrag besteht darin, zu erläutern, welche Aussage eine Grafik stützt, die verwendeten Beobachtungen zu benennen und sichtbare Werte von Schlussfolgerungen zu trennen. Kennzeichnen Sie bei einer Dokumentaufgabe das Ausgangsmaterial und definieren Sie die Felder oder Beziehungen, die in der Antwort benötigt werden. Auch ein kompaktes Modell profitiert von vollständigen Probleminformationen und einer präzisen Vorgabe für die Ausgabe.

OpenAI nennt ein Kontextfenster von 200.000 Token, eine maximale Ausgabe von 100.000 Token und einen Wissensstand bis zum 1. Juni 2024. Reasoning-Token beanspruchen sowohl Kontext- als auch Ausgabekapazität. Lassen Sie deshalb Platz für die Analyse und die abschließende Antwort, statt das gesamte Kontingent mit Eingaben zu füllen. Wird eine Kontext- oder Ausgabegrenze erreicht, kann eine unvollständige Antwort entstehen, bevor überhaupt eine sichtbare Antwort vorliegt. Auch eine kurze abschließende Antwort kann internes Schlussfolgern erfordern; allein ihre sichtbare Länge beschreibt nicht das gesamte Tokenbudget.

Die genaue Modellseite für o4-mini führt die Schnittstellen Chat Completions, Responses, Batch und Feinabstimmung auf. Zu den dokumentierten Funktionen zählen Streaming, Structured Outputs, Funktionsaufrufe, Datei-Uploads, Bildeingaben, Dateisuche, Prompt-Caching und Feinabstimmung. Als Werkzeuge sind Web- und Dateisuche, Codeinterpretation und MCP-Verbindungen aufgeführt. Geben Sie einem Werkzeug der Anwendung einen klaren Zweck und definierte Anforderungen an die Eingabe, liefern Sie das tatsächliche Ergebnis zurück und bitten Sie das Modell, es für die nächste Entscheidung zu nutzen. Ein angeforderter Funktionsaufruf ist ein Handlungsvorschlag, während eine strukturierte abschließende Antwort die Informationen ordnet, die aus der Aufgabe hervorgehen.

OpenAIs Prompting-Leitfaden für die o-Serie empfiehlt ein einfaches, direktes Ziel mit ausdrücklichen Vorgaben und klaren Trennzeichen um das Ausgangsmaterial. Lassen Sie das Modell das Problem intern durchdenken; fordern Sie die benötigte abschließende Erklärung, Belege oder Berechnung an, statt ein Protokoll verborgener Denkprozesse zu verlangen. Versuchen Sie zunächst einen klaren Arbeitsauftrag und ergänzen Sie Beispiele, wenn ein gefordertes Format oder eine Kategoriegrenze unklar bleibt. Ein Beispiel sollte dieselben Regeln wie die tatsächliche Aufgabe zeigen, einschließlich der Darstellung fehlender Informationen.

Für Anwendungen, die optional eine Erklärung des Denkprozesses benötigen, dokumentiert OpenAIs Reasoning-Leitfaden ausdrücklich ausführliche Zusammenfassungen des Denkprozesses für o4-mini. Eine solche Zusammenfassung muss angefordert werden und unterscheidet sich von den nicht offengelegten internen Reasoning-Token. Die abschließende Antwort muss weiterhin das vom Nutzer gewünschte Ergebnis enthalten: beispielsweise einen vorgeschlagenen Codeeingriff, eine Grafikinterpretation mit relevanten Beobachtungen oder extrahierte Felder mit Bezug zum bereitgestellten Material. Stellen Sie aktuelle Fakten bereit, wenn sie wichtig sind, prüfen Sie wesentliche Aussagen anhand ihrer Quelle und halten Sie den Ablauf durch eine abgegrenzte Aufgabe und ein Abschlusskriterium auf das Ziel ausgerichtet.

Ailoot Ultra · Stapelverarbeitung POST /v1/batches openai/o4-mini:batch

openai/o4-mini:batch

OpenAI /openai/o4-mini:batch

Einstieg

OpenAI o4-mini ist ein kompaktes Reasoning-Modell mit Schwerpunkt auf effizienter Programmierung und visuellen Aufgaben. Es nimmt Text und Bilder entgegen, gibt Text aus und unterstützt strukturierte Antworten und Werkzeuge, um ein abgegrenztes technisches Problem zu lösen oder aus bereitgestelltem Material eine nützliche Schlussfolgerung zu ziehen.

Zulässige Eingaben
Text
Ergebnisse
Text

In Ailoot verfügbar · Eingaben und Methoden

Ailoot Ultra · Stapelverarbeitung POST /v1/batches
Eingabe
text
Ausgabe
text
Ausgabeformat
eingebettetes JSON unter results[].response.body
FeldTypAnforderungWerte und LimitsStandard
FeldendpointTypstringAnforderungErforderlichWerte und Limits
/v1/chat/completions
Standard—
FeldmodelTypstringAnforderungErforderlichWerte und Limits
openai/o4-mini:batch
Standard—
FeldrequestsTypbatch_item[]AnforderungErforderlichWerte und Limits
Mindestanzahl Elemente: 1
Standard—
Feldrequests[].custom_idTypstringAnforderungErforderlichWerte und LimitsStandard—
Feldrequests[].body.messagesTypmessage[]AnforderungErforderlichWerte und LimitsStandard—
Feldcompletion_windowTypstringAnforderungOptionalWerte und Limits
24h
Standard—
FeldproviderTypobject|nullAnforderungOptionalWerte und LimitsStandard—
Feldrequests[].body.modelTypstringAnforderungOptionalWerte und Limits
openai/o4-mini:batch, openai/o4-mini
Standard—
Feldprovider.onlyTypstring[]AnforderungOptionalWerte und Limits
openai
Standard—
Feldprovider.allow_fallbacksTypboolean|nullAnforderungOptionalWerte und Limits
false, null
Standard—
Methodenparameter und Lebenszyklus
ParameterVertrag
Parametercontent_typeVertragapplication/json
ParameterrequiredVertragendpoint, model, requests
Parametermaterial_typesVertragtext
ParameterrepresentationVertrageingebettete requests[]; jedes Element enthält custom_id und body
Parameterrequest_endpoint_profileVertrag/v1/chat/completions
Parameterfile_materialVertragDer Aufrufer kann tatsächliches UTF-8-JSONL lokal in requests[] einlesen. Es werden weder ein Upload-Zweck noch input_file_id oder eine Dateireferenz verwendet. Fehlendes oder leeres Kundenmaterial stoppt die Vorbereitung vor POST.
Parameterserialization_orderVertragendpoint, model, provider (falls angegeben), completion_window (falls angegeben), requests als letztes Feld
Parameteroptional_controlsVertragprovider.only, provider.allow_fallbacks, completion_window
Parameterschema_scopeVertragAnfragekörper für Text Chat Completions in der dokumentierten Inline-Batch-Struktur.

Lebenszyklus: asynchronous

GET /v1/batches/{operation_id} · die tatsächliche response.id der ursprünglichen Erstellungsantwort; derselbe Nutzer/Schlüssel/dieselbe Gruppe

Tarife

Tarifangaben erweitern die Anfrageoptionen nicht. Unterstützte Parameter stehen bei der ausgewählten Methode.

Schnellmodus
Nicht angegeben Wenn der Schnellmodus ausgewählt ist
Flex-Modus
Nicht angegeben Wenn der Modus flex ausgewählt ist
Maximaler Denkaufwand
Nicht angegeben Wenn beim maximalen Denkaufwand die Standardanpassung (default) verwendet wird
Preise für explizites Caching
Nicht aktiviert Wenn explizites Caching angefordert wird

Ailoot-Tarife

Preise nach Konfiguration

Ordnen Sie jede Gebühr den angezeigten Bedingungen zu. Verwenden Sie für jede Gruppe alternativer Konfigurationen einen Tarif.

KonfigurationTarifstaffelKontexttoken, mehr alsKontexttoken, bis einschließlichGebühr
KonfigurationBasistarife für TokenTarifstaffelGrundtarifKontexttoken, mehr als—Kontexttoken, bis einschließlichKeine ObergrenzeGebühr
Eingabe · Eingabetoken $0.0011 / 1K Tokens
Ausgabe · Ausgabetoken $0.0044 / 1K Tokens
Eingabe · Cache lesen $0.000275 / 1K Tokens
Eingabe · In Cache schreiben — / 1K Tokens
Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens
KonfigurationAnfragelängenstufe 1Tarifstaffel—Kontexttoken, mehr als0Kontexttoken, bis einschließlichKeine ObergrenzeGebühr
Eingabe · Eingabetoken $0.0011 / 1K Tokens
Ausgabe · Ausgabetoken $0.0044 / 1K Tokens
Eingabe · Cache lesen $0.000275 / 1K Tokens
Eingabe · In Cache schreiben — / 1K Tokens
Eingabe · In Cache schreiben, 1 Stunde — / 1K Tokens

Ailoot reserviert vor einer Anfrage einen geschätzten Betrag. Nach dem Ergebnis rechnet Ailoot die endgültige Gebühr anhand des gemessenen Verbrauchs ab. Bei Streaming erfolgt die Abrechnung anhand des abschließenden Verbrauchsdatensatzes. So funktionieren Reservierung und Abrechnung →

Beispielanfragen

Ailoot Ultra · Stapelverarbeitung

curl · gespeicherte BeispieldatenPython HTTP · tatsächliche JSONL-Daten des KundenPython · jedes fertiggestellte Ergebnis speichern
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
python3 - <<'PY_REQUEST'
import json
from pathlib import Path
body=json.loads('{"endpoint":"/v1/chat/completions","model":"openai/o4-mini:batch","requests":[{"custom_id":"req-0001","body":{"messages":[{"role":"user","content":"Hello!"}],"max_tokens":16}}]}')
Path("batch-request.json").write_text(json.dumps(body,ensure_ascii=False),encoding="utf-8")
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/batches \
  -H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
  --data-binary @batch-request.json -D batch-response-headers.txt -o batch-create-response.json
import json, os
from pathlib import Path
from urllib.request import Request, urlopen

def prepare_requests(customer_path):
    path = Path(customer_path)
    if not path.is_file(): raise ValueError("Customer JSONL file is missing")
    items = [json.loads(line) for line in path.read_text(encoding="utf-8").splitlines() if line.strip()]
    if not items: raise ValueError("Customer JSONL contains no requests")
    ids = set()
    for item in items:
        if set(item) != {"custom_id", "body"}: raise ValueError("Each item needs custom_id and body")
        cid = item["custom_id"]
        if not isinstance(cid, str) or not cid.strip() or cid in ids: raise ValueError("custom_id must be nonempty and unique")
        ids.add(cid)
        if not isinstance(item["body"], dict) or not item["body"].get("messages"): raise ValueError("Supply actual text messages")
        supplied_model = item["body"].get("model")
        if supplied_model is not None and supplied_model not in ['openai/o4-mini:batch', 'openai/o4-mini']: raise ValueError("body.model must be an exact documented caller or wire ID")
    return {"endpoint":"/v1/chat/completions", "model":"openai/o4-mini:batch", "requests":items}

if __name__ == "__main__":
    material = os.environ.get("AILOOT_BATCH_REQUESTS_JSONL", "")
    if not material: raise SystemExit("Set AILOOT_BATCH_REQUESTS_JSONL to your actual customer file")
    body = prepare_requests(material)
    key = os.environ.get("AILOOT_API_KEY", "")
    if not key: raise SystemExit("Set AILOOT_API_KEY")
    request = Request("https://api.ailoot.ai/v1/batches", data=json.dumps(body, ensure_ascii=False).encode("utf-8"), headers={"Authorization":"Bearer " + key, "Content-Type":"application/json"}, method="POST")
    with urlopen(request) as response:
        raw = response.read()
        Path("batch-create-response.json").write_bytes(raw)
        print(raw.decode("utf-8"))
import json
from pathlib import Path
raw = Path("batch-status-response.json").read_bytes()
response = json.loads(raw)
if response.get("status") != "completed":
    raise SystemExit("Keep the original operation; read its status without resubmitting")
results = response.get("results")
if not isinstance(results, list) or not results:
    raise SystemExit("Preserve the original response; completed results are missing")
Path("batch-results.jsonl").write_text("".join(json.dumps(item, ensure_ascii=False) + "\n" for item in results), encoding="utf-8")
# Preserve batch-status-response.json with aggregate usage and every result/error.

Ergebnisse abrufen und speichern

Ailoot Ultra · Stapelverarbeitung

eingebettetes JSON unter results[].response.body

  • GET /v1/batches/{operation_id}
Auftragsstatus prüfen
curl · Status des ursprünglichen Vorgangs
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
BATCH_OPERATION_ID="$(python3 - <<'PY_ID'
import json
from pathlib import Path
from urllib.parse import quote
response = json.loads(Path("batch-create-response.json").read_text(encoding="utf-8"))
operation = response.get("id")
if not isinstance(operation, str) or not operation: raise SystemExit("No actual original operation ID; preserve the response and do not resubmit")
print(quote(operation, safe=""))
PY_ID
)"
curl --fail-with-body --silent --show-error "https://api.ailoot.ai/v1/batches/$BATCH_OPERATION_ID" \
  -H "Authorization: Bearer $AILOOT_API_KEY" -o batch-status-response.json
Alle fertiggestellten Ergebnisse aufbewahren

Bewahren Sie jede vollständig zurückgegebene Antwort, Datei und jeden Inhaltsteil auf.

Das vollständige ursprüngliche Status-JSON, jedes Ergebnis/jede custom_id und den vollständigen Antwort- oder Fehlerkörper aufbewahren. Abgeschlossene results[] ohne Filterung als JSONL speichern.

Wenn die ursprüngliche Antwort geprüft werden muss

Die ursprüngliche Vorgangs-ID beibehalten. Bei 503 result_pending_check gilt X-Should-Retry:false; einen ursprünglichen Batch mit unbekanntem Ausgang niemals erneut einreichen.

Antwortfelder
FeldTyp
Feldresults[].custom_idTypstring
Feldresults[].response.body.choices[].message.contentTypstring|null
Feldresults[].errorTypobject|null
FeldusageTypobject|null
FeldidTypstring
FeldmodelTypstring
FeldendpointTypstring
FeldstatusTypstring
Feldrequest_countsTypobject
Feldresults[].idTypstring
Feldresults[].response.status_codeTypinteger
Feldresults[].response.request_idTypstring
Fehler und nächste Schritte
AntwortBedingungNächster Schritt
Antwort400 · invalid_request_errorBedingungUngültige Struktur der dokumentierten Inline-Einbettung, doppelte Schlüssel, ungültige Identitätsangaben zu einem Element oder ein Konflikt mit den konfigurierten Modellfähigkeiten.Nächster SchrittDie angegebenen Felder vor jeder neuen Einreichung korrigieren.
Antwort401 · authentication_errorBedingungUngültiger API-Schlüssel.Nächster SchrittDen autorisierten Ailoot-Schlüssel verwenden.
Antwort403 · permission_errorBedingungGruppe für Stapelverarbeitung nicht verfügbar.Nächster SchrittDie Berechtigung des Schlüssels bzw. der Gruppe prüfen.
Antwort422 · invalid_request_errorBedingungStapelverarbeitung wird über das Guthaben abgerechnet; die Erstellung über ein Abonnement wird abgelehnt.Nächster SchrittDie autorisierte Gruppe mit Guthabenabrechnung verwenden.
Antwort422 · price_unavailableBedingungFür die Batch-Eingabe kann kein Preisangebot erstellt werden.Nächster SchrittAntwort aufbewahren; die dokumentierte Eingabe der API-Familie verwenden.
Antwort402 · billing_errorBedingungReservierung für Stapelverarbeitung nicht verfügbar.Nächster SchrittDie Zulassung klären, bevor eine neue Anfrage gestellt wird.
Antwort503 · price_unavailableBedingungMethodenpreis bzw. native Tarife für Stapelverarbeitung nicht verfügbar.Nächster SchrittAntwort aufbewahren; keine anderen Preise einsetzen.
Antwort503 · api_errorBedingungDie genaue Anbieterroute ist nicht verfügbar.Nächster SchrittAntwort zur Reparatur der Route aufbewahren.
Antwort503 · result_pending_checkBedingungDas ursprüngliche Ergebnis muss geprüft werden; X-Should-Retry:false.Nächster SchrittDie ursprüngliche operation_id/id beibehalten und ihren Status lesen; den ursprünglichen POST niemals wiederholen.
Antwort404 · not_foundBedingungDer Batch-Vorgang, dessen Status abgefragt wird, ist nicht vorhanden oder gehört einer anderen Identität.Nächster SchrittDie genaue ursprüngliche id und denselben Nutzer/Schlüssel/dieselbe Gruppe verwenden.

Aliasnamen

Modellaliasnamen

Ailoot Ultra openai/o4-mini:batch

Aliasnamen für Methodenpfade

Verwenden Sie die oben angezeigten Methodenpfade.

Zugehörige Aufrufer-IDs

openai/o4-mini:batch

FAQ · OpenAI: o4 Mini (batch)
Welche Eingaben und Ergebnisse sind verfügbar?

POST /v1/batches · openai/o4-mini:batch: text → text

Welche Felder verwendet die Anfrage?

POST /v1/batches · openai/o4-mini:batch: endpoint, model, requests, completion_window, provider

Welche Grenzen gelten?

POST /v1/batches · openai/o4-mini:batch: requests.min_items: 1

Weitere Details

Verbinden Sie Ailoot mit Claude Code, OpenCode, Hermes oder Ihrer eigenen Anwendung.

Das Unternehmen und sein Projektportfolio

Das Unternehmen und sein Projektportfolio: Millionen von Kunden; monatliche Umsätze in Milliardenhöhe.

Tokens mit Rabatt kaufen.

Aborabatt für regelmäßige Arbeit. Aktionscodes bieten bis 50% beim Tokenkauf.

Abo
Wählen Sie einen Tarif mit Rabatt für Ihre regelmäßigen Anfragen.
Aktionscode bis 50%
Geben Sie den Code beim Kauf ein. Der Preis wird nach den gültigen Aktionsbedingungen berechnet.
Ausgaben in der Historie
Modell, Tokens und Betrag werden für jede Anfrage gespeichert.

Abo wählen · Modellpreise ansehen

Verbinden Sie die API mit dem Produkt, das Sie verkaufen.

SaaS, Anwendungen und Bots nach dem offiziellen Angebot und Lizenzvertrag von Ailoot. Fordern Sie für den Weiterverkauf eine Reseller-Lizenz an.

Kommerzielle Anwendung
Integrieren Sie Text-, Bild-, Video- und Audioerzeugung in kostenpflichtige Funktionen Ihres Dienstes.
Reseller-Lizenz
Senden Sie Projektbeschreibung und Zugangsmodell. Fordern Sie schriftliche Nutzungs- und Weiterverkaufsbedingungen an.
Dokumente auf der Website
Offizielles Angebot, Lizenzvertrag und Datenschutzerklärung sind vor der Verbindung zugänglich.

Reseller-Lizenz anfordern · Offizielles Angebot und Lizenzvertrag