TECH. KI. KLARTEXT.
Tokenwerk

Technologie verstehen.
Besser entscheiden.

Test durchgeführtAntworten prüfen

Structured Outputs prüfen: JSON im Praxistest

Ein zusätzliches Textfeld bleibt in unserer bisherigen Übungsprüfung erlaubt. Eine engere Schlüsselliste weist dieselbe Datei zurück.

Illustration eines Prüfrahmens: Ein kupferner Zusatzbaustein ragt aus der vorgesehenen Datenstruktur.
Symbolische Illustration, KI-generiert. Die Ablaufgrafik und die Prüfkriterien stehen im Beitrag.

Warum reicht gültiges JSON nicht aus?

Eine syntaktisch gültige JSON-Datei kann vom vereinbarten Datenvertrag abweichen. In unserem Offline-Test akzeptiert die Basisprüfung ein zusätzliches Feld; die engere Schlüsselregel lehnt dieselbe Datei ab. Dafür liefen acht künstliche Dateien durch beide Regeln, insgesamt 16 Prüfungen. Kein KI-Modell wurde dabei aufgerufen.

Umfang
8 künstliche Dateien · 16 Prüfungen
Ausführung
Python 3.12.10 · Windows
Vergleich
Basisregel und engere Schlüsselliste
Modellleistung
Nicht gemessen · keine API-Aufrufe

Geprüft werden die hinterlegten Schlüssel und Sollwerte dieser Aufgabe. Freie Aussagen oder beliebige andere Datenverträge sind damit nicht validiert.

Beide Regeln akzeptieren die korrekte Antwort und lehnen die sechs anderen fehlerhaften Dateien ab. Der Unterschied liegt bei der Datei mit Zusatzfeld: Das zusätzliche Feld kommentar wird von der Basisprüfung akzeptiert und von der engeren Regel abgelehnt. Die Tabelle zeigt jede Beobachtung; eine allgemeine Erkennungsquote lässt sich daraus nicht ableiten.

Tatsächliche Resultate · 22.10.2026
Künstlicher TestfallBasisprüfungEngere Schlüsselregel
Alle Sollwerte stimmenakzeptiertakzeptiert
Falsche Summeabgelehntabgelehnt
Pflichtfeld fehltabgelehntabgelehnt
Andere Reihenfolgeabgelehntabgelehnt
Zahl als Zeichenketteabgelehntabgelehnt
Zusätzliches Feldakzeptiertabgelehnt
Ungültige JSON-Syntaxabgelehntabgelehnt
ID doppelt statt vollständigabgelehntabgelehnt
Beobachtete Prüfresultate: Nur das zusätzliche Feld wird von den zwei Regeln unterschiedlich behandelt.
Eigene Darstellung der ausgeführten Offline-Prüfungen. Sechs Fehlerfälle werden von beiden Regeln abgelehnt; beim Zusatzfeld unterscheiden sie sich.

Structured Outputs prüfen: drei getrennte Fragen.

Wenn du Structured Outputs weiterverarbeitest, brauchst du drei getrennte Antworten: Ist die Ausgabe lesbares JSON? Entspricht sie dem vereinbarten Datenvertrag? Stimmen die Werte mit dem Ausgangsmaterial überein? Unser Versuch macht eine Grenze der zweiten Prüfung sichtbar.

01 / Syntax
Lässt sich die Datei als JSON lesen?
02 / Vertrag
Sind Schlüssel, Typen und Pflichtfelder wie vereinbart?
03 / Inhalt
Stimmen die Angaben mit den festgelegten Sollwerten überein?
Grenze
Unbekannte freie Aussagen bleiben ungeprüft.

Ein eigenes, vereinfachtes Beispiel: Dein Vertrag erlaubt nur das Textfeld ort. Die Antwort {"ort":"Berlin","kommentar":"fertig"} ist lesbares JSON und enthält das Pflichtfeld. Eine Regel mit additionalProperties: false lehnt das Zusatzfeld dennoch ab. Ob Berlin der richtige Ort ist, lässt sich erst mit der Eingabequelle prüfen. Das Beispiel erläutert den Vertrag; es ist kein weiterer gemessener Testfall unseres Acht-Dateien-Pakets.

Das Setup bleibt absichtlich klein.

Eingaben
8 künstliche Dateien mit festen Sollwerten
Laufzeit
Python 3.12.10 · Windows · Standardbibliothek
Ausführung
Je Datei Basis und engere Regel, getrennte Exit-Codes
Modell / API
Kein Aufruf; keine Modellleistung gemessen

Die Basisroutine prüft das Vorhandensein festgelegter Schlüssel, konkrete Werte, Typen und die Reihenfolge der Listen. Sie verbietet zusätzliche Schlüssel nicht. Das ist eine Grenze ihres Auftrags, kein Syntaxfehler im JSON. Die zweite Regel ergänzt nur die Prüfung der obersten Schlüsselmenge.

Auch in JSON Schema haben Pflichtfelder und zusätzliche Eigenschaften unterschiedliche Aufgaben: required fordert Felder, additionalProperties: false schließt zusätzliche Felder aus. Unser kleines Python-Beispiel ist kein vollständiger Schema-Validator.

Alle Dateien. Derselbe Versuch.

Speichere basis_pruefen.py, pruefen.py und testfaelle.json in einem gemeinsamen Übungsordner. Python 3.9 oder neuer reicht; Zusatzpakete, Konten und Schlüssel werden nicht benötigt. Lies die Dateien vor dem Start. Der Aufruf gibt beide Resultate pro Testfall aus und beendet sich bei einer unerwarteten Abweichung.

Zum Ausprobieren
python pruefen.py --self-test
python pruefen.py antwort.json --strict

Der zweite Aufruf prüft nur diese festgelegte Übungsaufgabe. Für eine andere Datenstruktur musst du zuerst die Sollwerte und passenden Regeln ändern. Ein Exit-Code von 0 bedeutet hier „diese Sollprüfung bestanden“, nicht „beliebiger Inhalt ist wahr“.

Herkunft und Prüfsummen

Die Basisdatei wurde unverändert aus der Tokenwerk-Übung für GPT-6.1 Sol übernommen. Der Modellname bezeichnet die Herkunft der Übung, nicht einen ausgeführten Modelltest.

SHA-256 der Basisdatei: 2c4b9b56a8bc4be74133a389780a4dfd65449eb873b1f0fcb4442b44c5b86817

SHA-256 der Testfälle: e148fc497ab05b7efce9a3497d67dc515965f7e1726f5419aee34623027534e4

Die Daten wurden künstlich erstellt, die Skripte lokal ausgeführt und die beobachteten Resultate automatisiert geprüft. Artikel und Diagramme entstanden mit KI-Unterstützung auf Grundlage dieses Protokolls.

Was dieser Versuch nicht misst.

Die Eingaben sind gezielte Beispiele, keine zufällige Stichprobe von Modellantworten. Wir messen damit weder Halluzinationshäufigkeit noch Modellgenauigkeit, Sicherheit oder Zeitersparnis. Ein Zusatzfeld kann in einer Anwendung erlaubt und in einer anderen unerwünscht sein. Entscheidend ist der vorher festgelegte Datenvertrag.

Auch die engere Regel prüft nur diese Schlüssel und Sollwerte. Sie schützt keine nachgelagerten Werkzeuge vor beliebigen Inhalten. Freie Texte, Quellen und externe Aktionen brauchen eigene Kontrollen.

Den Weg zur strukturierten Antwort erklärt unser Guide zum Thema JSON-Ausgaben mit Ollama erzeugen.

Ein korrektes Dateiformat beantwortet keine Sachfrage: Lies dazu die Einordnung zu KI-Halluzinationen und falsche Aussagen.

Mit denselben Sollwerten kannst du anschließend einen eigenen Modellvergleich vorbereiten.

Redaktionell überarbeitet am . Der Versuch stammt unverändert vom 22. Oktober 2026.

Quellen und Teststand.

Technische Dokumentation abgerufen am 22.10.2026. Die Einzelresultate stammen aus dem verlinkten lokalen Testprotokoll. Inhalte und Grafiken wurden mit KI-Unterstützung ausgearbeitet; Messungen und Pläne sind getrennt gekennzeichnet.

Häufige Fragen

Wurde hier ein KI-Modell getestet?

Nein. Alle acht Dateien wurden gezielt als künstliche Testfälle erstellt. Geprüft wurden zwei deterministische Prüfregeln. Es gab keinen API-Aufruf und keine Modellinferenz.

Was ändert die engere Prüfung?

Sie verlangt zusätzlich genau die drei erwarteten Schlüssel auf der obersten Ebene. Die bestehende Prüfung der festen Werte und Listen bleibt erhalten. Das ist kein allgemeiner JSON-Schema-Validator.

Kann ich die Ergebnisse wiederholen?

Ja. Speichere die beiden Python-Dateien und testfaelle.json im selben Ordner. Mit Python 3.9 oder neuer führt python pruefen.py --self-test alle acht Fälle mit beiden Regeln aus. Es werden keine Zusatzpakete oder Zugangsdaten benötigt.

Beweist eine bestandene Prüfung, dass eine KI-Antwort richtig ist?

Nur die ausdrücklich hinterlegten Sollwerte sind damit abgeglichen. Freie Aussagen, Quellen, Vollständigkeit außerhalb dieser Aufgabe und die Qualität eines Modells werden nicht bewertet.

Was unterscheidet JSON-Syntax von einem Datenvertrag?

Lesbares JSON beschreibt zunächst eine gültige Datenstruktur. Ein Datenvertrag legt zusätzlich erlaubte Felder, Typen und Pflichtangaben fest. Ob der Inhalt mit der Quelle übereinstimmt, wird danach separat geprüft.

Hilft dieser Test beim Prüfen von Structured Outputs?

Ja, als kleines Beispiel für die nachgelagerte Prüfung einer festen Struktur. Die künstlichen Dateien zeigen die Wirkung zweier Prüfregeln. Der Versuch misst weder die Structured-Outputs-Funktion eines Anbieters noch die Zuverlässigkeit eines Modells.