Die JavaScript-Objektnotation (JSON) ist ein Branchenstandard-Dateiformat, das sowohl für Menschen lesbar als auch maschinenparsellbar ist, was es zu einer beliebten Wahl für den Datenaustausch macht. Trotz seiner Vorteile stoßen große Sprachmodelle (LLMs) häufig auf Herausforderungen im Umgang mit JSON. Sie können Halluzinationen erzeugen, Antworten generieren, die Anweisungen nur teilweise entsprechen, oder JSON nicht korrekt parsen. Dies zwingt Entwickler häufig dazu, Umgehungslösungen wie Open-Source-Tools, mehrere Eingabeaufforderungen oder wiederholte Anfragen zu nutzen, um die gewünschte Interoperabilität der Ausgabe zu erreichen.
Strukturierte Ausgaben: Eine Lösung für Entwickler
OpenAI hat heute diese Frustrationen mit der Einführung der Funktion „Strukturierte Ausgaben“ in der API adressiert. Diese neue Funktion stellt sicher, dass die von Modellen generierten Ausgaben mit JSON-Schemas übereinstimmen, die den Inhalt, die Struktur, die Datentypen und die Einschränkungen eines JSON-Dokuments definieren. OpenAI identifizierte diese Funktion als die meistgefragte von Entwicklern und betonte ihre Rolle bei der Verbesserung der Konsistenz in Anwendungen. CEO Sam Altman nannte die Veröffentlichung sogar „auf vielfachen Wunsch“.
In Bewertungen erzielte das neue GPT-4o-Modell von OpenAI mit den strukturierten Ausgaben eine perfekte Punktzahl von 100 %. Diese Ankündigung folgte auf eine bemerkenswerte Woche bei OpenAI, die von den unerwarteten Rücktritten wichtiger Führungskräfte wie John Schulman, Greg Brockman und Peter Deng sowie von Elon Musks laufenden rechtlichen Herausforderungen gegen das Unternehmen geprägt war, die als „shakespearesche“ Verräterei an dessen KI-Mission beschrieben wurden.
Verbesserte Schema-Konformität mit Leichtigkeit
JSON ist ein flexibles und weit verbreitetes Format für Datenspeicherung und -austausch, das mit verschiedenen Programmiersprachen kompatibel ist. OpenAI hatte im letzten Jahr während des DevDay einen JSON-Modus für seine Modelle eingeführt, um der Entwicklernachfrage gerecht zu werden.
Strukturierte Ausgaben ermöglichen es Entwicklern, OpenAI-Modelle strikt an definierte Schemata zu binden. OpenAI hat erklärt, dass diese Funktion das Verständnis des Modells für komplexe Schemata verbessert. „Strukturierte Ausgaben stellen eine Weiterentwicklung des JSON-Modus dar“, erklärt das Unternehmen in seinem Blog. „Während beide sicherstellen, dass gültiges JSON erzeugt wird, garantieren nur strukturierte Ausgaben die Schemaeinhaltung.“ Dieser Fortschritt mindert Bedenken bezüglich fehlender erforderlicher Schlüssel oder ungültiger Aufzählungswerte – Konstanten in der Programmierung, die die Wartung des Codes vereinfachen.
Entwickler können strukturierte Ausgaben nutzen, um Ausgaben Schritt für Schritt zu steuern, wodurch die Notwendigkeit, falsch formatierte Antworten zu validieren oder erneut zu senden, entfällt. Die Funktion ermöglicht einfachere Eingabeaufforderungen und enthält explizite Ablehnungen für unsichere Anfragen, wodurch OpenAIs Engagement für Sicherheit gewahrt bleibt.
Verfügbarkeit und Kompatibilität
Strukturierte Ausgaben sind auf GPT-4o-mini, GPT-4o und deren feinabgestimmten Versionen verfügbar. Sie können mit der Chat Completions API, der Assistants API und der Batch API genutzt werden und unterstützen Visionseingaben. OpenAI erkennt an, dass diese neue Funktionalität von der hervorragenden Arbeit der Open-Source-Community inspiriert ist, insbesondere von den Bibliotheken outlines, jsonformer, instructor, guidance und lark.