Prompt Caching
Découvre comment la mise en cache des prompts optimise l'IA générative en réduisant la latence et les coûts. Apprends son rôle dans les LLM et la vision par ordinateur en temps réel avec Ultralytics YOLO26.
La mise en cache des prompts est une stratégie d'optimisation avancée utilisée principalement dans l'IA générative pour réduire considérablement les coûts et améliorer les temps de réponse pendant l'inférence. Dans le domaine des grands modèles de langage (LLM), le traitement du texte nécessite la conversion des entrées en séquences numériques appelées tokens. Souvent, une grande partie des données d'entrée — comme une instruction système détaillée, un long document juridique ou une base de code — reste statique à travers de nombreuses requêtes d'utilisateurs différentes. Au lieu de retraiter ces sections immuables pour chaque nouvelle requête, la mise en cache des prompts stocke en mémoire les états mathématiques précalculés (souvent appelés cache Key-Value). Cela permet au moteur d'inférence d'éviter les calculs redondants, en concentrant la puissance de calcul uniquement sur les parties nouvelles et dynamiques du prompt de l'utilisateur.
Link to this sectionMécanismes et avantages#
Les mécanismes fondamentaux de la mise en cache des prompts reposent sur l'architecture des Transformers, qui traitent les données de manière séquentielle. En identifiant le préfixe répétitif d'un prompt, le système peut charger directement les états correspondants du mécanisme d'attention depuis la mémoire haute vitesse.
- Latence réduite : La mise en cache diminue radicalement la latence d'inférence, en particulier le temps nécessaire au premier token (TTFT). Cela garantit que les applications en temps réel, telles que les chatbots interactifs, semblent instantanées pour l'utilisateur.
- Efficacité des coûts : Étant donné que les fournisseurs de Cloud Computing facturent souvent en fonction de la durée de calcul ou du traitement des tokens, éviter le travail intensif sur le contexte statique permet de réaliser des économies substantielles.
- Débit accru : En libérant des ressources GPU, les serveurs peuvent gérer un volume plus élevé de requêtes simultanées, rendant l'infrastructure globale de service de modèles plus évolutive.
Link to this sectionApplications concrètes#
La mise en cache des prompts transforme les secteurs qui dépendent d'un contexte de données important.
-
Assistants de codage : Dans le développement logiciel, des outils comme GitHub Copilot utilisent de vastes quantités de contexte provenant des fichiers ouverts de l'utilisateur et de la structure du dépôt. En mettant en cache les embeddings de la base de code, le modèle peut fournir des suggestions de complétion de code en temps réel sans avoir à réanalyser l'intégralité de la structure des fichiers du projet à chaque frappe.
-
Analyse juridique et médicale : Les professionnels interrogent souvent des agents IA sur des documents statiques massifs, tels que des archives de jurisprudence ou des dossiers d'antécédents médicaux. En utilisant la génération augmentée par récupération (RAG), le système récupère des extraits de texte pertinents. La mise en cache des prompts garantit que le contexte fondamental de ces documents récupérés n'a pas besoin d'être recalculé pour les questions de suivi, rationalisant ainsi le flux de travail de questions-réponses.
Link to this sectionPertinence en vision par ordinateur#
Bien qu'elle soit traditionnellement associée au texte, le concept de mise en cache est essentiel dans la vision par ordinateur (CV) multimodale. Des modèles comme YOLO-World permettent aux utilisateurs de détecter des objets en utilisant des prompts textuels à vocabulaire ouvert. Lorsqu'un utilisateur définit une liste de classes (par ex. "personne, sac à dos, voiture"), le modèle calcule des embeddings de texte pour ces classes. La mise en cache de ces embeddings évite au modèle de devoir réencoder les prompts textuels pour chaque image vidéo, permettant une inférence en temps réel à haute vitesse.
Link to this sectionDistinguer les termes associés#
- Vs. Ingénierie de prompt : L'ingénierie de prompt implique l'effort humain de concevoir l'entrée textuelle optimale pour guider le modèle. La mise en cache des prompts est une optimisation computationnelle back-end qui stocke le traitement de ce texte par la machine.
- Vs. Réglage de prompt : Le réglage de prompt est une technique de transfert d'apprentissage qui met à jour des poids de modèle spécifiques (soft prompts) pour adapter un modèle à une tâche. La mise en cache ne modifie pas les paramètres du modèle ; elle mémorise uniquement les états d'activation pendant l'exécution.
Link to this sectionExemple de code : mise en cache d'embeddings de texte en vision#
Le snippet Python suivant illustre le concept de « mise en cache » d'un prompt dans un contexte de vision en utilisant le package ultralytics. En définissant les classes une seule fois dans un modèle YOLO-World, les embeddings de texte sont calculés et stockés (persistance), permettant au modèle d'effectuer des prédictions efficacement sur plusieurs images sans retraiter la description textuelle.
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")Pour gérer des jeux de données et déployer ces modèles optimisés, la plateforme Ultralytics offre un environnement complet pour annoter les données, entraîner des modèles de pointe comme YOLO26 et surveiller les performances de déploiement sur divers appareils d'Edge AI.






