Loading...
    • Guida per sviluppatori
    • Riferimento API
    • MCP
    • Risorse
    • Note sulla versione
    Search...
    ⌘K
    Primi passi
    Introduzione a ClaudeAvvio rapido
    Modelli e prezzi
    Panoramica dei modelliScelta di un modelloNovità in Claude 4.5Migrazione a Claude 4.5Deprecazione dei modelliPrezzi
    Crea con Claude
    Panoramica delle funzioniUtilizzo dell'API MessagesFinestre di contestoBest practice per i prompt
    Capacità
    Prompt cachingModifica del contestoExtended thinkingSforzoStreaming dei messaggiElaborazione batchCitazioniSupporto multilingueConteggio dei tokenEmbeddingsVisioneSupporto PDFAPI FilesRisultati di ricercaOutput strutturati
    Strumenti
    PanoramicaCome implementare l'uso degli strumentiStreaming granulare degli strumentiStrumento BashStrumento di esecuzione del codiceChiamata programmatica degli strumentiStrumento Computer useStrumento Editor di testoStrumento Web fetchStrumento Web searchStrumento MemoryStrumento Tool search
    Agent Skills
    PanoramicaAvvio rapidoBest practiceUtilizzo di Skills con l'API
    Agent SDK
    PanoramicaAvvio rapidoTypeScript SDKTypeScript V2 (anteprima)Python SDKGuida alla migrazione
    MCP nell'API
    Connettore MCPServer MCP remoti
    Claude su piattaforme di terze parti
    Amazon BedrockMicrosoft FoundryVertex AI
    Prompt engineering
    PanoramicaGeneratore di promptUsa modelli di promptMiglioratore di promptSii chiaro e direttoUsa esempi (multishot prompting)Lascia pensare Claude (CoT)Usa tag XMLDai a Claude un ruolo (prompt di sistema)Precompila la risposta di ClaudeConcatena prompt complessiSuggerimenti per il contesto lungoSuggerimenti per extended thinking
    Test e valutazione
    Definisci criteri di successoSviluppa casi di testUtilizzo dello strumento di valutazioneRiduzione della latenza
    Rafforza i guardrail
    Riduci le allucinazioniAumenta la coerenza dell'outputMitigare i jailbreakStreaming dei rifiutiRiduci la perdita di promptMantieni Claude nel personaggio
    Amministrazione e monitoraggio
    Panoramica dell'Admin APIAPI di utilizzo e costiAPI Claude Code Analytics
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    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
    Capacità

    Costruire con il ragionamento esteso

    Il ragionamento esteso fornisce a Claude capacità di ragionamento migliorate per compiti complessi, con diversi livelli di trasparenza nel suo processo di pensiero passo dopo passo prima di fornire la risposta finale.
    • Modelli supportati
    • Come funziona il ragionamento esteso
    • Come utilizzare il ragionamento esteso
    • Ragionamento riassunto
    • Ragionamento in streaming
    • Ragionamento esteso con uso di strumenti
    • Attivazione/disattivazione delle modalità di ragionamento nelle conversazioni
    • Preservazione dei blocchi di ragionamento
    • Pensiero intercalato
    • Pensiero esteso con caching dei prompt
    • Comprensione del comportamento del caching dei blocchi di pensiero
    • Max tokens e dimensione della finestra di contesto con pensiero esteso
    • La finestra di contesto con pensiero esteso
    • La finestra di contesto con pensiero esteso e uso di strumenti
    • Gestione dei token con pensiero esteso
    • Crittografia del pensiero
    • Redazione del pensiero
    • Differenze nel pensiero tra le versioni del modello
    • Preservazione del blocco di pensiero in Claude Opus 4.5
    • Prezzi
    • Best practice e considerazioni per il pensiero esteso
    • Lavorare con i budget di pensiero
    • Considerazioni sulle prestazioni
    • Compatibilità delle funzioni
    • Linee guida di utilizzo
    • Passaggi successivi

    Il ragionamento esteso fornisce a Claude capacità di ragionamento migliorate per compiti complessi, con diversi livelli di trasparenza nel suo processo di pensiero passo dopo passo prima di fornire la risposta finale.

    Modelli supportati

    Il ragionamento esteso è supportato nei seguenti modelli:

    • Claude Sonnet 4.5 (claude-sonnet-4-5-20250929)
    • Claude Sonnet 4 (claude-sonnet-4-20250514)
    • Claude Sonnet 3.7 (claude-3-7-sonnet-20250219) (deprecato)
    • Claude Haiku 4.5 (claude-haiku-4-5-20251001)
    • Claude Opus 4.5 (claude-opus-4-5-20251101)
    • Claude Opus 4.1 (claude-opus-4-1-20250805)
    • Claude Opus 4 (claude-opus-4-20250514)

    Il comportamento dell'API differisce tra i modelli Claude Sonnet 3.7 e Claude 4, ma le forme dell'API rimangono esattamente le stesse.

    Per ulteriori informazioni, consulta Differenze nel ragionamento tra le versioni dei modelli.

    Come funziona il ragionamento esteso

    Quando il ragionamento esteso è attivato, Claude crea blocchi di contenuto thinking dove produce il suo ragionamento interno. Claude incorpora gli insegnamenti da questo ragionamento prima di formulare una risposta finale.

    La risposta dell'API includerà blocchi di contenuto thinking, seguiti da blocchi di contenuto text.

    Ecco un esempio del formato di risposta predefinito:

    {
      "content": [
        {
          "type": "thinking",
          "thinking": "Lasciami analizzare questo passo dopo passo...",
          "signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
        },
        {
          "type": "text",
          "text": "Basandomi sulla mia analisi..."
        }
      ]
    }

    Per ulteriori informazioni sul formato di risposta del ragionamento esteso, consulta il Riferimento API Messages.

    Come utilizzare il ragionamento esteso

    Ecco un esempio di utilizzo del ragionamento esteso nell'API Messages:

    Per attivare il ragionamento esteso, aggiungi un oggetto thinking, con il parametro type impostato su enabled e budget_tokens impostato su un budget di token specificato per il ragionamento esteso.

    Il parametro budget_tokens determina il numero massimo di token che Claude può utilizzare per il suo processo di ragionamento interno. Nei modelli Claude 4, questo limite si applica ai token di ragionamento completo, e non all'output riassunto. Budget più grandi possono migliorare la qualità della risposta consentendo un'analisi più approfondita per problemi complessi, anche se Claude potrebbe non utilizzare l'intero budget allocato, specialmente negli intervalli superiori a 32k.

    budget_tokens deve essere impostato su un valore inferiore a max_tokens. Tuttavia, quando si utilizza il ragionamento intercalato con strumenti, è possibile superare questo limite poiché il limite di token diventa l'intera finestra di contesto (200k token).

    Ragionamento riassunto

    Con il ragionamento esteso abilitato, l'API Messages per i modelli Claude 4 restituisce un riassunto del processo di ragionamento completo di Claude. Il ragionamento riassunto fornisce i vantaggi di intelligenza completa del ragionamento esteso, prevenendo al contempo l'uso improprio.

    Ecco alcune considerazioni importanti per il ragionamento riassunto:

    • Ti viene addebitato il numero completo di token di ragionamento generati dalla richiesta originale, non i token di riepilogo.
    • Il conteggio dei token di output fatturati non corrisponderà al conteggio dei token che vedi nella risposta.
    • Le prime righe dell'output di pensiero sono più dettagliate, fornendo un ragionamento dettagliato che è particolarmente utile per scopi di ingegneria dei prompt.
    • Mentre Anthropic cerca di migliorare la funzione di ragionamento esteso, il comportamento della sintesi è soggetto a modifiche.
    • La sintesi preserva le idee chiave del processo di ragionamento di Claude con latenza minima aggiunta, consentendo un'esperienza utente trasmissibile e una facile migrazione da Claude Sonnet 3.7 ai modelli Claude 4.
    • La sintesi viene elaborata da un modello diverso da quello che specifichi nelle tue richieste. Il modello di ragionamento non vede l'output riassunto.

    Claude Sonnet 3.7 continua a restituire l'output di ragionamento completo.

    Nei rari casi in cui hai bisogno di accesso all'output di ragionamento completo per i modelli Claude 4, contatta il nostro team di vendita.

    Ragionamento in streaming

    Puoi trasmettere risposte di ragionamento esteso utilizzando server-sent events (SSE).

    Quando lo streaming è abilitato per il ragionamento esteso, ricevi il contenuto di pensiero tramite eventi thinking_delta.

    Per ulteriore documentazione sullo streaming tramite l'API Messages, consulta Streaming Messages.

    Ecco come gestire lo streaming con il ragionamento:

    Prova nella Console

    Esempio di output dello streaming:

    event: message_start
    data: {"type": "message_start", "message": {"id": "msg_01...", "type": "message", "role": "assistant", "content": [], "model": "claude-sonnet-4-5", "stop_reason": null, "stop_sequence": null}}
    
    event: content_block_start
    data: {"type": "content_block_start", "index": 0, "content_block": {"type": "thinking", "thinking": ""}}
    
    event: content_block_delta
    data: {"type": "content_block_delta", "index": 0, "delta": {"type": "thinking_delta", "thinking": "Lasciami risolvere questo passo dopo passo:\n\n1. Per prima cosa scomponi 27 * 453"}}
    
    event: content_block_delta
    data: {"type": "content_block_delta", "index": 0, "delta": {"type": "thinking_delta", "thinking": "\n2. 453 = 400 + 50 + 3"}}
    
    // Delta di pensiero aggiuntivi...
    
    event: content_block_delta
    data: {"type": "content_block_delta", "index": 0, "delta": {"type": "signature_delta", "signature": "EqQBCgIYAhIM1gbcDa9GJwZA2b3hGgxBdjrkzLoky3dl1pkiMOYds..."}}
    
    event: content_block_stop
    data: {"type": "content_block_stop", "index": 0}
    
    event: content_block_start
    data: {"type": "content_block_start", "index": 1, "content_block": {"type": "text", "text": ""}}
    
    event: content_block_delta
    data: {"type": "content_block_delta", "index": 1, "delta": {"type": "text_delta", "text": "27 * 453 = 12.231"}}
    
    // Delta di testo aggiuntivi...
    
    event: content_block_stop
    data: {"type": "content_block_stop", "index": 1}
    
    event: message_delta
    data: {"type": "message_delta", "delta": {"stop_reason": "end_turn", "stop_sequence": null}}
    
    event: message_stop
    data: {"type": "message_stop"}

    Quando si utilizza lo streaming con il ragionamento abilitato, potresti notare che il testo a volte arriva in blocchi più grandi alternati con una consegna token per token più piccola. Questo è un comportamento previsto, specialmente per il contenuto di pensiero.

    Il sistema di streaming deve elaborare il contenuto in batch per prestazioni ottimali, il che può risultare in questo modello di consegna "frammentaria", con possibili ritardi tra gli eventi di streaming. Stiamo continuamente lavorando per migliorare questa esperienza, con aggiornamenti futuri focalizzati su rendere il contenuto di pensiero più fluido nello streaming.

    Ragionamento esteso con uso di strumenti

    Il ragionamento esteso può essere utilizzato insieme all'uso di strumenti, consentendo a Claude di ragionare attraverso la selezione degli strumenti e l'elaborazione dei risultati.

    Quando si utilizza il ragionamento esteso con l'uso di strumenti, tieni presente le seguenti limitazioni:

    1. Limitazione della scelta dello strumento: L'uso di strumenti con ragionamento supporta solo tool_choice: {"type": "auto"} (il valore predefinito) o tool_choice: {"type": "none"}. L'utilizzo di tool_choice: {"type": "any"} o tool_choice: {"type": "tool", "name": "..."} risulterà in un errore perché queste opzioni forzano l'uso dello strumento, che è incompatibile con il ragionamento esteso.

    2. Preservazione dei blocchi di ragionamento: Durante l'uso dello strumento, devi passare i blocchi thinking all'API per l'ultimo messaggio dell'assistente. Includi il blocco completo e non modificato all'API per mantenere la continuità del ragionamento.

    Attivazione/disattivazione delle modalità di ragionamento nelle conversazioni

    Non puoi attivare/disattivare il ragionamento nel mezzo di un turno dell'assistente, incluso durante i cicli di uso dello strumento. L'intero turno dell'assistente deve operare in una singola modalità di ragionamento:

    • Se il ragionamento è abilitato, il turno finale dell'assistente deve iniziare con un blocco di ragionamento.
    • Se il ragionamento è disabilitato, il turno finale dell'assistente non deve contenere alcun blocco di ragionamento

    Dal punto di vista del modello, i cicli di uso dello strumento fanno parte del turno dell'assistente. Un turno dell'assistente non si completa finché Claude non termina la sua risposta completa, che può includere più chiamate di strumenti e risultati.

    Ad esempio, questa sequenza fa parte di un singolo turno dell'assistente:

    Utente: "Qual è il meteo a Parigi?"
    Assistente: [ragionamento] + [tool_use: get_weather]
    Utente: [tool_result: "20°C, soleggiato"]
    Assistente: [testo: "Il meteo a Parigi è 20°C e soleggiato"]

    Anche se ci sono più messaggi API, il ciclo di uso dello strumento è concettualmente parte di una risposta dell'assistente continua.

    Scenari di errore comuni

    Potresti incontrare questo errore:

    Expected `thinking` or `redacted_thinking`, but found `tool_use`.
    When `thinking` is enabled, a final `assistant` message must start
    with a thinking block (preceding the lastmost set of `tool_use` and
    `tool_result` blocks).

    Questo si verifica in genere quando:

    1. Avevi il ragionamento disabilitato durante una sequenza di uso dello strumento
    2. Vuoi abilitare il ragionamento di nuovo
    3. Il tuo ultimo messaggio dell'assistente contiene blocchi di uso dello strumento ma nessun blocco di ragionamento

    Guida pratica

    ✗ Non valido: Attivazione/disattivazione del ragionamento immediatamente dopo l'uso dello strumento

    Utente: "Qual è il meteo?"
    Assistente: [tool_use] (ragionamento disabilitato)
    Utente: [tool_result]
    // Non puoi abilitare il ragionamento qui - ancora nello stesso turno dell'assistente

    ✓ Valido: Completa il turno dell'assistente per primo

    Utente: "Qual è il meteo?"
    Assistente: [tool_use] (ragionamento disabilitato)
    Utente: [tool_result]
    Assistente: [testo: "È soleggiato"] 
    Utente: "E domani?" (ragionamento disabilitato)
    Assistente: [ragionamento] + [testo: "..."] (ragionamento abilitato - nuovo turno)

    Migliore pratica: Pianifica la tua strategia di ragionamento all'inizio di ogni turno piuttosto che cercare di attivare/disattivare a metà turno.

    L'attivazione/disattivazione delle modalità di ragionamento invalida anche la memorizzazione nella cache dei prompt per la cronologia dei messaggi. Per ulteriori dettagli, consulta la sezione Ragionamento esteso con memorizzazione nella cache dei prompt.

    Preservazione dei blocchi di ragionamento

    Durante l'uso dello strumento, devi passare i blocchi thinking all'API, e devi includere il blocco completo e non modificato all'API. Questo è critico per mantenere il flusso di ragionamento del modello e l'integrità della conversazione.

    Anche se puoi omettere i blocchi thinking dai turni precedenti del ruolo assistant, suggeriamo di passare sempre tutti i blocchi di ragionamento all'API per qualsiasi conversazione multi-turno. L'API:

    • Filtrerà automaticamente i blocchi di ragionamento forniti
    • Utilizzerà i blocchi di ragionamento rilevanti necessari per preservare il ragionamento del modello
    • Addebiterà solo i token di input per i blocchi mostrati a Claude

    Quando attivi/disattivi le modalità di ragionamento durante una conversazione, ricorda che l'intero turno dell'assistente (inclusi i cicli di uso dello strumento) deve operare in una singola modalità di ragionamento. Per ulteriori dettagli, consulta Attivazione/disattivazione delle modalità di ragionamento nelle conversazioni.

    Quando Claude invoca strumenti, sta mettendo in pausa la costruzione di una risposta per attendere informazioni esterne. Quando i risultati dello strumento vengono restituiti, Claude continuerà a costruire quella risposta esistente. Questo rende necessaria la preservazione dei blocchi di ragionamento durante l'uso dello strumento, per un paio di motivi:

    1. Continuità del ragionamento: I blocchi di ragionamento catturano il ragionamento passo dopo passo di Claude che ha portato alle richieste di strumenti. Quando pubblichi i risultati dello strumento, includere il ragionamento originale assicura che Claude possa continuare il suo ragionamento da dove l'ha lasciato.

    2. Manutenzione del contesto: Mentre i risultati dello strumento appaiono come messaggi dell'utente nella struttura dell'API, fanno parte di un flusso di ragionamento continuo. Preservare i blocchi di ragionamento mantiene questo flusso concettuale attraverso più chiamate API. Per ulteriori informazioni sulla gestione del contesto, consulta la nostra guida sulle finestre di contesto.

    Importante: Quando fornisci blocchi thinking, l'intera sequenza di blocchi thinking consecutivi deve corrispondere agli output generati dal modello durante la richiesta originale; non puoi riordinare o modificare la sequenza di questi blocchi.

    Pensiero intercalato

    Il pensiero esteso con uso di strumenti nei modelli Claude 4 supporta il pensiero intercalato, che consente a Claude di pensare tra le chiamate di strumenti e fare ragionamenti più sofisticati dopo aver ricevuto i risultati degli strumenti.

    Con il pensiero intercalato, Claude può:

    • Ragionare sui risultati di una chiamata di strumento prima di decidere cosa fare dopo
    • Concatenare più chiamate di strumenti con passaggi di ragionamento intermedi
    • Prendere decisioni più sfumate basate sui risultati intermedi

    Per abilitare il pensiero intercalato, aggiungi l'intestazione beta interleaved-thinking-2025-05-14 alla tua richiesta API.

    Ecco alcune considerazioni importanti per il pensiero intercalato:

    • Con il pensiero intercalato, il budget_tokens può superare il parametro max_tokens, poiché rappresenta il budget totale su tutti i blocchi di pensiero all'interno di un turno dell'assistente.
    • Il pensiero intercalato è supportato solo per strumenti utilizzati tramite l'API Messages.
    • Il pensiero intercalato è supportato solo per i modelli Claude 4, con l'intestazione beta interleaved-thinking-2025-05-14.
    • Le chiamate dirette all'API Claude ti consentono di passare interleaved-thinking-2025-05-14 nelle richieste a qualsiasi modello, senza alcun effetto.
    • Su piattaforme di terze parti (ad es., Amazon Bedrock e Vertex AI), se passi interleaved-thinking-2025-05-14 a qualsiasi modello diverso da Claude Opus 4.5, Claude Opus 4.1, Opus 4 o Sonnet 4, la tua richiesta avrà esito negativo.

    Pensiero esteso con caching dei prompt

    Il caching dei prompt con il pensiero ha diverse considerazioni importanti:

    I compiti di pensiero esteso spesso richiedono più di 5 minuti per essere completati. Considera l'utilizzo della durata della cache di 1 ora per mantenere i cache hit su sessioni di pensiero più lunghe e flussi di lavoro multi-step.

    Rimozione del contesto del blocco di pensiero

    • I blocchi di pensiero dai turni precedenti vengono rimossi dal contesto, il che può influire sui punti di interruzione della cache
    • Quando si continuano conversazioni con uso di strumenti, i blocchi di pensiero vengono memorizzati nella cache e contano come token di input quando letti dalla cache
    • Questo crea un compromesso: mentre i blocchi di pensiero non consumano spazio nella finestra di contesto visivamente, contano comunque verso l'utilizzo dei token di input quando memorizzati nella cache
    • Se il pensiero viene disabilitato, le richieste avranno esito negativo se passi contenuto di pensiero nel turno di uso dello strumento corrente. In altri contesti, il contenuto di pensiero passato all'API viene semplicemente ignorato

    Modelli di invalidazione della cache

    • Le modifiche ai parametri di pensiero (abilitato/disabilitato o allocazione del budget) invalidano i punti di interruzione della cache dei messaggi
    • Il pensiero intercalato amplifica l'invalidazione della cache, poiché i blocchi di pensiero possono verificarsi tra più chiamate di strumenti
    • I prompt di sistema e gli strumenti rimangono memorizzati nella cache nonostante le modifiche ai parametri di pensiero o la rimozione dei blocchi

    Sebbene i blocchi di pensiero vengano rimossi per il caching e i calcoli del contesto, devono essere preservati quando si continuano conversazioni con uso di strumenti, specialmente con pensiero intercalato.

    Comprensione del comportamento del caching dei blocchi di pensiero

    Quando si utilizza il pensiero esteso con uso di strumenti, i blocchi di pensiero mostrano un comportamento di caching specifico che influisce sul conteggio dei token:

    Come funziona:

    1. Il caching si verifica solo quando effettui una richiesta successiva che include risultati degli strumenti
    2. Quando viene effettuata la richiesta successiva, la cronologia della conversazione precedente (inclusi i blocchi di pensiero) può essere memorizzata nella cache
    3. Questi blocchi di pensiero memorizzati nella cache contano come token di input nelle tue metriche di utilizzo quando letti dalla cache
    4. Quando è incluso un blocco utente non relativo al risultato dello strumento, tutti i blocchi di pensiero precedenti vengono ignorati e rimossi dal contesto

    Flusso di esempio dettagliato:

    Richiesta 1:

    User: "What's the weather in Paris?"

    Risposta 1:

    [thinking_block_1] + [tool_use block 1]

    Richiesta 2:

    User: ["What's the weather in Paris?"], 
    Assistant: [thinking_block_1] + [tool_use block 1], 
    User: [tool_result_1, cache=True]

    Risposta 2:

    [thinking_block_2] + [text block 2]

    La richiesta 2 scrive una cache del contenuto della richiesta (non della risposta). La cache include il messaggio utente originale, il primo blocco di pensiero, il blocco di uso dello strumento e il risultato dello strumento.

    Richiesta 3:

    User: ["What's the weather in Paris?"],
    Assistant: [thinking_block_1] + [tool_use block 1],
    User: [tool_result_1, cache=True],
    Assistant: [thinking_block_2] + [text block 2],
    User: [Text response, cache=True]

    Per Claude Opus 4.5 e versioni successive, tutti i blocchi di pensiero precedenti vengono mantenuti per impostazione predefinita. Per i modelli più vecchi, poiché è stato incluso un blocco utente non relativo al risultato dello strumento, tutti i blocchi di pensiero precedenti vengono ignorati. Questa richiesta verrà elaborata come:

    User: ["What's the weather in Paris?"],
    Assistant: [tool_use block 1],
    User: [tool_result_1, cache=True],
    Assistant: [text block 2],
    User: [Text response, cache=True]

    Punti chiave:

    • Questo comportamento di caching accade automaticamente, anche senza marcatori cache_control espliciti
    • Questo comportamento è coerente sia quando si utilizza il pensiero regolare che il pensiero intercalato

    Max tokens e dimensione della finestra di contesto con pensiero esteso

    Nei modelli Claude più vecchi (precedenti a Claude Sonnet 3.7), se la somma dei token del prompt e di max_tokens superava la finestra di contesto del modello, il sistema regolava automaticamente max_tokens per adattarsi al limite di contesto. Ciò significava che potevi impostare un valore max_tokens grande e il sistema lo avrebbe silenziosamente ridotto secondo le necessità.

    Con i modelli Claude 3.7 e 4, max_tokens (che include il tuo budget di pensiero quando il pensiero è abilitato) viene applicato come limite rigoroso. Il sistema ora restituirà un errore di convalida se i token del prompt + max_tokens superano la dimensione della finestra di contesto.

    Puoi leggere la nostra guida sulle finestre di contesto per un approfondimento più completo.

    La finestra di contesto con pensiero esteso

    Quando si calcola l'utilizzo della finestra di contesto con il pensiero abilitato, ci sono alcune considerazioni di cui essere consapevoli:

    • I blocchi di pensiero dai turni precedenti vengono rimossi e non contano verso la tua finestra di contesto
    • Il pensiero del turno corrente conta verso il tuo limite max_tokens per quel turno

    Il diagramma sottostante dimostra la gestione specializzata dei token quando il pensiero esteso è abilitato:

    Diagramma della finestra di contesto con pensiero esteso

    La finestra di contesto effettiva viene calcolata come:

    context window =
      (current input tokens - previous thinking tokens) +
      (thinking tokens + encrypted thinking tokens + text output tokens)

    Consigliamo di utilizzare l'API di conteggio dei token per ottenere conteggi accurati dei token per il tuo caso d'uso specifico, specialmente quando si lavora con conversazioni multi-turno che includono il pensiero.

    La finestra di contesto con pensiero esteso e uso di strumenti

    Quando si utilizza il pensiero esteso con uso di strumenti, i blocchi di pensiero devono essere esplicitamente preservati e restituiti con i risultati degli strumenti.

    Il calcolo della finestra di contesto effettiva per il pensiero esteso con uso di strumenti diventa:

    context window =
      (current input tokens + previous thinking tokens + tool use tokens) +
      (thinking tokens + encrypted thinking tokens + text output tokens)

    Il diagramma sottostante illustra la gestione dei token per il pensiero esteso con uso di strumenti:

    Diagramma della finestra di contesto con pensiero esteso e uso di strumenti

    Gestione dei token con pensiero esteso

    Data la finestra di contesto e il comportamento di max_tokens con il pensiero esteso nei modelli Claude 3.7 e 4, potrebbe essere necessario:

    • Monitorare e gestire più attivamente l'utilizzo dei token
    • Regolare i valori di max_tokens al variare della lunghezza del prompt
    • Potenzialmente utilizzare gli endpoint di conteggio dei token più frequentemente
    • Essere consapevoli che i blocchi di pensiero precedenti non si accumulano nella tua finestra di contesto

    Questo cambiamento è stato apportato per fornire un comportamento più prevedibile e trasparente, specialmente poiché i limiti massimi di token sono aumentati significativamente.

    Crittografia del pensiero

    Il contenuto completo del pensiero è crittografato e restituito nel campo signature. Questo campo viene utilizzato per verificare che i blocchi di pensiero siano stati generati da Claude quando passati di nuovo all'API.

    È strettamente necessario inviare di nuovo i blocchi di pensiero solo quando si utilizzano strumenti con pensiero esteso. Altrimenti puoi omettere i blocchi di pensiero dai turni precedenti, o lasciare che l'API li rimuova per te se li passi di nuovo.

    Se invii di nuovo i blocchi di pensiero, consigliamo di passare tutto di nuovo come lo hai ricevuto per coerenza e per evitare potenziali problemi.

    Ecco alcune considerazioni importanti sulla crittografia del pensiero:

    • Quando trasmetti risposte in streaming, la firma viene aggiunta tramite un signature_delta all'interno di un evento content_block_delta poco prima dell'evento content_block_stop.
    • I valori di signature sono significativamente più lunghi nei modelli Claude 4 rispetto ai modelli precedenti.
    • Il campo signature è un campo opaco e non deve essere interpretato o analizzato - esiste esclusivamente per scopi di verifica.
    • I valori di signature sono compatibili tra le piattaforme (API Claude, Amazon Bedrock e Vertex AI). I valori generati su una piattaforma saranno compatibili con un'altra.

    Redazione del pensiero

    Occasionalmente il ragionamento interno di Claude verrà contrassegnato dai nostri sistemi di sicurezza. Quando ciò accade, crittografiamo parte o tutto il blocco thinking e lo restituiamo come blocco redacted_thinking. I blocchi redacted_thinking vengono decriptati quando passati di nuovo all'API, permettendo a Claude di continuare la sua risposta senza perdere il contesto.

    Quando si costruiscono applicazioni rivolte ai clienti che utilizzano il pensiero esteso:

    • Sii consapevole che i blocchi di pensiero redatto contengono contenuti crittografati che non sono leggibili dall'uomo
    • Considera di fornire una semplice spiegazione come: "Parte del ragionamento interno di Claude è stato automaticamente crittografato per motivi di sicurezza. Questo non influisce sulla qualità delle risposte."
    • Se mostri i blocchi di pensiero agli utenti, puoi filtrare i blocchi redatti preservando i blocchi di pensiero normali
    • Sii trasparente sul fatto che l'utilizzo delle funzioni di pensiero esteso può occasionalmente comportare la crittografia di parte del ragionamento
    • Implementa una gestione degli errori appropriata per gestire con eleganza il pensiero redatto senza interrompere l'interfaccia utente

    Ecco un esempio che mostra sia i blocchi di pensiero normali che quelli redatti:

    {
      "content": [
        {
          "type": "thinking",
          "thinking": "Let me analyze this step by step...",
          "signature": "WaUjzkypQ2mUEVM36O2TxuC06KN8xyfbJwyem2dw3URve/op91XWHOEBLLqIOMfFG/UvLEczmEsUjavL...."
        },
        {
          "type": "redacted_thinking",
          "data": "EmwKAhgBEgy3va3pzix/LafPsn4aDFIT2Xlxh0L5L8rLVyIwxtE3rAFBa8cr3qpPkNRj2YfWXGmKDxH4mPnZ5sQ7vB9URj2pLmN3kF8/dW5hR7xJ0aP1oLs9yTcMnKVf2wRpEGjH9XZaBt4UvDcPrQ..."
        },
        {
          "type": "text",
          "text": "Based on my analysis..."
        }
      ]
    }

    Vedere blocchi di pensiero redatto nell'output è un comportamento previsto. Il modello può comunque utilizzare questo ragionamento redatto per informare le sue risposte mantenendo i guardrail di sicurezza.

    Se hai bisogno di testare la gestione del pensiero redatto nella tua applicazione, puoi utilizzare questa stringa di test speciale come prompt: ANTHROPIC_MAGIC_STRING_TRIGGER_REDACTED_THINKING_46C9A13E193C177646C7398A98432ECCCE4C1253D5E2D82641AC0E52CC2876CB

    Quando si passano i blocchi thinking e redacted_thinking di nuovo all'API in una conversazione multi-turno, è necessario includere il blocco completo e non modificato di nuovo all'API per l'ultimo turno dell'assistente. Questo è critico per mantenere il flusso di ragionamento del modello. Suggeriamo di passare sempre tutti i blocchi di pensiero all'API. Per ulteriori dettagli, consulta la sezione Preservazione dei blocchi di pensiero sopra.

    Differenze nel pensiero tra le versioni del modello

    L'API Messages gestisce il pensiero diversamente tra i modelli Claude Sonnet 3.7 e Claude 4, principalmente nel comportamento di redazione e riassunto.

    Consulta la tabella seguente per un confronto condensato:

    FunzioneClaude Sonnet 3.7Modelli Claude 4 (pre-Opus 4.5)Claude Opus 4.5 e successivi
    Output del pensieroRestituisce l'output completo del pensieroRestituisce il pensiero riassuntoRestituisce il pensiero riassunto
    Pensiero intercalatoNon supportatoSupportato con intestazione beta interleaved-thinking-2025-05-14Supportato con intestazione beta interleaved-thinking-2025-05-14
    Preservazione del blocco di pensieroNon preservato tra i turniNon preservato tra i turniPreservato per impostazione predefinita (abilita l'ottimizzazione della cache, risparmio di token)

    Preservazione del blocco di pensiero in Claude Opus 4.5

    Claude Opus 4.5 introduce un nuovo comportamento predefinito: i blocchi di pensiero dai turni dell'assistente precedenti vengono preservati nel contesto del modello per impostazione predefinita. Questo differisce dai modelli precedenti, che rimuovono i blocchi di pensiero dai turni precedenti.

    Vantaggi della preservazione del blocco di pensiero:

    • Ottimizzazione della cache: Quando si utilizza l'uso di strumenti, i blocchi di pensiero preservati abilitano i hit della cache poiché vengono passati di nuovo con i risultati degli strumenti e memorizzati nella cache in modo incrementale nel turno dell'assistente, risultando in risparmi di token nei flussi di lavoro multi-step
    • Nessun impatto sull'intelligenza: La preservazione dei blocchi di pensiero non ha effetti negativi sulle prestazioni del modello

    Considerazioni importanti:

    • Utilizzo del contesto: Le conversazioni lunghe consumeranno più spazio di contesto poiché i blocchi di pensiero vengono mantenuti nel contesto
    • Comportamento automatico: Questo è il comportamento predefinito per Claude Opus 4.5—non sono richiesti cambiamenti di codice o intestazioni beta
    • Compatibilità all'indietro: Per sfruttare questa funzione, continua a passare i blocchi di pensiero completi e non modificati all'API come faresti per l'uso di strumenti

    Per i modelli precedenti (Claude Sonnet 4.5, Opus 4.1, ecc.), i blocchi di pensiero dai turni precedenti continuano a essere rimossi dal contesto. Il comportamento esistente descritto nella sezione Pensiero esteso con caching del prompt si applica a quei modelli.

    Prezzi

    Per informazioni complete sui prezzi inclusi i tassi base, le scritture della cache, i hit della cache e i token di output, consulta la pagina dei prezzi.

    Il processo di pensiero comporta addebiti per:

    • Token utilizzati durante il pensiero (token di output)
    • Blocchi di pensiero dall'ultimo turno dell'assistente inclusi nelle richieste successive (token di input)
    • Token di output di testo standard

    Quando il pensiero esteso è abilitato, un prompt di sistema specializzato viene automaticamente incluso per supportare questa funzione.

    Quando si utilizza il pensiero riassunto:

    • Token di input: Token nella tua richiesta originale (esclude i token di pensiero dai turni precedenti)
    • Token di output (fatturati): I token di pensiero originali che Claude ha generato internamente
    • Token di output (visibili): I token di pensiero riassunti che vedi nella risposta
    • Nessun addebito: Token utilizzati per generare il riassunto

    Il conteggio dei token di output fatturati non corrisponderà al conteggio dei token visibili nella risposta. Sei fatturato per l'intero processo di pensiero, non per il riassunto che vedi.

    Best practice e considerazioni per il pensiero esteso

    Lavorare con i budget di pensiero

    • Ottimizzazione del budget: Il budget minimo è 1.024 token. Suggeriamo di iniziare con il minimo e aumentare il budget di pensiero in modo incrementale per trovare l'intervallo ottimale per il tuo caso d'uso. Conteggi di token più elevati abilitano un ragionamento più completo ma con rendimenti decrescenti a seconda dell'attività. Aumentare il budget può migliorare la qualità della risposta al costo di una latenza aumentata. Per attività critiche, testa diverse impostazioni per trovare il bilancio ottimale. Nota che il budget di pensiero è un obiettivo piuttosto che un limite rigoroso—l'utilizzo effettivo di token può variare in base all'attività.
    • Punti di partenza: Inizia con budget di pensiero più grandi (16k+ token) per attività complesse e regola in base alle tue esigenze.
    • Budget grandi: Per budget di pensiero superiori a 32k, consigliamo di utilizzare l'elaborazione batch per evitare problemi di rete. Le richieste che spingono il modello a pensare oltre 32k token causano richieste a lunga esecuzione che potrebbero scontrarsi con timeout di sistema e limiti di connessione aperta.
    • Tracciamento dell'utilizzo dei token: Monitora l'utilizzo dei token di pensiero per ottimizzare i costi e le prestazioni.

    Considerazioni sulle prestazioni

    • Tempi di risposta: Sii preparato per potenziali tempi di risposta più lunghi dovuti all'elaborazione aggiuntiva richiesta per il processo di ragionamento. Tieni conto del fatto che la generazione di blocchi di pensiero può aumentare il tempo di risposta complessivo.
    • Requisiti di streaming: Lo streaming è richiesto quando max_tokens è maggiore di 21.333. Durante lo streaming, sii preparato a gestire sia i blocchi di contenuto di pensiero che di testo mentre arrivano.

    Compatibilità delle funzioni

    • Il pensiero non è compatibile con modifiche a temperature o top_k così come con l'uso forzato di strumenti.
    • Quando il pensiero è abilitato, puoi impostare top_p su valori tra 1 e 0,95.
    • Non puoi pre-compilare le risposte quando il pensiero è abilitato.
    • I cambiamenti al budget di pensiero invalidano i prefissi del prompt memorizzati nella cache che includono messaggi. Tuttavia, i prompt di sistema memorizzati nella cache e le definizioni degli strumenti continueranno a funzionare quando i parametri di pensiero cambiano.

    Linee guida di utilizzo

    • Selezione dell'attività: Utilizza il pensiero esteso per attività particolarmente complesse che beneficiano del ragionamento passo dopo passo come matematica, codifica e analisi.
    • Gestione del contesto: Non è necessario rimuovere i blocchi di pensiero precedenti da solo. L'API Claude ignora automaticamente i blocchi di pensiero dai turni precedenti e non sono inclusi nel calcolo dell'utilizzo del contesto.
    • Ingegneria del prompt: Consulta i nostri suggerimenti per il prompt di pensiero esteso se desideri massimizzare le capacità di pensiero di Claude.

    Passaggi successivi

    Prova il cookbook di pensiero esteso
    curl https://api.anthropic.com/v1/messages \
         --header "x-api-key: $ANTHROPIC_API_KEY" \
         --header "anthropic-version: 2023-06-01" \
         --header "content-type: application/json" \
         --data \
    '{
        "model": "claude-sonnet-4-5",
        "max_tokens": 16000,
        "thinking": {
            "type": "enabled",
            "budget_tokens": 10000
        },
        "messages": [
            {
                "role": "user",
                "content": "Esiste un numero infinito di numeri primi tali che n mod 4 == 3?"
            }
        ]
    }'
    curl https://api.anthropic.com/v1/messages \
         --header "x-api-key: $ANTHROPIC_API_KEY" \
         --header "anthropic-version: 2023-06-01" \
         --header "content-type: application/json" \
         --data \
    '{
        "model": "claude-sonnet-4-5",
        "max_tokens": 16000,
        "stream": true,
        "thinking": {
            "type": "enabled",
            "budget_tokens": 10000
        },
        "messages": [
            {
                "role": "user",
                "content": "Quanto fa 27 * 453?"
            }
        ]
    }'

    Esplora esempi pratici di pensiero nel nostro cookbook.

    Suggerimenti per il prompt di pensiero esteso

    Scopri le best practice di ingegneria del prompt per il pensiero esteso.