Claude Opus 5.5 è disponibile su SeedRouter
SeedRouter Docs

Claude Sonnet 5.5

Riferimento Messages per Claude Sonnet 5.5: parametri ufficiali, pensiero adattivo e tra le chiamate agli strumenti, utilizzo della cache, campi di risposta e limiti di compatibilità testati.

View Markdown

Usa claude-sonnet-5-5 con il formato Anthropic Messages. Questo documento distingue la specifica ufficiale delle richieste dal comportamento osservato nei test di compatibilità. Alcune opzioni avanzate non si comportano ancora come previsto dalla specifica; consulta le limitazioni prima di farvi affidamento.

Consulta la pagina del modello per i prezzi attuali di input, output e cache.

Avvio rapido

curl https://api.seedrouter.ai/v1/messages \
  -H "x-api-key: $SEEDROUTER_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5-5",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Explain how a rainbow forms in three sentences."}]
  }'

POST /v1/messages accetta l’autenticazione tramite x-api-key o Bearer e anthropic-version: 2023-06-01. Invia un header anthropic-beta per le funzionalità la cui documentazione ufficiale lo richiede. Conserva le credenziali nel codice lato server.

Il modello accetta anche richieste di base OpenAI Chat Completions (POST /v1/chat/completions) e Responses (POST /v1/responses). Usa Messages per i parametri nativi descritti di seguito; la conversione del formato OpenAI non offre tutte le funzionalità di Anthropic.

Specifica ufficiale dei parametri

Sonnet 5.5 ha una finestra di contesto di 1M token e un limite di output sincrono di 128000 token. I limiti di output specifici di Batch non si applicano a questo endpoint. Le proprietà facoltative non hanno valori predefiniti impostati dall’applicazione, salvo diversa indicazione nella tabella.

ParametroTipo / obbligatorioVincoli e valori predefiniti ufficiali
modelstring, obbligatorioclaude-sonnet-5-5.
max_tokensinteger, obbligatorio0–128000, inclusi i token di pensiero. Ufficialmente, 0 popola la cache dei prompt senza generare output; consulta la limitazione attuale più avanti.
messagesarray di oggetti, obbligatorioAlmeno un messaggio di conversazione, al massimo 100000. Ognuno contiene role e content; content è una stringa o un array di blocchi di contenuto. I turni ordinari usano user/assistant. I messaggi system nel corso della conversazione seguono le regole ufficiali di posizionamento.
systemstring o array di blocchi di testoIstruzioni di primo livello. I blocchi di testo possono includere punti di interruzione della cache.
thinkingobjectValore predefinito: {"type":"adaptive"}. L’altra modalità supportata è {"type":"between_tools"}. I budget manuali e disabled vengono rifiutati.
thinking.displayenumSolo nella modalità adattiva: omitted (predefinito) o summarized. L’omissione del riepilogo non significa che il pensiero sia disattivato.
thinking.block_bindingobject, betaSolo nella modalità adattiva. Richiede thinking-binding-controls-2026-08-01; segui la specifica ufficiale per la conservazione del pensiero.
output_config.effortenum o nulllow, medium, high, xhigh, max; il valore predefinito è high. Null mantiene il comportamento predefinito.
output_config.formatobject o nullOutput JSON strutturato: {"type":"json_schema","schema":{...}}. Usa il sottoinsieme supportato di JSON Schema.
streambooleanIl valore predefinito è false; true restituisce eventi SSE.
stop_sequencesarray di stringheUfficialmente interrompe la generazione in corrispondenza di una stringa. Nel test di compatibilità attuale, questo comportamento non è stato rispettato.
temperaturenumber o nullViene accettato solo 1 per compatibilità; omettilo. Gli altri valori diversi da null vengono rifiutati.
top_pnumber o nullViene accettato solo 0.99–1 per compatibilità; omettilo.
top_knessun valore diverso da nullIl campionamento non è supportato; ometti questa proprietà.
toolsarray di oggettiGli strumenti client hanno name, input_schema e impostazioni facoltative per la descrizione o la modalità rigorosa. Gli strumenti server usano le proprie definizioni ufficiali con versione.
tool_choiceobjectauto (predefinito) o none. any e un tool imposto per nome vengono rifiutati. auto può includere disable_parallel_tool_use.
metadata.user_idstring o nullAl massimo 512 caratteri; usa un identificatore opaco.
cache_controlobject o nulltype: "ephemeral"; ttl: "5m" (predefinito) o "1h". Sonnet 5.5 richiede almeno 512 token memorizzabili nella cache. L’API ufficiale supporta anche punti di interruzione della cache a livello di blocco.
diagnosticsobject o nullprevious_message_id: stringa di al massimo 256 caratteri o null. Richiede dati diagnostici sulle divergenze della cache.
service_tierenumauto (predefinito) o standard_only.
speedenum o nullOmettilo oppure usa standard / null. Sonnet 5.5 non supporta fast.
inference_geostring o nullIl valore predefinito ufficiale proviene dalle impostazioni dell’account. La sola accettazione di una richiesta non verifica la localizzazione geografica dell’elaborazione.
fallbacksstring, array di oggetti o null, beta"default" oppure fino a tre voci di fallback. Ognuna richiede model; i parametri che puoi sovrascrivere facoltativamente sono max_tokens, thinking, output_config e speed. Consulta le regole di fallback più avanti.
fallback_credit_tokenstring, object o nullUn token ottenuto da un rifiuto precedente, oppure {"token":"...","mode":"strict"}. Il formato oggetto richiede fallback-credit-2026-07-01; mode è strict (predefinito) o best_effort. Non può essere abbinato a un valore di fallbacks diverso da null.
containerstring, object o nullID del container oppure configurazione con id e skills facoltativi (al massimo 20). Le Skills usano i campi ufficiali per tipo, identificatore e versione.
context_managementobject o nullConfigurazione ufficiale per la modifica del contesto, incluso edits; null omette l’impostazione. Restano validi i vincoli di compatibilità delle modifiche specifici del modello.
mcp_serversarray di oggettiDefinizioni ufficiali dei server MCP, soggette ai requisiti di versione beta e autenticazione del server. Un test con un array vuoto non verifica l’esecuzione remota di MCP.
compactionobject o null, beta{"type":"summarize"}, con compact-2026-09-04; null omette la compattazione. Se attiva, la compattazione non può essere combinata con un valore di context_management diverso da null, sequenze di arresto o un formato di output strutturato. Il comportamento di compattazione firmata non ha superato il test attuale.
messages[].output_config.effortenum, betaEffort per messaggio su un messaggio system; richiede mid-conversation-output-config-2026-07-01. I messaggi system che impostano solo l’effort possono comparire in qualsiasi posizione; i gruppi system con contenuto seguono le regole ufficiali di posizionamento. Non deve modificare l’effort in modalità between_tools.

