Yolo Vision Shenzhen
Shenzhen
Rejoindre maintenant
Glossaire

Mise en cache des prompts

Améliorez l'efficacité de l'IA grâce à la mise en cache des invites ! Découvrez comment réduire la latence, diminuer les coûts et faire évoluer les applications d'IA grâce à cette technique puissante.

La mise en cache des invites est une technique d'optimisation utilisée principalement avec les grands modèles de langage (LLM) pour accélérer le processus d'inférence. Elle consiste à stocker les résultats de calcul intermédiaires d'une partie initiale d'une invite. Lorsqu'une nouvelle invite partage le même début, appelé préfixe, le modèle peut réutiliser ces états mis en cache au lieu de les recalculer. Cette méthode réduit considérablement la latence et la charge de calcul nécessaire pour générer une réponse, ce qui la rend particulièrement efficace dans les applications impliquant l'IA conversationnelle ou les requêtes répétitives. En évitant les calculs redondants, la mise en cache rapide améliore le débit et réduit les coûts opérationnels.

Comment fonctionne la mise en cache des invites

Lorsqu'un LLM traite une séquence de texte, il calcule les états internes pour chaque jeton dans sa fenêtre contextuelle. Il s'agit d'une partie du processus coûteuse en calcul, en particulier pour les longues invites. L'idée centrale de la mise en cache des invites, souvent appelée mise en cache KV, est de sauvegarder ces états internes, en particulier les paires clé-valeur (KV) dans le mécanisme d'attention. Par exemple, si un modèle traite le préfixe "Traduire le texte anglais suivant en français :", il stocke l'état résultant. Lorsqu'il reçoit ultérieurement une invite complète telle que "Traduisez le texte anglais suivant en français : 'Hello, world!'", il peut charger l'état mis en cache pour la phrase initiale et commencer le calcul uniquement pour la nouvelle partie. Le processus de génération de texte est ainsi beaucoup plus rapide pour les demandes similaires ultérieures. Des systèmes tels que le projet open-source vLLM sont conçus pour gérer efficacement ce processus, améliorant ainsi le débit global du moteur d'inférence.

Applications concrètes

La mise en cache des invites est une optimisation cruciale pour de nombreux systèmes d'intelligence artificielle (IA) dans le monde réel, car elle améliore l'expérience de l'utilisateur en fournissant des réponses plus rapides.

  • Chatbots interactifs et assistants virtuels: Dans une conversation avec un chatbot, chaque tour s'appuie sur les échanges précédents. La mise en cache de l'historique de la conversation sous forme de préfixe permet au modèle de générer la réponse suivante sans retraiter l'ensemble du dialogue. Cela conduit à une interaction beaucoup plus fluide et réactive, ce qui est fondamental pour la performance des assistants virtuels modernes et améliore l'expérience de l'utilisateur dans des plateformes telles que Poe.
  • Génération et complétion de code: Les assistants de codage alimentés par l'IA, tels que GitHub Copilot, utilisent fréquemment la mise en cache. Le code existant dans un fichier sert de longue invite. En mettant en cache les états KV de ce code, le modèle peut rapidement générer des suggestions pour la ligne suivante ou compléter une fonction sans avoir à réanalyser l'ensemble du fichier à chaque fois qu'un caractère est tapé, ce qui permet une inférence en temps réel. Cette technique est un élément clé du fonctionnement des assistants de code d'IA.

Mise en cache des invites : comparaison avec les concepts connexes

Il est utile de distinguer la mise en cache rapide d'autres techniques liées à l'apprentissage machine (ML) :

  • Prompt Engineering: Se concentre sur la conception d'invites efficaces pour obtenir les réponses souhaitées de la part d'un modèle d'IA. La mise en cache optimise l'exécution de ces invites, quelle que soit la qualité de leur conception.
  • Enrichissement des messages: Il s'agit d'ajouter un contexte ou des informations de clarification à l'invite d'un utilisateur avant qu' elle ne soit envoyée au modèle. La mise en cache a lieu pendant le traitement par le modèle de l'invite (potentiellement enrichie).
  • Prompt Tuning (Tuning de l'invite) et LoRA: Il s'agit de méthodes de réglage fin efficace des paramètres (PEFT) qui adaptent le comportement d'un modèle en formant de petits ensembles de paramètres supplémentaires. La mise en cache est une optimisation du temps d'inférence qui ne modifie pas les poids du modèle lui-même.
  • Génération améliorée par récupération (RAG): Améliore les messages-guides en récupérant des informations pertinentes dans des bases de connaissances externes et en les ajoutant au contexte du message-guide. Alors que la RAG modifie l'entrée, la mise en cache peut toujours être appliquée au traitement de l'invite combinée.
  • Mise en cache de la sortie standard: la mise en cache traditionnelle sur le web, telle que gérée par un réseau de diffusion de contenu (CDN), stocke la sortie finale d'une requête. La mise en cache rapide stocke les états de calcul intermédiaires dans le pipeline de traitement du modèle, ce qui permet une réutilisation plus souple.

Bien que la mise en cache des invites soit principalement associée aux LLM, le principe sous-jacent de la mise en cache des calculs peut s'appliquer à des modèles multimodaux complexes dans lesquels les invites textuelles interagissent avec d'autres modalités. Cependant, il est moins courant dans les tâches standard de vision artificielle (CV) telles que la détection d'objets à l'aide de modèles tels que Ultralytics YOLO11. Les plateformes de déploiement de modèles sont celles où les optimisations telles que la mise en cache deviennent cruciales pour les performances dans les environnements de production, comme l'expliquent les ressources de fournisseurs tels qu'Anyscale et NVIDIA.

Rejoignez la communauté Ultralytics

Rejoignez le futur de l'IA. Connectez-vous, collaborez et évoluez avec des innovateurs mondiaux.

Rejoindre maintenant
Lien copié dans le presse-papiers