Lance Martin, developer advocate presso Anthropic, presenta il meccanismo di prompt caching per l'API Claude e annuncia la nuova funzionalità di auto-caching che ne semplifica notevolmente l'uso. I token che utilizzano la cache costano solo il 10% del prezzo normale, il che rappresenta un risparmio critico per le applicazioni agentiche.

Il problema fondamentale è che l'API messages di Claude è stateless: non conserva nulla tra una chiamata e l'altra. Un agente che esegue azioni in loop deve reimpacchettare, a ogni turno, il nuovo contesto insieme allo storico delle azioni, alle descrizioni degli strumenti e alle istruzioni generali. Senza caching, si paga il prezzo pieno dell'intera finestra di contesto a ogni turno, anche se la maggior parte del contenuto è identica.

Il prompt caching risolve questo problema sfruttando le due fasi dell'inferenza LLM: prefill (elaborazione del prompt) e decode (generazione). Il calcolo del prefill può essere eseguito una sola volta, salvato, e poi riutilizzato se parte del prompt futuro è identica. È ciò che fanno framework come vLLM e SGLang.

Dal punto di vista tecnico, il caching utilizza un parametro cache_control che funge da breakpoint. Questo breakpoint crea un hash crittografico di tutti i blocchi di contenuto fino a quel punto, con ambito limitato al workspace dell'utente. Nelle richieste successive, Claude guarda all'indietro (fino a 20 blocchi) per trovare una corrispondenza. La corrispondenza deve essere esatta: un solo carattere di differenza produce un hash diverso e un cache miss.

La novità principale è l'auto-caching: un singolo parametro cache_control: {"type": "ephemeral"} posizionato a livello di richiesta (anziché a livello di ogni blocco) fa sì che il breakpoint si sposti automaticamente all'ultimo blocco cacheable. Man mano che la conversazione si allunga, il breakpoint segue automaticamente. Questa funzionalità resta compatibile con il caching blocco per blocco per i casi in cui si vogliono impostare breakpoint specifici (ad esempio sul system prompt).

Martin cita @peakji di Manus, che considera il cache hit rate "la singola metrica più importante per un agente IA in produzione", e rimanda al post complementare di @trq212, che dettaglia le lezioni pratiche tratte da Claude Code: come strutturare il prompt per massimizzare gli hit, perché non si dovrebbe mai cambiare strumenti o modello a metà sessione, e come progettare funzionalità (plan mode, compaction) rispettando i vincoli della cache. Insieme, i due articoli costituiscono una guida completa alla costruzione di agenti ottimizzati per la cache sull'API Claude.