Ogni modello ha una finestra di contesto; questo 400 significa che prompt più output richiesto non rientrano nella finestra. La soluzione ingenua — troncare il prompt alla cieca — è il modo in cui le app RAG diventano silenziosamente peggiori. Ecco come rientrare nella finestra senza perdere il filo.
L’errore
// Anthropic:
{"type":"error","error":{"type":"invalid_request_error",
"message":"prompt is too long: 214481 tokens > 200000 maximum"}}
// OpenAI-compatible:
{"error":{"type":"invalid_request_error","code":"context_length_exceeded",
"message":"This model's maximum context length is 128000 tokens..."}}Cause e soluzioni in breve
| Causa | Soluzione |
|---|---|
| Cronologia chat senza limiti | Mantieni una finestra scorrevole e un riepilogo aggiornato; non riprodurre l'intera trascrizione a ogni turno. |
| Il RAG recupera troppi chunk o chunk troppo grandi | Recupera chunk meno numerosi e più piccoli, riordinati per rilevanza: la qualità è più importante della quantità molto prima che la finestra si riempia. |
| max_tokens è troppo grande per lo spazio rimanente | La finestra comprende input E output: budget = finestra − input. Imposta max_tokens in base allo spazio rimanente. |
| Il carico di lavoro richiede davvero più contesto | Passa a un livello di modelli con contesto lungo (ad esempio modelli con finestra da 1M) invece di progettare soluzioni attorno a un limite rigido. |
Misura prima di ridurre
Conta i token nello stesso modo dell'API (Anthropic dispone di un endpoint count_tokens; tiktoken fornisce un'approssimazione per i modelli compatibili con il protocollo OpenAI). Registra il conteggio per richiesta: la soluzione cambia se superi il limite di 1,05× o di 5×.
Riduci retrieval e cronologia, mai le istruzioni
Riduci in quest'ordine: (1) turni di chat obsoleti → riepilogali, (2) chunk recuperati → riordinali e conserva i top-k, (3) esempi few-shot prolissi → riducili e rendili più concisi. Le istruzioni di sistema vengono per ultime: è lì che risiede il comportamento.
Passa a una finestra più lunga quando il problema è strutturale
Se gli input legittimi superano la finestra ogni settimana, il problema è la scelta del modello. I livelli con contesto lungo (200K–1M) esistono proprio per l'analisi di contratti, le domande e risposte sui codebase e il lavoro su più documenti: confronta il costo dell'upgrade con il tempo di sviluppo che stai impiegando per ridurre il contenuto.
Se chiami tramite Kunavo
Il catalogo di Kunavo comprende livelli di contesto diversi, inclusi i modelli della famiglia Claude 5 con finestra da 1M, accessibili tramite un'unica chiave; pertanto, portare un carico di lavoro da una finestra di 200K a una di 1M richiede solo modificare la stringa del modello, e ogni pagina del modello indica la relativa finestra accanto al prezzo per token, così puoi valutare il compromesso.
Domande frequenti
max_tokens viene conteggiato nella finestra di contesto?
Sì: la finestra limita input più output generato. Un modello con finestra da 200K e un prompt da 195K non può rispettare max_tokens: 8000. Calcola lo spazio rimanente e limita max_tokens di conseguenza.
Il prompt caching risolve il superamento del contesto?
No: il caching riduce il COSTO dei prompt lunghi ripetuti, non la loro dimensione. Il conteggio dei token rispetto alla finestra è identico, indipendentemente dal fatto che il prompt sia memorizzato nella cache.
Guide correlate
- Guida all'implementazione RAG — generazione aumentata dal recupero in produzione con Claude e Gemini
Ulteriori dettagli sul significato degli errori sono disponibili in riferimento agli errori; ottenere una chiave richiede un minuto tramite registrazione e la guida all’autenticazione.