Warum strukturierte Ausgaben?
Auf dieser Seite
Modell-Update vom 2. November 2026. Mistral Large 3 (
mistral-large-2512) und Mistral Medium 3.5 wurden am 31. Oktober 2026 eingestellt und werden am 30. April 2027 aus dem Dienst genommen. Ihr offizieller Nachfolger, Mistral Large 4 (mistral-large-4), steht seit dem 6. Oktober im öffentlichen Beta-Status. Die Beispiele in diesem Kurs verwenden den Aliasmistral-large-latest, der gemäß der offiziellen Spezifikation (verifiziert am 3. November 2026) weiterhin auf Mistral Large 3 verweist. Ebenso verweistmistral-medium-latestauf Mistral Medium 3.5. Diese Aliase bleiben bis zum 30. April 2026 gültig. Für neue Projekte testen Siemistral-large-4, den vorgesehenen Nachfolger.
Das Problem mit freien Textausgaben
Wenn Sie ein Sprachmodell in den Mittelpunkt eines automatisierten Prozesses stellen, stoßen Sie schnell auf ein Problem, das am ersten Tag selten auffällt: Die freie Textantwort des Modells ist unvorhersehbar. Dieselbe Information kann auf Dutzende verschiedene Arten formuliert werden, und jede Variation zwingt den nachgelagerten Code dazu, sie unterschiedlich zu verarbeiten. Was in einer Demo funktioniert, bricht in der Produktion oft stillschweigend.
Nehmen Sie eine alltägliche Aufgabe. Sie bitten Mistral, einen Produktnamen und einen Preis aus einer kommerziellen Beschreibung zu extrahieren. Ohne Einschränkungen könnte das Modell antworten:
Das Produkt heißt "Widget Pro" und kostet €49,99.
Oder, für denselben Input nur wenige Stunden später:
Name: Widget Pro
Preis: 49,99 EUR
Beide Antworten sind für einen menschlichen Leser korrekt. Für Ihren Code haben sie jedoch fast nichts gemeinsam: Das Dezimaltrennzeichen ändert sich von einem Komma zu einem Punkt, das Währungssymbol wird zu einem ISO-Code, und die Satzstruktur verschwindet. Jede Variation erfordert unterschiedliche Parse-Logik. In der Produktion führt dies zu stillschweigenden Fehlern, defekten Pipelines und stundenlangem Debugging.
JSON: Das universelle Format für Pipelines
JSON löst dieses Problem, indem es eine maschinenlesbare Struktur durchsetzt. Die gleiche Extraktion wird damit unmissverständlich:
{
"name": "Widget Pro",
"price": 49.99,
"currency": "EUR"
}
Der Code, der diese Antwort verarbeitet, wird wieder einfach und zuverlässig. Anstatt eine fragile reguläre Ausdrucksregel zu schreiben, schreiben Sie zwei stabile Zeilen:
import json
data = json.loads(response)
product_name = data["name"]
price = data["price"]
Keine riskanten regulären Ausdrücke mehr, keine heuristische Analyse. JSON ist der de-facto-Standard für die Kommunikation zwischen Systemen und macht es zur natürlichen Wahl für LLM-Ausgaben in professionellen Kontexten.
Wo der Bedarf entsteht
Strukturierte Ausgaben werden essenziell, sobald die Antwort des Modells etwas anderes speist als einen Bildschirm. Die Informationsextraktion ist das direkteste Beispiel: Das Herausziehen von Entitäten – Namen, Daten, Beträge – aus unstrukturierten Dokumenten ist nur dann nützlich, wenn das Ergebnis direkt in ein System überführt wird. Die Klassifizierung folgt derselben Logik: Die Kategorisierung von Support-Tickets, E-Mails oder Kundenbewertungen erfordert, dass das Label und sein Vertrauensscore in vorhersehbare Felder gelangen, nicht in einen Satz versteckt.
Die Datentransformation geht einen Schritt weiter, indem sie freien Text in strukturierte Datensätze umwandelt, die für eine Datenbank bestimmt sind. Agenten und Call-Chains sind von diesem ebenso abhängig: Ein Agent kann einen Workflow nur orchestrieren, wenn er eine strukturierte Aktion zurückgibt, mit dem Tool-Namen und seinen Parametern in stabilen Schlüsseln. Schließlich fungiert ein LLM manchmal als Zwischenschicht vor einer REST-API, die eine spezifische Nutzlast erwartet – in diesem Fall ist das Format keine Bequemlichkeit, sondern ein Vertrag.
Die Kosten für fehlerhafte Ausgaben
In der Produktion ist Zuverlässigkeit keine Option, und eine fehlerhafte Ausgabe kostet Sie auf drei Arten. Syntaktisch ungültiges JSON stürzt Ihre Anwendung beim Parsen ab, was das sichtbarste Szenario ist, aber paradoxerweise das am wenigsten gefährliche. Fehlende Felder korruptieren Ihre Daten stillschweigend: Die Datensatzübertragung erfolgt, aber er ist unvollständig, und das Problem tritt erst Wochen später zutage. Falsche Datentypen – eine Zeichenfolge "42", wo Sie die Zahl 42 erwartet haben – verursachen unerwartetes Verhalten in nachgelagerten Berechnungen, ohne je eine Ausnahme auszulösen.
Die strukturierten Ausgaben von Mistral adressieren diese drei Herausforderungen mit zwei komplementären Mechanismen. JSON Mode garantiert eine gültige JSON-Ausgabe, ohne ein Schema durchzusetzen: Sie aktivieren es mit einem Parameter und leiten das Format über den Prompt. Custom Structured Outputs gehen einen Schritt weiter, indem sie ein präzises Schema durchsetzen, das mit Pydantic in Python oder Zod in TypeScript beschrieben wird.
Dieser Kurs führt Sie durch beide Ansätze. Sie lernen, wie Sie die richtige Option für Ihren Anwendungsfall wählen, den entsprechenden Code in beiden Sprachen schreiben und Fehlerfälle mit Mustern behandeln, die in der Produktion standhalten.
Kernaussagen
- Freie Textausgaben sind unvorhersehbar und für automatisierte Pipelines ungeeignet
- JSON ist das Standardformat für die Kommunikation zwischen Maschinen
- Mistral bietet zwei Mechanismen für strukturierte Ausgaben: JSON Mode und Custom Structured Outputs
- Die Zuverlässigkeit der Ausgabe ist in der Produktion kritisch – strukturierte Ausgaben sind eine Investition, kein Luxus