Schema-gesichertes JSON
Auf dieser Seite
Warum strukturierte Ausgaben alles verändern
Wenn Sie ein Sprachmodell in der Produktion einsetzen, benötigen Sie Antworten, die der Code verwenden kann. Keine freien Texte, kein approximatives JSON – sondern JSON, das garantiert konform zu einem Schema ist, das Sie definieren. Genau das bietet Ihnen die Grok API für strukturierte Ausgaben.
Das Prinzip ist einfach: Sie übermitteln dem Modell ein JSON-Schema, und die API garantiert, dass die Antwort diese Struktur exakt einhält. Kein unvorhersehbares Parsen, keine zerbrechlichen regulären Ausdrücke, kein try/catch, um Fälle zu behandeln, in denen das Modell ein Format erfindet.
Funktionsweise
Strukturierte Ausgaben basieren auf einem Beschränkungsmechanismus, der während der Generierung des Textes angewendet wird. Bei jedem generierten Token wird das Modell daran gehindert, nur Token zu erzeugen, die mit dem bereitgestellten Schema kompatibel sind. Das Ergebnis: JSON, das immer gültig und immer konform ist.
Schauen wir uns ein konkretes Beispiel an. Sie möchten Kontaktinformationen aus einer E-Mail extrahieren:
from pydantic import BaseModel
class Contact(BaseModel):
nom: str
email: str
entreprise: str
telephone: str | None
# Die Antwort wird IMMER ein gültiges Contact-Objekt sein
Ohne strukturierte Ausgaben könnte das Modell das Telefonfeld als "tel", "phone" oder "numéro" zurückgeben. Mit einem Schema wird das Feld immer telephone genannt, und sein Wert wird immer ein String oder null sein.
Verfügbarkeit
Strukturierte Ausgaben werden auf allen xAI-Sprachmodellen unterstützt: Grok 4.5, Grok 4.3, grok-4.20-Varianten und neuere Versionen. Welches Modell Sie auch verwenden, die Funktion steht ohne zusätzliche Kosten oder weitere Konfiguration zur Verfügung.
Ohne vs. mit strukturierten Ausgaben
Hier ist der Unterschied zwischen der Nutzung ohne und mit dieser Funktion:
Ohne strukturierte Ausgaben:
- Das Modell kann freien Text, unvollständiges JSON oder ein unerwartetes Format zurückgeben
- Sie müssen manuell parsen und Fehler behandeln
- Feldnamen können von einer Anfrage zur anderen variieren
- Ihre Pipeline bricht, sobald das Modell das Format ändert
Mit strukturierten Ausgaben:
- Das JSON ist immer syntaktisch gültig
- Die Struktur entspricht dem bereitgestellten Schema exakt
- Typen werden beachtet (String, Zahl, Boolean usw.)
- Ihr Code kann die Antwort direkt verarbeiten
Zwei verfügbare Ansätze
Die Grok API bietet zwei Methoden zur Nutzung strukturierten Outputs:
parse(): Automatische Methode, die direkt ein typisiertes Objekt zurückgibt. Ideal für die meisten Fälle.response_format: Manuelle Methode, die einen JSON-String zurückgibt. Mehr Kontrolle, aber das Parsen liegt bei Ihnen.
Sie werden diese beiden Methoden in den kommenden Lektionen im Detail kennenlernen.
Kernaussagen
- Strukturierte Ausgaben garantieren JSON-Konformität zu Ihrem Schema bei jeder Anfrage
- Die Beschränkung wird während der Generierung angewendet, nicht danach
- Alle xAI-Sprachmodelle unterstützen diese Funktion
- Zwei Methoden stehen zur Verfügung:
parse()(automatisch) undresponse_format(manuell) - Dies ist die Grundlage für jede zuverlässige Produktionspipeline mit der Grok API