between_tools accetta soltanto la propria proprietà type e i livelli di effort low, medium o high. Non inviare display, budget_tokens o block_binding con questa modalità. Esempio:

{
  "model": "claude-sonnet-5-5",
  "max_tokens": 1024,
  "thinking": {"type": "between_tools"},
  "output_config": {"effort": "medium"},
  "messages": [{"role": "user", "content": "Explain this concept briefly."}]
}

Il precompilamento dell’assistente non è supportato. Per continuare un pause_turn, reinvia senza modifiche il contenuto assistant dello strumento server restituito nella risposta. La compattazione riassume la cronologia esistente e non è un precompilamento dell’assistente. Conserva esattamente i blocchi di pensiero e le firme; non spostarli tra modelli e non modificare la cronologia precedente senza seguire le regole ufficiali di associazione.

Nell’API nativa di Claude, l’uso del computer richiede computer_toolset_20260801; computer_20251124 viene rifiutato. Per questo modello esecutore vengono rifiutate anche le configurazioni Advisor che usano claude-opus-4-8, claude-opus-4-7 o claude-sonnet-5.

Campi della richiesta di fallback

La funzionalità beta ufficiale fallbacks ritenta i rifiuti del classificatore che soddisfano i requisiti. Non ritenta in caso di limiti di frequenza, sovraccarichi o errori del server, e il rifiuto può persistere. Invia server-side-fallback-2026-07-01 per usare "default" o un elenco esplicito; server-side-fallback-2026-06-01 supporta soltanto l’elenco. Le altre versioni datate vengono rifiutate.

Un elenco esplicito contiene al massimo tre voci con modelli diversi, nessuno uguale al modello richiesto. I modelli di destinazione consentiti provengono da allowed_fallback_models della beta Models API. Per ogni voce sono ammessi soltanto model, max_tokens, thinking, output_config e speed; i valori sovrascritti devono essere validi per il modello di destinazione. Quando si verifica quel fallback, la beta di luglio converte between_tools di Sonnet 5.5 in disabled di Sonnet 5, omettendo display. Con la beta di giugno, devi specificare tu la sovrascrittura del pensiero per Sonnet 5.

fallback_credit_token serve per un nuovo tentativo separato dopo un rifiuto. Una stringa seleziona l’applicazione rigorosa del credito; un oggetto aggiunge mode. In modalità strict, se l’applicazione del credito fallisce, il nuovo tentativo viene rifiutato. In modalità best_effort, un errore a livello del token può consentire di proseguire al prezzo normale e viene registrato in usage.fallback_credit; i token non validi nel formato e l’uso del credito insieme a fallbacks continuano a fallire. Per applicare il credito, devono essere soddisfatti anche i requisiti relativi a richiesta, account, area di lavoro, piattaforma e finestra di cinque minuti descritti nella guida ufficiale al credito.

