Le definizioni degli strumenti e i blocchi tool_result accumulati consumano la tua "context window" (finestra di contesto). Gli agenti a lunga esecuzione con molti strumenti o molti turni possono esaurire il contesto disponibile prima che l'attività sia completata. Quattro approcci affrontano questo problema in punti diversi della pipeline.
Ogni approccio agisce su una diversa fonte di pressione sul contesto. Scegli quello che corrisponde a dove vengono consumati i tuoi token.
| Approccio | Cosa riduce | Quando è adatto | Per saperne di più |
|---|---|---|---|
| Ricerca degli strumenti | Definizioni degli strumenti caricate in anticipo | Set di strumenti ampi (20+ strumenti) in cui la maggior parte degli strumenti non è necessaria a ogni turno | Strumento di ricerca degli strumenti |
| Chiamata programmatica degli strumenti | Roundtrip di tool_result | Catene di chiamate a strumenti che possono essere eseguite come un singolo script | Chiamata programmatica degli strumenti |
| Cache dei prompt | Costo in token delle definizioni degli strumenti ripetute | Set di strumenti stabili su molte richieste | Uso degli strumenti con cache dei prompt |
| Modifica del contesto | Vecchi blocchi tool_result nella cronologia | Conversazioni lunghe in cui i risultati iniziali non sono più rilevanti | Modifica del contesto |
La ricerca degli strumenti mantiene le definizioni degli strumenti fuori dalla finestra di contesto finché Claude non le richiede. Invece di inviare 50 schemi di strumenti in anticipo, invii un singolo strumento tool_search e lasci che Claude scopra il resto su richiesta. Questo scambia una piccola quantità di "latency" (latenza) — un turno aggiuntivo per cercare uno strumento — con una grande riduzione dell'utilizzo di base del contesto.
La chiamata programmatica degli strumenti comprime una sequenza di chiamate a strumenti in un singolo blocco di codice che Claude scrive e che la sandbox di esecuzione del codice di Anthropic esegue. Invece di cinque roundtrip di tool_use e tool_result, Claude emette un unico script che chiama tutte e cinque le funzioni dall'interno della sandbox. I risultati intermedi non entrano mai nella cronologia della conversazione.
La cache dei prompt non riduce il numero di token nel contesto, ma riduce quanto paghi per essi nelle richieste successive. Se le tue definizioni degli strumenti sono stabili, memorizzale nella cache una volta e riutilizza il prefisso memorizzato su migliaia di richieste. Questa è la scelta giusta quando il set di strumenti è ampio ma fisso.
La modifica del contesto rimuove i vecchi blocchi tool_result dalla cronologia della conversazione una volta che hanno esaurito il loro scopo. Un lungo ciclo di agente potrebbe produrre centinaia di risultati intermedi che erano utili al momento ma che ora sono peso morto. La modifica del contesto ti consente di eliminarli senza riavviare la conversazione.
Questi approcci sono componibili. Un agente a lunga esecuzione potrebbe usare la ricerca degli strumenti per mantenere snello il set di strumenti, la cache dei prompt per ammortizzare il costo delle definizioni rimanenti e la modifica del contesto per eliminare i risultati obsoleti man mano che la conversazione cresce. Ognuno risolve una parte diversa del problema, quindi non c'è conflitto nell'usarli insieme.
Un punto di partenza ragionevole per un agente ad alto volume:
Carica le definizioni degli strumenti su richiesta invece che in anticipo.
Comprimi le catene di chiamate a strumenti in un singolo script eseguibile.
Memorizza nella cache le definizioni degli strumenti tra le richieste per ridurre i costi in token.
Elimina i risultati obsoleti degli strumenti dalle conversazioni a lunga esecuzione.
Was this page helpful?