Loading...
    0
    • Guida per sviluppatori
    • Riferimento API
    • MCP
    • Risorse
    • Note di rilascio
    Search...
    ⌘K
    Primi passi
    Introduzione a ClaudeGuida rapida
    Modelli e prezzi
    Panoramica dei modelliScegliere un modelloNovità in Claude 4.5Migrazione a Claude 4.5Deprecazioni dei modelliPrezzi
    Crea con Claude
    Panoramica delle funzionalitàLavorare con l'API MessagesFinestre di contestoMigliori pratiche di prompt engineering
    Capacità
    Caching dei promptModifica del contestoPensiero estesoStreaming dei MessaggiElaborazione batchCitazioniSupporto multilingueConteggio dei tokenEmbeddingsVisioneSupporto PDFFiles APIRisultati di ricercaOutput strutturatiComponente aggiuntivo di Google Sheets
    Strumenti
    PanoramicaCome implementare l'uso degli strumentiUtilizzo efficiente dei token per gli strumentiStreaming granulare degli strumentiStrumento BashStrumento di esecuzione del codiceStrumento di utilizzo del computerStrumento editor di testoStrumento di recupero webStrumento di ricerca webStrumento memoria
    Competenze Agente
    PanoramicaIniziare con Agent Skills nell'APIMigliori pratiche per la creazione di SkillsUtilizzo di Skills
    Agent SDK
    Panoramica dell'Agent SDKRiferimento SDK Agent - TypeScriptRiferimento SDK Agent - Python
    Guide
    Input in StreamingGestione dei PermessiGestione delle SessioniOutput strutturati nell'SDKHosting dell'Agent SDKModifica dei prompt di sistemaMCP nell'SDKStrumenti PersonalizzatiSubagenti nell'SDKComandi Slash nell'SDKAgent Skills nell'SDKTracciamento di Costi e UtilizzoListe TodoPlugin nell'SDK
    MCP nell'API
    Connettore MCPServer MCP remoti
    Claude su piattaforme di terze parti
    Amazon BedrockMicrosoft FoundryVertex AI
    Ingegneria dei prompt
    PanoramicaGeneratore di promptUsa template di promptMiglioratore di promptSii chiaro e direttoUsa esempi (prompt multishot)Lascia pensare Claude (CoT)Usa i tag XMLDare un ruolo a Claude (system prompt)Precompila la risposta di ClaudeConcatena prompt complessiSuggerimenti contesto lungoSuggerimenti per il pensiero esteso
    Testa e valuta
    Definisci criteri di successoSviluppare casi di testUtilizzo dello Strumento di ValutazioneRidurre la latenza
    Rafforza le protezioni
    Ridurre le allucinazioniAumentare la coerenza dell'outputMitigare i jailbreakhandle-streaming-refusalsRidurre la fuga di promptMantenere Claude nel personaggio
    Amministrazione e monitoraggio
    Panoramica dell'API AdminAPI di Utilizzo e CostiAPI di analisi del codice Claude
    Console
    Guide

    Output strutturati nell'SDK

    Ottieni risultati JSON convalidati dai flussi di lavoro degli agenti

    Ottieni JSON strutturati e convalidati dai flussi di lavoro degli agenti. L'Agent SDK supporta output strutturati attraverso JSON Schemas, assicurando che i tuoi agenti restituiscano dati esattamente nel formato di cui hai bisogno.

    Quando utilizzare output strutturati

    Utilizza output strutturati quando hai bisogno di JSON convalidato dopo che un agente completa un flusso di lavoro multi-turno con strumenti (ricerche di file, esecuzione di comandi, ricerca web, ecc.).

    Per singole chiamate API senza utilizzo di strumenti, vedi Output strutturati API.

    Perché utilizzare output strutturati

    Gli output strutturati forniscono un'integrazione affidabile e type-safe con le tue applicazioni:

    • Struttura convalidata: Ricevi sempre JSON valido corrispondente al tuo schema
    • Integrazione semplificata: Non è necessario codice di parsing o validazione
    • Type safety: Utilizza con suggerimenti di tipo TypeScript o Python per la sicurezza end-to-end
    • Separazione pulita: Definisci i requisiti di output separatamente dalle istruzioni del compito
    • Autonomia dello strumento: L'agente sceglie quali strumenti utilizzare garantendo il formato di output

    Come funzionano gli output strutturati

    1. 1

      Definisci il tuo schema JSON

      Crea uno schema JSON che descriva la struttura che desideri che l'agente restituisca. Lo schema utilizza il formato standard JSON Schema.

    2. 2

      Aggiungi il parametro outputFormat

      Includi il parametro outputFormat nelle opzioni della query con type: "json_schema" e la definizione dello schema.

    3. 3

      Esegui la query

      L'agente utilizza gli strumenti di cui ha bisogno per completare il compito (operazioni su file, comandi, ricerca web, ecc.).

    4. 4

      Accedi all'output convalidato

      Il risultato finale dell'agente sarà JSON valido corrispondente al tuo schema, disponibile in message.structured_output.

    Funzionalità JSON Schema supportate

    L'Agent SDK supporta le stesse funzionalità e limitazioni di JSON Schema di API Structured Outputs.

    Funzionalità chiave supportate:

    • Tutti i tipi di base: object, array, string, integer, number, boolean, null
    • enum, const, required, additionalProperties (deve essere false)
    • Formati di stringa: date-time, date, email, uri, uuid, ecc.
    • $ref, $def, e definitions

    Per i dettagli completi sulle funzionalità supportate, limitazioni e supporto dei pattern regex, vedi Limitazioni JSON Schema nella documentazione dell'API.

    Esempio: agente di tracciamento TODO

    Ecco un esempio completo che mostra un agente che cerca TODO nel codice ed estrae informazioni di 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'agente utilizza autonomamente gli strumenti giusti (Grep, Bash) per raccogliere informazioni e restituisce dati convalidati.

    Gestione degli errori

    Se l'agente non riesce a produrre un output valido corrispondente al tuo schema, riceverai un risultato di errore:

    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')
        }
      }
    }

    Risorse correlate

    • Documentazione JSON Schema
    • API Structured Outputs - Per singole chiamate API
    • Strumenti personalizzati - Definisci strumenti per i tuoi agenti
    • Riferimento SDK TypeScript - API TypeScript completa
    • Riferimento SDK Python - API Python completa
    • Perché utilizzare output strutturati
    • Avvio rapido
    • Definire schemi con Zod
    • Avvio rapido
    • Definire schemi con Pydantic
    • Come funzionano gli output strutturati
    • Funzionalità JSON Schema supportate
    • Esempio: agente di tracciamento TODO
    • Gestione degli errori
    • Risorse correlate

    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