LLM-JSON-Ausgabe reparieren

KI-Antworten sehen oft wie JSON aus, enthalten aber Markdown-Fences, Kommentare, Python-Literale oder JavaScript-Objektsyntax.

Häufige Probleme mit LLM-JSON

Markdown-Codefences, Kommentare, einfache Anführungszeichen, Schlüssel ohne Anführungszeichen, Trailing Commas und Pythons True, False oder None können eine sonst nützliche KI-Antwort am strikten JSON-Parsing scheitern lassen.

Repair-Workflow

Antwort in JSON Fix einfügen, Repair & Format laufen lassen, dann Validate, um zu bestätigen, dass die Ausgabe striktes JSON ist, bevor du sie in Code oder API-Calls nutzt.

Hinweis zur Privatsphäre

Das Reparieren passiert lokal im Browser, was beim Debuggen von Prompts mit internen Beispielen oder privaten API-Payloads angenehm ist.

Tools und Rezepte

Für Browser-Cleanup: LLM-Ausgabe in JSON Fix einfügen und Repair & Format klicken — entfernt Markdown-Codefences (```json ... ```), Trailing Commas und Python-Literale (True/False/None) in einem Durchlauf. In Node macht das npm-Paket jsonrepair dasselbe programmatisch, ohne Dependencies.

Per Prompt den Reparaturbedarf senken

Begrenze die Ausgabe: «Antworte mit genau einem JSON-Objekt und nichts sonst, kein Markdown-Fence, kein Kommentar.» Wenn das Modell es unterstützt, JSON-Modus oder response_format json_object verwenden — das eliminiert Fences und Prosa per Design. Ein Schema im Prompt (oder via Function Calling) reduziert erfundene Keys zusätzlich.

Streaming-JSON von einem LLM

Während die Tokens streamen, ist das JSON per Definition ungültig — die schließende Klammer fehlt noch. Entweder bis zum Ende puffern und einmal parsen, oder einen streaming-toleranten Parser nutzen (jsonrepair, partial-json), der den besten gültigen Präfix liefert, damit du inkrementell rendern kannst.

Wann laut scheitern statt reparieren

Wenn das JSON eine Finanztransaktion, eine Berechtigungsänderung oder eine destruktive Aktion auslöst, repariere nicht stillschweigend — lehne die Antwort ab und wiederhole, oder mache die Rohdaten zur Prüfung sichtbar. Repair eignet sich für Anzeige, Debugging und Recovery; nie für Inputs, die ohne menschliche Prüfung Zustand verändern.