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 quel rôle elle joue 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 le domaine de l'IA générative pour réduire considérablement les coûts et améliorer les temps de réponse lors de l'inférence. Dans le domaine des grands modèles de langage (LLMs), le traitement du texte nécessite de convertir les 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 entre de nombreuses requêtes utilisateur différentes. Au lieu de retraiter ces sections inchangées à 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'ignorer les calculs redondants et de concentrer la puissance de calcul uniquement sur les nouvelles parties dynamiques du prompt de l'utilisateur.
Mé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 séquentiellement. En identifiant le préfixe répétitif d'un prompt, le système peut charger directement depuis une mémoire haute vitesse les états correspondants du mécanisme d'attention.
- Latence réduite : La mise en cache réduit considérablement la latence d'inférence, en particulier le temps jusqu'au premier token (TTFT). Les applications en temps réel, comme les chatbots interactifs, semblent ainsi instantanées pour l'utilisateur.
- Efficacité des coûts : Comme les fournisseurs de cloud computing facturent souvent en fonction de la durée de calcul ou du traitement des tokens, éviter les opérations lourdes liées au contexte statique permet de réaliser des économies substantielles.
- Débit accru : En libérant des ressources GPU, les serveurs peuvent traiter un plus grand volume de requêtes simultanées, ce qui rend l'ensemble de l'infrastructure de mise à disposition des modèles plus évolutive.
Applications concrètes#
La mise en cache des prompts transforme les secteurs qui dépendent de contextes de données volumineux.
-
Assistants de programmation : Dans le développement logiciel, des outils comme GitHub Copilot utilisent de grandes quantités de contexte provenant des fichiers ouverts par l'utilisateur et de la structure de son dépôt. En mettant en cache les représentations vectorielles de la base de code, le modèle peut fournir des suggestions de complétion de code en temps réel sans réanalyser la structure complète des fichiers du projet à chaque frappe.
-
Analyse juridique et médicale : Les professionnels interrogent souvent des agents d'IA sur d'immenses documents statiques, comme des archives de jurisprudence ou des dossiers médicaux de patients. Grâce à la génération augmentée par récupération (RAG), le système récupère les 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, ce qui fluidifie le processus de réponse aux questions.
Pertinence en vision par ordinateur#
Bien qu'elle soit traditionnellement associée au texte, la mise en cache est essentielle en vision par ordinateur (CV) multimodale. Des modèles comme YOLO-World permettent aux utilisateurs de détecter des objets à l'aide de prompts textuels à vocabulaire ouvert. Lorsqu'un utilisateur définit une liste de classes (par exemple, « personne, sac à dos, voiture »), le modèle calcule les représentations vectorielles textuelles de ces classes. La mise en cache de ces représentations évite au modèle de devoir réencoder les prompts textuels pour chaque image vidéo, ce qui permet une inférence en temps réel à haute vitesse.
Distinction entre les termes associés#
- Par rapport à l'ingénierie des prompts : L'ingénierie des prompts implique l'effort humain nécessaire pour concevoir l'entrée textuelle optimale afin de guider le modèle. La mise en cache des prompts est une optimisation de calcul côté backend qui stocke le traitement de ce texte effectué par la machine.
- Par rapport au réglage des prompts : Le réglage des prompts est une technique d'apprentissage par transfert qui met à jour certains poids du modèle (prompts souples) afin d'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 lors de l'exécution.
Exemple de code : mise en cache de représentations vectorielles textuelles en vision#
L'extrait Python suivant illustre le concept de « mise en cache » d'un prompt dans un contexte de vision à l'aide du package ultralytics. En définissant les classes une seule fois dans un modèle YOLO-World, les représentations vectorielles textuelles sont calculées et stockées (conservées), ce qui permet au modèle d'effectuer efficacement des prédictions 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 les jeux de données et déployer ces modèles optimisés, l'Ultralytics Platform fournit un environnement complet pour annoter les données, entraîner des modèles de pointe comme YOLO26 et surveiller les performances du déploiement sur divers appareils d'IA en périphérie.









