Sofortantwort
JSON Mode / Structured Output einfach erklärt
Unterstützt valide JSON- oder schema-basierte Ausgaben von Sprachmodellen.
- Kurz gesagt
- Kann syntaktisch valides JSON in der Modellantwort sicherstellen
- Typischer Einsatz
- Datenextraktion, API-Integration, Workflow-Automation
- Wichtig zu wissen
- Wichtig für robuste KI-Integrationen in Softwaresystemen
JSON Mode / Structured Output im Überblick
Wenn du ein LLM in Software integrierst, brauchst du häufig maschinenlesbare Ausgaben. JSON Mode und Structured Output reduzieren das Problem, dass LLMs standardmäßig Freitext produzieren.
Drei Stufen der Kontrolle:
1. Prompt-basiert: "Antworte bitte als JSON" → oft, aber nicht zuverlässig
2. JSON Mode: response_format: "json_object" → syntaktisch valides JSON möglich
3. Structured Output: response_format: { schema } → Schema-Einhaltung stärker kontrolliert
Praxisbeispiel
from openai import OpenAI
from pydantic import BaseModel
class ProductInfo(BaseModel):
name: str
price: float
category: str
in_stock: bool
client = OpenAI()
response = client.beta.chat.completions.parse(
model="model-with-structured-output",
messages=[
{"role": "user", "content": "Extrahiere die Produktinfo aus diesem Produkttext."}
],
response_format=ProductInfo,
)
product = response.choices[0].message.parsed
# ProductInfo(name='...', price=..., category='...', in_stock=...)
Technische Umsetzung
| Methode | Zuverlässigkeit | Flexibilität | Anbieter |
|---|---|---|---|
| Prompt Engineering | variabel | hoch | viele Modelle |
| JSON Mode | hoch für Syntax, API-abhängig | mittel | unterstützende Anbieter |
| Structured Output | hoch für Schema, API-abhängig | geringer | unterstützende Anbieter |
| Constrained Decoding | hoch für Grammar, setupabhängig | hoch | Libraries und eigene Serving-Setups |
Wann welche Methode?
- Einfache Key-Value-Paare → JSON Mode kann reichen
- Komplexe verschachtelte Objekte → Structured Output mit Schema ist oft robuster
- Open-Weight-Modelle → Grammar- oder constrained-decoding-basierte Ansätze prüfen
- Prototyping → Prompt-basiert kann schneller zum Starten sein
Schritt für Schritt
Wie strukturierte Modellantworten belastbar werden
Zielschema aus der Aufgabe ableiten
Definiere Felder, Datentypen, erlaubte Werte und fehlende Angaben anhand dessen, was das Folgesystem wirklich benötigt. Ein Schema sollte Information klären, statt freien Text nur nachträglich zu verpacken.
Modell auf das Format festlegen
Übergebe klare Anweisungen und technische Schemaunterstützung, wenn sie verfügbar ist. Das verbessert die Form, ersetzt aber nicht die Prüfung, ob Werte plausibel, vollständig oder autorisiert sind.
Antwort serverseitig validieren
Prüfe Typen, Pflichtfelder, Grenzen und fachliche Regeln vor jeder Weiterverarbeitung. Ungültige Antworten führen zu einem sicheren Reparatur- oder Rückfragepfad, nicht zu einer stillen Fehlaktion.
Unsicherheit sichtbar behandeln
Modellierte Informationen können trotz korrektem JSON falsch sein. Kennzeichne Unsicherheit, verlange Belege wo nötig und halte für folgenreiche Entscheidungen eine menschliche Prüfung oder sichere Alternative bereit.
Konkretes Beispiel
Eine Anfrage wird als prüfbarer Vorgang übernommen
Ein Team möchte aus eingehenden Texten strukturierte Supportfälle erzeugen. Die Daten sollen später Priorisierung und Antwortvorschläge unterstützen.
Freier Text
Das Modell fasst Anfrage, Kategorie und Dringlichkeit zusammen. Ohne Schema können Felder fehlen, Kategorien erfunden oder ein kritischer Fall unbemerkt in einem langen Antworttext versteckt werden.
Geprüfte Struktur
Ein Schema verlangt klar definierte Felder und eine Kennzeichnung von Unsicherheit. Eine Validierung prüft Kategorie und Grenzen; bei Konflikten wird der Fall einer verantwortlichen Person zur Klärung vorgelegt.
Einordnung
Vorteile und Grenzen
Das spricht dafür
- Macht Modellantworten für Programme, Datenflüsse und klare Folgeentscheidungen nutzbar.
- Erlaubt technische und fachliche Validierung, bevor Inhalte weiterverarbeitet werden.
- Trennt Formatzuverlässigkeit von der notwendigen Prüfung der inhaltlichen Richtigkeit.
Das solltest du beachten
- Gültiges JSON kann inhaltlich falsch, unvollständig oder unzulässig sein.
- Zu starre Schemata können wichtige Unsicherheit oder Ausnahmen verdecken.
- Reparatur und Validierung erhöhen Aufwand, sind aber für sichere Folgeschritte oft notwendig.
Vertiefung · für FortgeschritteneVon der Antwort zur prüfbaren Aktion
Validierbare Daten
- Function Calling
- LLMs generieren strukturierte Aufrufe für externe Tools und APIs.
- Tool Use
- Sprachmodelle können externe Werkzeuge und Funktionen nutzen.
- Guardrails
- Regeln zur Sicherstellung des korrekten Verhaltens von KI.
- LLM Evaluation
- Systematische Bewertung von LLM-Qualität, Zuverlässigkeit und Sicherheit.
- API
- Schnittstelle zur Kommunikation zwischen Softwaresystemen.