Prompt Caching
Scopri come il prompt caching ottimizza l’IA generativa riducendo latenza e costi. Scopri il suo ruolo negli LLM e nella computer vision in tempo reale con Ultralytics YOLO26.
Il caching dei prompt è una strategia di ottimizzazione avanzata utilizzata principalmente nell'ambito dell'IA generativa per ridurre significativamente i costi e migliorare i tempi di risposta durante l'inferenza. Nell'ambito dei modelli linguistici di grandi dimensioni (LLMs), l'elaborazione del testo richiede la conversione degli input in sequenze numeriche note come token. Spesso, gran parte dei dati di input, come un'istruzione di sistema dettagliata, un lungo documento legale o una base di codice, rimane invariata tra molte query utente diverse. Invece di rielaborare queste sezioni immutabili per ogni nuova richiesta, il caching dei prompt memorizza in memoria gli stati matematici precalcolati, spesso chiamati cache Key-Value. Ciò consente al motore di inferenza di saltare i calcoli ridondanti, concentrando la potenza di calcolo solo sulle parti nuove e dinamiche del prompt dell'utente.
Meccanismi e vantaggi#
I meccanismi fondamentali del caching dei prompt si basano sull'architettura dei Transformer, che elaborano i dati in sequenza. Identificando il prefisso ripetitivo di un prompt, il sistema può caricare gli stati corrispondenti del meccanismo di attenzione direttamente dalla memoria ad alta velocità.
- Latenza ridotta: il caching riduce drasticamente la latenza di inferenza, in particolare il Time to First Token (TTFT). Ciò fa sì che le applicazioni in tempo reale, come i chatbot interattivi, risultino istantanee per l'utente.
- Efficienza dei costi: poiché i provider di cloud computing fatturano spesso in base alla durata del calcolo o all'elaborazione dei token, evitare il lavoro pesante sul contesto statico comporta risparmi significativi.
- Maggiore throughput: liberando risorse GPU, i server possono gestire un volume maggiore di richieste simultanee, rendendo più scalabile l'intera infrastruttura di serving dei modelli.
Applicazioni nel mondo reale#
Il caching dei prompt sta trasformando i settori che si basano su contesti ricchi di dati.
-
Assistenti alla programmazione: nello sviluppo software, strumenti come GitHub Copilot utilizzano grandi quantità di contesto provenienti dai file aperti dell'utente e dalla struttura del repository. Memorizzando nella cache gli embedding della base di codice, il modello può fornire suggerimenti per il completamento del codice in tempo reale senza rianalizzare l'intera struttura dei file del progetto a ogni battuta.
-
Analisi legale e medica: i professionisti interrogano spesso gli agenti di IA su enormi documenti statici, come archivi di sentenze o cartelle cliniche dei pazienti. Utilizzando la generazione aumentata dal recupero (RAG), il sistema recupera i frammenti di testo pertinenti. Il caching dei prompt garantisce che il contesto fondamentale dei documenti recuperati non debba essere ricalcolato per le domande successive, semplificando il flusso di lavoro di risposta alle domande.
Rilevanza nella visione artificiale#
Sebbene sia tradizionalmente associato al testo, il concetto di caching è fondamentale nella visione artificiale (CV) multimodale. Modelli come YOLO-World consentono agli utenti di rilevare oggetti utilizzando prompt testuali a vocabolario aperto. Quando un utente definisce un elenco di classi, ad esempio "person, backpack, car", il modello calcola gli embedding testuali per queste classi. Memorizzare nella cache questi embedding evita che il modello debba ricodificare i prompt testuali per ogni singolo fotogramma video, abilitando l'inferenza in tempo reale ad alta velocità.
Distinguere i termini correlati#
- Rispetto al Prompt Engineering: il prompt engineering richiede l'intervento umano per progettare l'input testuale ottimale con cui guidare il modello. Il caching dei prompt è un'ottimizzazione computazionale di backend che memorizza l'elaborazione di quel testo da parte della macchina.
- Rispetto al Prompt Tuning: il prompt tuning è una tecnica di transfer learning che aggiorna specifici pesi del modello (prompt soft) per adattare un modello a un'attività. Il caching non modifica i parametri del modello; memorizza soltanto gli stati delle attivazioni durante l'esecuzione.
Esempio di codice: caching degli embedding testuali nella visione artificiale#
Il seguente frammento di Python illustra il concetto di "caching" di un prompt in un contesto di visione artificiale utilizzando il pacchetto ultralytics. Impostando una sola volta le classi in un modello YOLO-World, gli embedding testuali vengono calcolati e memorizzati (persistiti), consentendo al modello di eseguire previsioni in modo efficiente su più immagini senza rielaborare la descrizione testuale.
from ultralytics import YOLOWorld
# Load a YOLO-World model capable of open-vocabulary detection
model = YOLOWorld("yolov8s-world.pt")
# "Cache" the prompt: Define classes once.
# The model computes and stores text embeddings for these specific terms.
model.set_classes(["helmet", "reflective vest", "gloves"])
# Run inference repeatedly. The text prompt is not re-computed for each call.
# This mimics the efficiency gains of prompt caching in LLMs.
results_1 = model.predict("construction_site_1.jpg")
results_2 = model.predict("construction_site_2.jpg")Per gestire i dataset e distribuire questi modelli ottimizzati, la Ultralytics Platform offre un ambiente completo per annotare i dati, addestrare modelli all'avanguardia come YOLO26 e monitorare le prestazioni della distribuzione su vari dispositivi Edge AI.









