HyperAIHyperAI

Command Palette

Search for a command to run...

Anthropic lance des sorties structurées pour ses modèles, révolutionnant l’intégration des LLM dans les workflows dev

Anthropic a récemment lancé une nouvelle fonctionnalité appelée Structured Outputs dans son API, disponible en version bêta pour ses modèles les plus puissants, notamment Claude Sonnet 4.5 et Opus 4.1. Cette mise à jour répond à un problème majeur rencontré par les développeurs : garantir que les sorties générées par les modèles d’intelligence artificielle respectent toujours une structure JSON précise définie par l’utilisateur. Jusqu’à présent, même avec des instructions claires, les réponses des modèles pouvaient varier en format, rendant difficile leur intégration dans des systèmes automatisés ou des pipelines CI/CD. La fonctionnalité permet désormais de spécifier une schéma JSON ou une classe Pydantic comme modèle de sortie. Le modèle génère alors une réponse valide et conforme à cette structure, sans ajout de texte narratif ou de formatage libre. Cependant, il est important de noter que cette garantie porte uniquement sur la forme, pas sur la précision du contenu : les modèles peuvent encore halluciner, produisant des données bien formatées mais incorrectes. Pour mettre en œuvre cette fonctionnalité, il est recommandé de créer un environnement de développement isolé. L’article utilise Miniconda sous WSL2 Ubuntu pour installer les dépendances nécessaires : anthropic, beautifulsoup4, requests, httpx et jupyter. Une clé API Anthropic est également requise. Deux exemples concrets illustrent l’utilité de cette fonctionnalité. Le premier consiste à extraire des informations structurées à partir d’articles Wikipedia sur des scientifiques célèbres (Einstein, Feynman, Maxwell, Guth). En définissant un schéma JSON précis avec des champs comme name, born, fame, prize et death, le modèle retourne systématiquement un objet JSON valide. Les résultats montrent une extraction fiable et cohérente, même pour des données complexes, comme la date de décès ou le fait que Maxwell n’ait jamais reçu un prix Nobel (car il est décédé avant la création du prix). Le deuxième exemple concerne la sécurité du code. Un fragment Python contenant une vulnérabilité SQL Injection est envoyé au modèle. Grâce à une classe Pydantic définissant une structure rigoureuse (CodeReviewResult), le modèle retourne une réponse structurée incluant une liste de bogues avec leur gravité (Critical, High, Medium, Low), une explication, le code refactorisé, et une évaluation de sécurité. Ce format machine-readable permet une intégration directe dans des workflows automatisés, comme des vérifications dans GitHub Actions : si is_safe_to_run est faux, la fusion de code peut être bloquée automatiquement. Cette fonctionnalité représente une avancée majeure pour les développeurs. Elle transforme les LLM d’outils conversationnels en composants logiciels déterministes, capables de produire des données exploitables sans nécessiter de traitement postérieur par des expressions régulières ou des parsers fragiles. Elle ouvre la voie à des applications robustes dans l’analyse de données, la vérification de code, la génération de rapports ou l’intégration dans des systèmes métier. En résumé, les Structured Outputs d’Anthropic résolvent un problème fondamental d’interopérabilité. Ils permettent de tirer parti de la puissance des modèles tout en garantissant une sortie prévisible et intégrable. Pour les développeurs utilisant l’API Claude, cette fonctionnalité marque la fin des travaux de nettoyage post-réponse et ouvre la voie à des workflows plus fiables et scalables. Pour plus d’informations, consulter la documentation officielle d’Anthropic : https://platform.claude.com/docs/en/build-with-claude/structured-outputs

Liens associés

Anthropic lance des sorties structurées pour ses modèles, révolutionnant l’intégration des LLM dans les workflows dev | Articles tendance | HyperAI