Le definizioni degli strumenti e i blocchi tool_result accumulati consumano la tua 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 diversi punti della pipeline.
Ogni approccio affronta una diversa fonte di pressione sul contesto. Scegli quello che corrisponde a dove stanno andando i tuoi token.
| Approccio | Cosa riduce | Quando si adatta | Scopri di più |
|---|---|---|---|
| Ricerca degli strumenti | Definizioni degli strumenti caricate in anticipo | Set di strumenti grandi (20+ strumenti) dove la maggior parte degli strumenti non è necessaria ogni turno | Strumento di ricerca degli strumenti |
| Chiamate programmatiche degli strumenti | Roundtrip tool_result | Catene di chiamate di strumenti che possono essere eseguite come un singolo script | Chiamate programmatiche degli strumenti |
| Caching dei prompt | Costo dei token delle definizioni degli strumenti ripetute | Set di strumenti stabili su molte richieste | Utilizzo degli strumenti con caching dei prompt |
| Modifica del contesto | Vecchi blocchi tool_result nella cronologia | Conversazioni lunghe dove 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 latenza (un turno extra per cercare uno strumento) per una grande riduzione nell'utilizzo del contesto di base.
Le chiamate programmatiche degli strumenti collassano una sequenza di chiamate di strumenti in un singolo blocco di codice che Claude scrive e la sandbox di esecuzione del codice di Anthropic esegue. Invece di cinque roundtrip di tool_use e tool_result, Claude emette uno script che chiama tutte e cinque le funzioni dall'interno della sandbox. I risultati intermedi non entrano mai nella cronologia della conversazione.
Il caching dei prompt non riduce il numero di token nel contesto, ma riduce quello che paghi per loro nelle richieste successive. Se le definizioni dei tuoi strumenti sono stabili, memorizzale nella cache una volta e riutilizza il prefisso memorizzato nella cache su migliaia di richieste. Questa è la scelta giusta quando il set di strumenti è grande ma fisso.
La modifica del contesto rimuove i vecchi blocchi tool_result dalla cronologia della conversazione una volta che hanno assolto il loro scopo. Un lungo ciclo di agenti potrebbe produrre centinaia di risultati intermedi che erano utili al momento ma ora sono peso morto. La modifica del contesto ti permette di potarli senza riavviare la conversazione.
Questi approcci si compongono. Un agente a lunga esecuzione potrebbe utilizzare la ricerca degli strumenti per mantenere il set di strumenti snello, il caching dei prompt per ammortizzare il costo delle definizioni rimanenti e la modifica del contesto per potare 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.
Collassa le catene di chiamate di strumenti in un singolo script eseguibile.
Memorizza nella cache le definizioni degli strumenti su più richieste per ridurre i costi dei token.
Pota i risultati degli strumenti obsoleti dalle conversazioni a lunga esecuzione.
Was this page helpful?