Warum brauchen KI-Anwendungen strukturierte Ausgaben?

KI-Anwendungen benötigen strukturierte Ausgaben, weil Software einen freundlich formulierten Absatz nicht zuverlässig auslesen kann. Sie braucht jedes Mal dieselben Felder mit denselben Namen und Datentypen. Ein zusätzlicher Satz oder ein fehlendes Feld kann dazu führen, dass der nächste Schritt Ihrer Anwendung fehlschlägt.

Stellen Sie sich das fiktive Logistik-Start-up Parcelwise mit 12 Beschäftigten vor. Die Entwicklerin Sana baut ein Werkzeug, das Kunden-E-Mails liest und ein Formular zur Änderung einer Lieferung ausfüllt: Bestellnummer, gewünschtes Datum, neue Adresse und ob eine Rückerstattung gewünscht wird. Eine typische E-Mail lautet: 'Hallo, Bestellung PW-88213, ich bin Do. nicht da, können Sie stattdessen Sa. liefern? Oder bei Nr. 14 abgeben. Sonst bitte einfach stornieren und erstatten.' Ihre erste Version fordert das Modell auf: 'Antworte in JSON'. Die meisten Antworten lassen sich verarbeiten, aber einige beginnen mit 'Gerne, hier ist das JSON', andere nennen das Feld 'date' statt 'requested_date', und eine gibt das Datum als 'Samstag' zurück.

Was ist ein JSON-Schema und warum ist es hilfreich?

Ein JSON-Schema beschreibt formal, welche Daten Sie erwarten: welche Felder vorhanden sind, welche davon Pflichtfelder sind, welchen Datentyp jedes Feld hat und welche Werte zulässig sind. Wenn Sie dem Modell ein Schema vorgeben, wird aus 'bitte antworten Sie in JSON' eine verbindliche Vorgabe, die Ihr Code prüfen kann.

Für Sana legt das Schema Folgendes fest: order_reference ist eine erforderliche Zeichenfolge; requested_date ist eine erforderliche Zeichenfolge im Datumsformat oder null, wenn kein Datum angegeben wurde; new_address ist eine Zeichenfolge oder null; refund_requested ist ein erforderlicher boolescher Wert; weitere Felder sind nicht zulässig. Die letzte Regel verhindert, dass das Modell Felder mit Kommentaren hinzufügt.

Wie unterstützen Modell-APIs die strukturierte Ausgabe?

Die Schnittstellen großer Modelle ermöglichen es, mit der Anfrage ein JSON-Schema zu übergeben. Die Ausgabe des Modells wird so eingeschränkt, dass sie diesem Schema entspricht.

OpenAI

Die Funktion für strukturierte Ausgaben von OpenAI beschränkt Antworten auf ein vorgegebenes JSON-Schema, wenn der strikte Modus aktiviert ist. Die Dokumentation grenzt dies vom älteren JSON-Modus ab, der nur gültiges JSON sicherstellt, nicht aber die Einhaltung Ihres Schemas. Sie empfiehlt strukturierte Ausgaben, sofern verfügbar.

Anthropic

Die API von Claude bietet JSON-Ausgaben, die einem von Ihnen vorgegebenen Schema entsprechen. Außerdem gibt es für Tool-Definitionen eine strenge Option, mit der Tool-Eingaben anhand des jeweiligen Tool-Schemas validiert werden. Die Dokumentation führt auf, welche Schemafunktionen unterstützt werden und welche einen Fehler zurückgeben.

Google

Die Gemini-API akzeptiert ein JSON-Schema für Antworten und unterstützt eine festgelegte Teilmenge von Schema-Schlüsselwörtern. Laut Dokumentation ist die Ausgabe zwar syntaktisch korrektes JSON, die Werte sollten Sie aber dennoch in Ihrer Anwendung validieren.

Warum brauchen Sie weiterhin Validierung und Wiederholungsversuche?

Sie müssen die Daten weiterhin validieren, denn ein Schema legt ihre Struktur fest, nicht die Richtigkeit ihrer Werte. Auch eine perfekt formatierte Antwort kann ein falsches Datum, eine erfundene Bestellnummer oder eine Kennzeichnung für eine Rückerstattung enthalten, die der Kunde nie angefordert hat.

