Prompt Caching
Scopri come il prompt caching ottimizza l'AI generativa riducendo latenza e costi. Scopri il suo ruolo negli LLM e nella computer vision in tempo reale con Ultralytics YOLO26.
Il prompt caching è una strategia di ottimizzazione avanzata utilizzata principalmente nella generative AI per ridurre significativamente i costi e migliorare i tempi di risposta durante l'inferenza. Nel regno dei Large Language Models (LLMs), l'elaborazione del testo richiede la conversione degli input in sequenze numeriche note come tokens. Spesso, gran parte dei dati di input, come un'istruzione di sistema dettagliata, un lungo documento legale o una codebase, rimane statica in molte diverse query degli utenti. Invece di rielaborare queste sezioni immutabili per ogni nuova richiesta, il prompt caching memorizza nella memoria gli stati matematici precalcolati (spesso chiamati Key-Value cache). Ciò consente all'inference engine di saltare calcoli ridondanti, concentrando la potenza di calcolo solo sulle parti nuove e dinamiche del prompt dell'utente.
Meccanismi e vantaggi#
La meccanica fondamentale del prompt caching si basa sull'architettura dei Transformers, che elaborano i dati in modo sequenziale. Identificando il prefisso ripetitivo di un prompt, il sistema può caricare i corrispondenti stati del attention mechanism direttamente dalla memoria ad alta velocità.
- Reduced Latency: La memorizzazione nella cache riduce drasticamente l'inference latency, in particolare il Time to First Token (TTFT). Ciò garantisce che le applicazioni in tempo reale, come gli chatbots interattivi, risultino istantanee per l'utente.
- Cost Efficiency: Poiché i provider di Cloud Computing fatturano spesso in base alla durata del calcolo o all'elaborazione dei token, saltare il lavoro pesante per il contesto statico porta a risparmi sostanziali.
- Increased Throughput: Liberando le risorse della GPU, i server possono gestire un volume maggiore di richieste concorrenti, rendendo l'intera infrastruttura di model serving più scalabile.
Applicazioni nel mondo reale#
Il prompt caching sta trasformando i settori che si basano su un ampio contesto di dati.
-
Coding Assistants: Nello sviluppo software, strumenti come GitHub Copilot utilizzano enormi quantità di contesto dai file aperti dell'utente e dalla struttura del repository. Memorizzando nella cache gli embeddings della codebase, il modello può fornire suggerimenti di completamento del codice in tempo reale senza rianalizzare l'intera struttura dei file di progetto a ogni pressione di tasto.
-
Legal and Medical Analysis: I professionisti interrogano spesso gli AI Agents su enormi documenti statici, come archivi di giurisprudenza o record della storia clinica dei pazienti. Utilizzando la Retrieval-Augmented Generation (RAG), il sistema recupera porzioni rilevanti di testo. Il prompt caching garantisce che il contesto fondamentale di questi documenti recuperati non debba essere ricalcolato per le domande di follow-up, snellendo il flusso di lavoro di Question Answering.
Rilevanza nella Computer Vision#
While traditionally associated with text, the concept of caching is vital in multi-modal Computer Vision (CV). Models like YOLO-World allow users to detect objects using open-vocabulary text prompts. When a user defines a list of classes (e.g., "person, backpack, car"), the model computes text embeddings for these classes. Caching these embeddings prevents the model from needing to re-encode the text prompts for every single video frame, enabling high-speed Real-Time Inference.
Distinguere termini correlati#
- Vs. Prompt Engineering: Il prompt engineering implica lo sforzo umano di progettare l'input di testo ottimale per guidare il modello. Il prompt caching è un'ottimizzazione computazionale di backend che memorizza l'elaborazione di quel testo da parte della macchina.
- Vs. Prompt Tuning: Il prompt tuning è una tecnica di Transfer Learning che aggiorna specifici Model Weights (soft prompt) per adattare un modello a un'attività. Il caching non modifica i parametri del modello; memorizza solo gli stati di attivazione durante il runtime.
Esempio di codice: memorizzazione degli embedding di testo nella visione#
The following Python snippet demonstrates the concept of "caching" a prompt in a vision context using the ultralytics package. By setting the classes once in a YOLO-World model, the text embeddings are computed and stored (persisted), allowing the model to efficiently predict on multiple images without re-processing the text description.
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 la gestione dei dataset e il deployment di questi modelli ottimizzati, la Ultralytics Platform fornisce un ambiente completo per annotare dati, addestrare modelli all'avanguardia come YOLO26 e monitorare le prestazioni di deployment su vari dispositivi di Edge AI.






