Structured Outputs
Découvre comment les sorties structurées fournissent des données d’IA lisibles par machine. Explore l’imposition de schémas et les tâches de vision avec Ultralytics YOLO26 sur l’Ultralytics Platform.
Les sorties structurées désignent une méthodologie en intelligence artificielle dans laquelle les réponses du modèle sont strictement contraintes pour respecter un format de données prédéfini, généralement un schéma JSON. Dans les grands modèles de langage (LLMs) traditionnels, la génération de texte repose sur la prédiction probabiliste de tokens, ce qui produit souvent du texte non structuré et de forme libre. Grâce aux sorties structurées, les développeurs peuvent garantir qu'un système d'IA renvoie des données lisibles par machine et prévisibles, éliminant ainsi le besoin de scripts d'analyse fragiles et d'une gestion complexe des erreurs.
Comprendre les sorties structurées par rapport au mode JSON#
Alors que les premières versions de l'IA générative proposaient un simple « mode JSON », celui-ci garantissait uniquement que la sortie était un JSON valide, sans assurer qu'elle contienne les clés ou les types de données spécifiques demandés. Les sorties structurées résolvent ce problème grâce à une technique appelée décodage contraint. Lors de la génération, le moteur d'inférence filtre le vocabulaire du modèle à chaque étape, en masquant les tokens qui enfreindraient le schéma fourni par le développeur. Cela garantit une conformité totale au schéma.
Le concept d'appel de fonctions (utilisation d'outils) est étroitement lié à cette méthodologie. Alors que l'appel de fonctions permet aux modèles de déterminer quand exécuter un outil externe, il repose entièrement sur les sorties structurées pour renseigner correctement les paramètres requis par l'outil, sans hallucinations.
Adoption par le secteur et frameworks#
Entre 2024 et 2025, les principaux fournisseurs d'IA ont intégré les sorties structurées comme fonctionnalité native afin d'améliorer la fiabilité des systèmes d'entreprise. Par exemple, l'API Structured Outputs d'OpenAI permet aux développeurs de définir des schémas rigoureux à l'aide de Pydantic dans Python ou de Zod dans JavaScript. De même, les outils de sorties structurées de Claude d'Anthropic et de sorties structurées de Google Gemini prennent désormais en charge l'application stricte de schémas pour les prompts complexes.
Les écosystèmes open source s'appuient également sur des frameworks comme vLLM et Outlines pour fournir des méthodologies de décodage contraint aux modèles personnalisés conçus avec PyTorch.
Applications concrètes#
La mise en œuvre de sorties structurées transforme les réponses ambiguës de l'IA en données exploitables de modélisation prédictive. Les principaux cas d'utilisation incluent :
- Pipelines d'extraction de données : les entreprises utilisent les sorties structurées pour extraire des entités spécifiques (comme les noms de candidats, les montants de factures et les dates) de documents bruts et non structurés, puis les ingérer directement dans des bases de données SQL sans saisie manuelle des données.
- Agents d'IA autonomes : les workflows agentiques s'appuient sur des données structurées pour naviguer dans des logiciels complexes. Un agent peut analyser une requête utilisateur et produire une charge utile JSON stricte qui déclenche une API externe, permettant de faire évoluer les opérations en toute sécurité grâce à des systèmes comme Databricks Model Serving.
Sorties structurées en vision par ordinateur#
Bien qu'elles soient largement abordées dans le traitement du langage naturel, les sorties structurées constituent le principe de fonctionnement fondamental de la vision par ordinateur. Les modèles de vision ne produisent pas de texte de forme libre ; ils génèrent nativement des tenseurs hautement organisés représentant des coordonnées, des classes et des scores de confiance. Par exemple, les modèles de pointe comme Ultralytics YOLO26 analysent une image et renvoient des données spatiales strictement formatées, idéales pour un déploiement de modèles fluide dans des environnements edge à faible latence.
L'extrait suivant montre avec quelle facilité tu peux extraire des résultats structurés de détection d'objets à l'aide du package ultralytics :
from ultralytics import YOLO
# Load the recommended Ultralytics YOLO26 model
model = YOLO("yolo26n.pt")
# Perform inference to generate structured visual data
results = model("image.jpg")
# The model strictly outputs structured bounding box objects
for box in results[0].boxes:
print(f"Class ID: {box.cls}, Confidence: {box.conf}, Coordinates: {box.xyxy}")En comblant l'écart entre la logique probabiliste de l'IA et les exigences déterministes des logiciels, les sorties structurées constituent un composant essentiel pour créer des systèmes évolutifs et prêts pour la production sur l'Ultralytics Platform et au-delà.









