Un contesto più lungo generalmente riduce il throughput degli LLM locali aumentando il calcolo di prefill, la memoria della cache KV, il lavoro di decodifica e la contesa per la capacità delle sequenze concorrenti.
L'effetto non segue un'unica curva universale di token al secondo. La lunghezza del prompt amplia principalmente la fase di prefill, mentre il contesto attivo crescente fa sì che le fasi successive di decodifica eseguano l'attenzione su un numero maggiore di chiavi e valori memorizzati nella cache. Se la memoria si esaurisce, il server può accettare meno richieste, sospendere sequenze, trasferire la cache o rifiutare il lavoro, quindi il throughput dipende dal modello, dal kernel di attenzione, dall'hardware, dallo scheduler e dalla combinazione dei carichi di lavoro.
La lunghezza del prompt aumenta il lavoro di prefill prima del primo token
Durante il prefill, il modello elabora tutti i token del prompt per creare gli stati nascosti e la cache iniziale di chiavi e valori. Il lavoro dell'attenzione standard cresce rapidamente con la lunghezza della sequenza, anche se i kernel ottimizzati riducono il traffico di memoria e i fattori costanti senza rendere gratuita l'elaborazione dell'input.
L'articolo sull'attenzione consapevole dell'I/O introduce un algoritmo di attenzione esatta consapevole dell'I/O che riduce i trasferimenti tra i livelli di memoria della GPU. I suoi miglioramenti prestazionali mostrano perché la scelta del kernel modifica la curva, mentre il contesto sottostante richiede comunque calcolo e movimento dei dati in memoria.
Un server che comunica soltanto i token al secondo in decodifica può nascondere questo costo. Per RAG e conversazioni lunghe, il tempo al primo token e i prompt elaborati al secondo sono metriche necessarie insieme al throughput dell'output. Questa distinzione rimane visibile durante i successivi test domestici.
La cache KV cresce con ogni token di contesto attivo
La decodifica autoregressiva memorizza le chiavi e i valori dei token precedenti, così non devono essere ricalcolati. La memoria della cache scala in base alla lunghezza della sequenza attiva, al numero di livelli, alle dimensioni, alla precisione e al numero di sequenze concorrenti; contesti più lunghi riducono quindi il numero di richieste che possono essere gestite contemporaneamente.
PagedAttention di vLLM presenta PagedAttention per ridurre la frammentazione della cache KV e consentire una condivisione flessibile. Una migliore allocazione aumenta la capacità utilizzabile, ma non elimina i byte richiesti dal contesto conservato. Il risultato intermedio deve rimanere ispezionabile prima che l'automazione proceda.
Quando la capacità si esaurisce, i sistemi possono accodare le nuove richieste, espellere o ricalcolare la cache, trasferirla nella memoria dell'host oppure ridurre il batch. Questi criteri possono trasformare un benchmark fluido per un singolo utente in un goodput instabile per più utenti. Questo limite dovrebbe essere misurato separatamente in condizioni operative realistiche.
Le fasi di decodifica leggono una quantità maggiore di cronologia quando il contesto cresce
Ogni token generato interroga la cache accumulata, quindi le letture dalla memoria e il lavoro di attenzione aumentano con la lunghezza della sequenza. Il modello può rimanere limitato dalla larghezza di banda della memoria, mentre la compressione del contesto o la quantizzazione della cache scambiano il risparmio di memoria con l'accuratezza e il supporto del kernel.
Il lavoro sulla quantizzazione della cache KV quantizza la cache KV per consentire contesti molto più lunghi e identifica esplicitamente la capacità della cache come un collo di bottiglia per i contesti lunghi. Questo dimostra che il contesto massimo dichiarato e il throughput sostenuto efficiente sono proprietà diverse. La conseguenza pratica emerge quando diverse fonti competono per una capacità di contesto limitata.
Il limite di funzionamento consiste nel confrontare due contesti modificando contemporaneamente la composizione del prompt, la lunghezza dell'output, la concorrenza o la precisione della cache. La qualità del recupero può migliorare con l'aggiunta di contenuti, anche mentre il throughput del sistema diminuisce; perciò le prestazioni e l'utilità della risposta devono essere valutate su assi separati.
Misura il throughput tra intervalli di lunghezza del prompt
Crea intervalli di prompt fissi, ad esempio di 512, 2.048, 8.192 e 16.384 token, con lunghezze dell'output controllate. Esegui ogni test con un utente e poi con una concorrenza crescente, registrando i token del prompt al secondo, i token dell'output al secondo, il tempo al primo token, la latenza tra i token, l'utilizzo della cache, il tempo in coda, le sospensioni e gli errori.
Confronta la curva con il rallentamento delle conversazioni lunghe descritto nel rallentamento della finestra di contesto. Mantieni costanti modello, quantizzazione, campionamento, scheduler e hardware, quindi ripeti l'esperimento con il caching del prefisso o la quantizzazione della cache come uniche variabili, in test separati. Questa dipendenza dovrebbe rimanere esplicita nell'interfaccia finale.
Stabilisci un budget operativo per il contesto a partire dal goodput rispetto all'obiettivo di latenza richiesto, non dalla lunghezza massima accettata dal modello. Recupera o riassumi i contenuti soltanto quando il conseguente miglioramento della qualità giustifica il costo misurato di prefill e cache.
Hub Tecnologico e AI
Altro da leggere

Un LLM locale può riprendere la generazione dopo il riavvio del processo?
Una spiegazione della ripresa della generazione degli LLM incentrata sui meccanismi, dei compromessi relativi alle risorse condivise, tre domande frequenti sul fan-out delle query...

Un server domestico può eseguire embedding e transcodifica video sulla stessa GPU integrata?
Una spiegazione basata innanzitutto sui meccanismi degli embedding condivisi della iGPU e della transcodifica, dei compromessi legati alle risorse condivise, tre domande frequenti sul...

In che modo la durata del token di accesso influisce sulla sicurezza e sulle difficoltà per le famiglie?
Una spiegazione della durata dei token di accesso basata prima di tutto sul meccanismo, dei compromessi legati alle risorse condivise, di tre domande frequenti...

