Loading...
    0
    • Guide du développeur
    • Référence API
    • MCP
    • Ressources
    • Notes de version
    Search...
    ⌘K
    Premiers pas
    Introduction à ClaudeDémarrage rapide
    Modèles et tarification
    Aperçu des modèlesChoisir un modèleNouveautés dans Claude 4.5Migration vers Claude 4.5Dépréciations de modèlesTarification
    Créer avec Claude
    Aperçu des fonctionnalitésTravailler avec l'API MessagesFenêtres de contexteMeilleures pratiques de prompting
    Capacités
    Mise en cache des invitesÉdition du contexteRéflexion étendueMessages en streamingTraitement par lotsCitationsSupport multilingueComptage de tokensEmbeddingsVisionSupport PDFAPI FilesRésultats de recherchestructured-outputsExtension Google Sheets
    Outils
    AperçuComment implémenter l'utilisation d'outilsUtilisation efficace des outils en termes de jetonsStreaming d'outils à granularité fineOutil BashOutil d'exécution de codeOutil d'utilisation d'ordinateurOutil d'éditeur de texteOutil de récupération webOutil de recherche webOutil de mémoire
    Compétences de l'Agent
    Compétences d'AgentCommencer avec les Agent Skills dans l'APIBonnes pratiques de création de SkillsUtilisation des compétences
    SDK Agent
    AperçuRéférence du SDK Agent - TypeScriptRéférence du SDK Agent - Python
    Guides
    Entrée en StreamingGestion des PermissionsGestion des SessionsSorties structurées dans le SDKHébergement du SDK AgentModification des invites systèmeMCP dans le SDKOutils PersonnalisésSous-agents dans le SDKCommandes Slash dans le SDKCompétences d'agent dans le SDKSuivi des Coûts et de l'UtilisationListes de TâchesPlugins dans le SDK
    MCP dans l'API
    Connecteur MCPServeurs MCP distants
    Claude sur les plateformes tierces
    Amazon BedrockMicrosoft FoundryVertex AI
    Ingénierie des prompts
    AperçuGénérateur de promptsUtiliser des modèles de promptsAméliorateur de promptsSoyez clair et directUtiliser des exemples (prompting multishot)Laissez Claude réfléchir (CoT)Utiliser les balises XMLDonner un rôle à Claude (invites système)Préremplissez la réponse de ClaudeEnchaîner des prompts complexesConseils contexte longConseils pour la réflexion étendue
    Tester et évaluer
    Définir les critères de réussiteDévelopper des cas de testUtilisation de l'outil d'évaluationRéduction de la latence
    Renforcer les garde-fous
    Réduire les hallucinationsAméliorer la cohérenceAtténuer les jailbreakshandle-streaming-refusalsRéduire la fuite de promptGarder Claude dans son rôle
    Administration et surveillance
    Aperçu de l'API AdminAPI d'utilisation et de coûtAPI Claude Code Analytics
    Console
    Guides

    Sorties structurées dans le SDK

    Obtenez des résultats JSON validés à partir de workflows d'agents

    Obtenez du JSON structuré et validé à partir de workflows d'agents. Le SDK Agent prend en charge les sorties structurées via des schémas JSON, garantissant que vos agents retournent des données exactement au format dont vous avez besoin.

    Quand utiliser les sorties structurées

    Utilisez les sorties structurées lorsque vous avez besoin de JSON validé après qu'un agent ait complété un workflow multi-tour avec des outils (recherches de fichiers, exécution de commandes, recherche web, etc.).

    Pour les appels API uniques sans utilisation d'outils, voir Sorties structurées API.

    Pourquoi utiliser les sorties structurées

    Les sorties structurées offrent une intégration fiable et type-safe avec vos applications :

    • Structure validée : Recevez toujours du JSON valide correspondant à votre schéma
    • Intégration simplifiée : Aucun code d'analyse ou de validation nécessaire
    • Sécurité des types : Utilisez avec les indices de type TypeScript ou Python pour une sécurité de bout en bout
    • Séparation claire : Définissez les exigences de sortie séparément des instructions de tâche
    • Autonomie des outils : L'agent choisit les outils à utiliser tout en garantissant le format de sortie

    Comment fonctionnent les sorties structurées

    1. 1

      Définir votre schéma JSON

      Créez un schéma JSON qui décrit la structure que vous voulez que l'agent retourne. Le schéma utilise le format standard JSON Schema.

    2. 2

      Ajouter le paramètre outputFormat

      Incluez le paramètre outputFormat dans vos options de requête avec type: "json_schema" et votre définition de schéma.

    3. 3

      Exécuter votre requête

      L'agent utilise tous les outils dont il a besoin pour compléter la tâche (opérations sur fichiers, commandes, recherche web, etc.).

    4. 4

      Accéder à la sortie validée

      Le résultat final de l'agent sera du JSON valide correspondant à votre schéma, disponible dans message.structured_output.

    Fonctionnalités JSON Schema prises en charge

    Le SDK Agent prend en charge les mêmes fonctionnalités et limitations de JSON Schema que Sorties structurées API.

    Fonctionnalités clés prises en charge :

    • Tous les types de base : object, array, string, integer, number, boolean, null
    • enum, const, required, additionalProperties (doit être false)
    • Formats de chaîne : date-time, date, email, uri, uuid, etc.
    • $ref, $def, et definitions

    Pour des détails complets sur les fonctionnalités prises en charge, les limitations et le support des motifs regex, voir Limitations JSON Schema dans la documentation de l'API.

    Exemple : Agent de suivi des TODOs

    Voici un exemple complet montrant un agent qui recherche des TODOs dans le code et extrait les informations de git blame :

    import { query } from '@anthropic-ai/claude-agent-sdk'
    
    // Define structure for TODO extraction
    const todoSchema = {
      type: 'object',
      properties: {
        todos: {
          type: 'array',
          items: {
            type: 'object',
            properties: {
              text: { type: 'string' },
              file: { type: 'string' },
              line: { type: 'number' },
              author: { type: 'string' },
              date: { type: 'string' }
            },
            required: ['text', 'file', 'line']
          }
        },
        total_count: { type: 'number' }
      },
      required: ['todos', 'total_count']
    }
    
    // Agent uses Grep to find TODOs, Bash to get git blame info
    for await (const message of query({
      prompt: 'Find all TODO comments in src/ and identify who added them',
      options: {
        outputFormat: {
          type: 'json_schema',
          schema: todoSchema
        }
      }
    })) {
      if (message.type === 'result' && message.structured_output) {
        const data = message.structured_output
        console.log(`Found ${data.total_count} TODOs`)
        data.todos.forEach(todo => {
          console.log(`${todo.file}:${todo.line} - ${todo.text}`)
          if (todo.author) {
            console.log(`  Added by ${todo.author} on ${todo.date}`)
          }
        })
      }
    }

    L'agent utilise de manière autonome les bons outils (Grep, Bash) pour rassembler les informations et retourne des données validées.

    Gestion des erreurs

    Si l'agent ne peut pas produire une sortie valide correspondant à votre schéma, vous recevrez un résultat d'erreur :

    for await (const msg of query({
      prompt: 'Analyze the data',
      options: {
        outputFormat: {
          type: 'json_schema',
          schema: mySchema
        }
      }
    })) {
      if (msg.type === 'result') {
        if (msg.subtype === 'success' && msg.structured_output) {
          console.log(msg.structured_output)
        } else if (msg.subtype === 'error_max_structured_output_retries') {
          console.error('Could not produce valid output')
        }
      }
    }

    Ressources connexes

    • Documentation JSON Schema
    • Sorties structurées API - Pour les appels API uniques
    • Outils personnalisés - Définir des outils pour vos agents
    • Référence SDK TypeScript - API TypeScript complète
    • Référence SDK Python - API Python complète
    • Pourquoi utiliser les sorties structurées
    • Démarrage rapide
    • Définir des schémas avec Zod
    • Démarrage rapide
    • Définir des schémas avec Pydantic
    • Comment fonctionnent les sorties structurées
    • Fonctionnalités JSON Schema prises en charge
    • Exemple : Agent de suivi des TODOs
    • Gestion des erreurs
    • Ressources connexes

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Catalog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy