La Notation d'Objet JavaScript (JSON) est un format de fichier standard dans l'industrie, à la fois lisible par l'homme et analysable par les machines, ce qui en fait un choix populaire pour l'échange de données. Malgré ses avantages, les modèles de langage de grande taille (LLMs) rencontrent souvent des défis avec le JSON. Ils peuvent produire un contenu halluciné, générer des réponses qui ne correspondent que partiellement aux instructions ou ne pas analyser correctement le JSON. Cela contraint souvent les développeurs à recourir à des solutions alternatives, telles que des outils open-source, plusieurs instructions ou des répétitions de requêtes, pour obtenir l'interopérabilité souhaitée.
Sorties Structurées : Une Solution pour les Développeurs
Aujourd'hui, OpenAI a répondu à ces frustrations avec le lancement de sa fonctionnalité Sorties Structurées dans l'API. Cette nouveauté garantit que les sorties générées par le modèle respectent les Schémas JSON, définissant le contenu, la structure, les types de données et les contraintes d'un document JSON. OpenAI a identifié cette fonctionnalité comme étant la plus demandée par les développeurs, soulignant son rôle dans l'amélioration de la cohérence à travers les applications. Le PDG Sam Altman a même qualifié cette mise à jour de "demande populaire".
Lors des évaluations, le nouveau modèle GPT-4o d'OpenAI a obtenu un score parfait de 100 % avec les Sorties Structurées. Cet annonce fait suite à une semaine marquante pour OpenAI, ponctuée par les démissions inattendues de dirigeants clés comme John Schulman, Greg Brockman et Peter Deng, ainsi que les défis juridiques en cours d'Elon Musk contre l'entreprise, décrits comme une trahison "shakespearienne" de sa mission AI.
Faciliter l'Adhésion aux Schémas
Le JSON est un format flexible et largement utilisé pour le stockage et l'échange de données, compatible avec divers langages de programmation. OpenAI avait précédemment introduit un mode JSON pour ses modèles lors du DevDay de l'année dernière, en réponse à la demande des développeurs.
Les Sorties Structurées permettent aux développeurs de contraindre les modèles OpenAI à respecter strictement des schémas définis. OpenAI a déclaré que cette fonctionnalité améliore la compréhension des schémas complexes par le modèle. "Les Sorties Structurées représentent une évolution du mode JSON," explique l'entreprise sur son blog. "Bien que les deux garantissent la production d'un JSON valide, seules les Sorties Structurées assurent l'adhésion aux schémas." Cette avancée soulage les préoccupations concernant les clés requises omises ou les valeurs d'énumération invalides, des constantes en programmation simplifiant la maintenance du code.
Les développeurs peuvent utiliser les Sorties Structurées pour guider les sorties pas à pas, éliminant ainsi le besoin de valider ou de renvoyer des réponses mal formatées. Cette fonctionnalité permet des instructions plus simples et inclut des refus explicites pour les demandes non sécurisées, affirmant l'engagement d'OpenAI envers la sécurité.
Disponibilité et Compatibilité
Les Sorties Structurées sont disponibles sur GPT-4o-mini, GPT-4o et des versions ajustées de ces modèles. Elles peuvent être utilisées avec l'API de Complétions de Chat, l'API des Assistants et l'API de Traitement en Batch, et prennent en charge les entrées visuelles. OpenAI reconnaît que cette nouvelle fonctionnalité s'inspire des excellents travaux de la communauté open-source, notamment des bibliothèques outlines, jsonformer, instructor, guidance et lark.