Una richiesta dal contenuto innocuo con fallbacks: "default", l’header beta di luglio e speed: "standard" ha restituito il testo previsto. Questo dimostra soltanto che la richiesta è stata accettata: l’esecuzione del fallback e l’applicazione del credito non sono state verificate dall’inizio alla fine qui.

Input multimediali e degli strumenti

Le immagini usano blocchi image e i PDF blocchi document in un messaggio utente. I tipi di sorgente ufficiali includono URL pubblici e base64 con il tipo MIME corrispondente. I controlli di compatibilità hanno usato un PNG in base64 e un PDF di una pagina in base64, verificando il contenuto delle risposte. Non hanno testato ogni URL né tutti i limiti di dimensione dei file, risoluzione delle immagini o numero di pagine PDF.

Gli strumenti lato client usano lo scambio standard tool_use → tool_result. Mantieni invariati gli ID di utilizzo degli strumenti e restituisci il risultato in un messaggio utente. Il successo di un esempio di strumento in modalità rigorosa verifica gli argomenti di quell’esempio, non tutte le parole chiave supportate di JSON Schema.

Risposte

Una risposta senza streaming contiene id, type: "message", role: "assistant", model, content, stop_reason, stop_sequence e usage, oltre a campi ufficiali facoltativi come container, diagnostics, context_management, stop_details e campi di risposta beta. Il contenuto può includere testo, pensiero, chiamate agli strumenti, risultati degli strumenti o altri tipi di blocco ufficiali; non presumere che il primo blocco sia testo.

Con lo streaming, gestisci message_start, content_block_start, content_block_delta, content_block_stop, message_delta e message_stop. Gli errori possono verificarsi anche all’interno del flusso. L’utilizzo può includere token ordinari di input/output, dettagli sui token di pensiero, letture della cache e conteggi separati per la creazione di cache con durata di 5 minuti / 1 ora.

Un rifiuto ufficiale del classificatore è una risposta normale con stop_reason: "refusal" e stop_details, non un errore HTTP. In una risposta di fallback, model identifica il modello che ha risposto, i blocchi di contenuto fallback indicano le transizioni e usage.iterations descrive i tentativi. Esamina questi campi invece di presumere che la risposta provenga dal modello richiesto. Questi comportamenti di risposta restano non verificati qui.

Gli errori di Messages usano {"type":"error","error":{"type":"...","message":"..."}}. Le richieste non riuscite non vengono addebitate.

Verifica di compatibilità: 2026-10-01

RisultatoComportamento controllato
Funzionamento osservatoTesto di base, recupero di informazioni precedenti in conversazioni ordinarie a più turni, istruzioni di sistema non in conflitto sotto forma di stringa/blocco, streaming, richieste di pensiero adattivo e tra chiamate agli strumenti, output JSON, strumenti auto/none, una chiamata a uno strumento in modalità rigorosa, reinvio del risultato dello strumento, input immagine/PDF in base64 e utilizzo in scrittura/lettura della cache 5m/1h.
Rifiutato secondo la specifica del modelloBudget di token di output non validi, impostazioni di campionamento rimosse, pensiero manuale/disattivato, combinazioni between-tools non valide, strumenti forzati, precompilamento dell’assistente, strumenti del computer precedenti e ID di metadata troppo lunghi.
Accettato, effetto non dimostratoTutti e cinque i livelli di effort, pensiero riassunto, impostazioni di associazione, metadata, livello di servizio, selezione della regione, diagnostica, elenco vuoto di modifiche del contesto, container null, elenco MCP vuoto e dichiarazione di un insieme di strumenti per il computer. La dichiarazione dell’insieme di strumenti non dimostra il successo dell’uso del computer.
Incompatibilità notamax_tokens: 0 ha restituito 400. Una richiesta con sequenza di arresto ha restituito la stringa di arresto e il testo successivo. La compattazione su richiesta ha restituito testo ordinario anziché un blocco di compattazione firmato.
Altri comportamenti da approfondireUna richiesta con effort per messaggio non ha ricordato il valore precedente; un test con istruzioni di sistema/utente in conflitto ha seguito l’istruzione dell’utente. Questi risultati non dimostrano che ogni prompt di sistema o richiesta a più turni fallisca.

L’esecuzione di strumenti beta, le connessioni MCP reali, i riferimenti Files API, la residenza geografica dei dati, il reinvio delle firme di pensiero, i limiti completi di contesto/output, i casi limite multimediali e il comportamento di rifiuto/fallback non sono stati validati dall’inizio alla fine. HTTP 200 e il nome del modello restituito non autenticano quale modello sia stato eseguito né dimostrano che tutte le opzioni inviate abbiano avuto effetto.

Riferimenti