Generierung, Sampling und Ausgabeformate
JSON Mode
Ausgabemodus für gültiges JSON, ohne automatisch ein bestimmtes Schema zu garantieren.
JSON Mode ist eine Einstellung, die dafür sorgt, dass die Antwort gültiges JSON ist. Sie sagt nichts darüber, welche Felder darin vorkommen. Gültig heißt nur: Klammern passen, Anführungszeichen sitzen richtig, das Ergebnis lässt sich einlesen. OpenAI: Structured outputs
Syntax ist nicht Struktur
Genau hier liegt die Verwechslungsgefahr. Ein Modell kann in diesem Modus ein einwandfreies Objekt liefern, in dem ein erwartetes Feld fehlt, ein Feld anders heißt oder eine Zahl als Text steht. Für die Weiterverarbeitung ist das genauso unbrauchbar wie kaputtes JSON, nur fällt es später auf.
Deshalb gehört zu einer belastbaren Zusage ein Schema, das Felder, Typen und Pflichtangaben beschreibt. JSON Schema Wo Schnittstellen das unterstützen, ist diese Variante dem reinen Syntaxmodus vorzuziehen.
So kannst du dir das vorstellen
Ein Brief in einwandfreiem Deutsch, in dem die Adresse fehlt. Sprachlich korrekt, für die Post unbrauchbar. Das Bild erklärt den Unterschied zwischen Form und Vollständigkeit.
Was es in der Praxis bedeutet
Wenn dein Anbieter beides anbietet, nimm die schemagebundene Variante. Steht nur der Syntaxmodus zur Verfügung, gehört die Prüfung gegen ein Schema in deinen Code, samt einer Behandlung für den Fall, dass die Prüfung fehlschlägt.
Hilfreich ist außerdem, das gewünschte Format zusätzlich im Prompt zu beschreiben, am besten mit einem Beispielobjekt. Die Einstellung erzwingt die Syntax, die Beschreibung lenkt den Inhalt.
Wo es verwechselt wird
Der Modus garantiert kein Schema, auch wenn der Name Struktur verspricht. Und er verhindert keine erfundenen Werte: Er sorgt nur dafür, dass sie in gültiger Form ankommen.
Verwandte Begriffe
Structured Output, JSON Schema, Constrained Decoding, Tool Schema, Logits Processor.