Validieren Sie auf zwei Ebenen. Prüfen Sie zunächst die Struktur mit einer Schemabibliothek, etwa Pydantic in Python oder Zod in JavaScript. Die Dokumentationen von OpenAI, Anthropic und Google enthalten dazu Beispiele. Prüfen Sie anschließend die Geschäftsregeln: Entspricht die Bestellreferenz dem Muster und existiert sie im System? Liegt das Datum in der Zukunft und auf einem Liefertag? Liegt die Adresse in einem Liefergebiet? Berücksichtigen Sie außerdem die von den Anbietern dokumentierten Fälle: eine Ablehnung, die möglicherweise nicht Ihrem Schema entspricht, sowie eine durch die maximale Tokenanzahl abgeschnittene Antwort, die unvollständiges JSON hinterlässt.

Wiederholen Sie den Versuch mit Bedacht. Wenn eine Prüfung fehlschlägt, starten Sie einen erneuten Versuch und geben Sie dabei den konkreten Fehler an, etwa 'requested_date muss ein Datum sein; in der E-Mail steht Samstag, und das Bestelldatum ist der 14. Oktober'. Begrenzen Sie die Wiederholungen auf ein oder zwei Versuche und leiten Sie die E-Mail danach an einen Menschen weiter.

Wie sieht eine schwache und eine robuste strukturierte Ausgabe aus?

Schwache Variante: Die Eingabeaufforderung lautet 'Extrahieren Sie die Angaben und antworten Sie im JSON-Format.' Die Anwendung liest jede Antwort ungeprüft ein. Für die obige E-Mail erhält sie Felder namens order und date, den Datumswert 'Samstag' und den Erstattungswert true, weil das Modell 'falls nicht, einfach stornieren' als verbindlichen Auftrag verstanden hat. Das Formular wird falsch ausgefüllt, und der Kunde erhält eine Erstattung, die er nicht wollte.

Robuste Variante: Die Anfrage enthält Sanas Schema im strikten Modus, und die Eingabe erläutert jedes Feld, darunter 'refund_requested ist nur dann true, wenn der Kunde bedingungslos eine Rückerstattung verlangt'. Das Modell gibt order_reference mit PW-88213, requested_date mit dem Datum des nächsten Samstags, new_address mit null, refund_requested mit false und conditional_request mit 'Rückerstattung, falls Samstag oder Nachbar nicht möglich ist' zurück. Das Feld conditional_request hat Sana genau für diesen Fall zum Schema hinzugefügt. Die Validierung bestätigt, dass die Bestellung existiert und Samstag ein Liefertag ist. Da die E-Mail eine bedingte Anfrage enthält, leiten die Regeln sie zur abschließenden Entscheidung an einen Menschen weiter.

Was sind häufige Fehler bei strukturierten Ausgaben?

Der häufigste Fehler ist, gültiges JSON mit korrekten Daten gleichzusetzen. Weitere Fehler: sich allein auf Eingabeanweisungen verlassen, obwohl die API ein Schema erzwingen kann, unklare Feldnamen ohne Beschreibungen verwenden, einen Wert erzwingen, obwohl die ehrliche Antwort null wäre, Verweigerungen und abgeschnittene Antworten ignorieren und einen neuen Versuch starten, ohne dem Modell zu sagen, was falsch war.

Wo sind strukturierte Ausgaben im Katalog von Tosheo.ai eingeordnet?

Strukturierte Ausgabe ist eine Programmierlektion im Kurs zur Entwicklung von KI-Anwendungen in der Kategorie „KI-Anwendungen entwickeln“. Die vollständige Praxisversion mit Code, in der Sie ein Schema definieren, eine API aufrufen, Antworten validieren und einen erneuten Versuch einbauen, finden Sie nach der Registrierung im Programmierpfad. Zu jedem Schritt erhalten Sie Feedback anhand eines Bewertungsrasters.

Quellen und Geltungsbereich

OpenAI-API-Dokumentation, Leitfaden zu strukturierten Ausgaben, Vergleich mit dem JSON-Modus und Antwortverweigerungen (geprüft am 19 October 2026) ↗

Anthropic Claude-Dokumentation, strukturierte Ausgaben und strikte Werkzeugnutzung (geprüft am 19 October 2026) ↗

Dokumentation der Google Gemini API, Hinweise zu strukturierten Ausgaben und zur Validierung (geprüft am 19 October 2026) ↗