Simple Science

La science de pointe expliquée simplement

# Informatique# Calcul et langage# Apprentissage automatique

AttentionStore : Transformer les conversations multi-tours

AttentionStore améliore l'efficacité des conversations avec les modèles de langue en réutilisant des caches passés.

― 8 min lire


AttentionStore optimiseAttentionStore optimiseles conversations LLM.coûts dans les modèles de langue.Améliorer l'efficacité et réduire les
Table des matières

Les grands modèles de langage (LLMs) sont devenus un outil important pour les conversations interactives avec les humains. Ces modèles peuvent gérer plusieurs tours de conversation, ce qui rend l'expérience plus engageante. Cependant, les systèmes actuellement utilisés pour gérer ces conversations ne sont pas très efficaces. Ils doivent sans cesse traiter et calculer des informations à partir de jetons passés, ce qui augmente les coûts et ralentit les performances.

Pour résoudre ces problèmes, une nouvelle approche appelée AttentionStore est introduite. Cette méthode innovante permet la réutilisation des Caches clé-valeur passés à travers différents tours de la conversation. En faisant cela, AttentionStore réduit le besoin de calculs répétés, économisant ainsi du temps et des ressources.

Le Problème des Conversations Multi-tours

Les conversations multi-tours sont essentielles pour que les LLMs comprennent mieux le contexte et l'intention de l'utilisateur. Environ 73 % des conversations impliquent plusieurs tours, ce qui souligne l'importance de cette fonctionnalité. Cependant, les systèmes existants jettent les caches passés quand une conversation est inactive. Cela signifie que lorsque la conversation reprend, le système doit tout recalculer, ce qui est inefficace et coûteux.

Les calculs répétitifs pour mettre en cache les paires clé-valeur entraînent un surcoût important, surtout à mesure que le nombre de tours de conversation augmente. C'est une perte de précieuses ressources informatiques et cela entraîne des délais dans les temps de réponse.

La Solution : AttentionStore

La méthode AttentionStore s'attaque aux inefficacités liées aux conversations multi-tours. Plutôt que de jeter les caches clé-valeur, elle les sauvegarde dans un système de mise en cache dédié. Lorsque la même session de conversation reprend, ces caches peuvent être rapidement accessibles et réutilisés, ce qui élimine le besoin de calculs répétitifs.

Caractéristiques Clés d'AttentionStore

  1. Système de Mise en Cache Hiérarchique : AttentionStore organise ses caches de manière hiérarchique, utilisant différents types de stockage pour économiser de l'espace et améliorer les vitesses d'accès.

  2. Préchargement par Couches : Pour minimiser les temps d'accès lents, AttentionStore charge les caches clé-valeur couche par couche pendant que les calculs sont en cours. Cela aide à chevaucher le temps passé sur le chargement et le calcul.

  3. Sauvegarde Asynchrone : AttentionStore permet aux sauvegardes des caches clé-valeur de se faire en même temps que les calculs en cours. Cela évite les délais causés par l'attente de la sauvegarde des caches avant de passer à d'autres tâches.

  4. Gestion Sensible au Planificateur : Le système utilise des informations provenant du planificateur de tâches pour déterminer quels caches clé-valeur sont susceptibles d'être nécessaires bientôt, améliorant ainsi l'efficacité dans la récupération et l'éviction des caches.

  5. Découplage de l'Encodage Positionnel : Pour maintenir la validité des caches clé-valeur sauvegardés, l'encodage positionnel est séparé des caches. Cela permet des mises à jour et modifications faciles au fur et à mesure que le contexte de la conversation change.

Améliorations de l'Efficacité

Les expériences montrent qu'AttentionStore peut significativement améliorer le Temps jusqu'au premier jeton (TTFT), qui est le temps pris par le modèle pour commencer à produire une sortie après avoir reçu une entrée. Dans divers tests, le TTFT a été réduit jusqu'à 87 %, tandis que le débit pour le pré-remplissage des entrées s'est amélioré jusqu'à 7,8 fois.

Pour des séquences plus longues, les avantages sont encore plus prononcés. Le TTFT a été réduit jusqu'à 95 %, et le débit de pré-remplissage s'est amélioré de 22 fois. Cela montre le potentiel des mécanismes d'attention pour optimiser le traitement dans des tâches complexes.

Réduction des Coûts

L'aspect financier de l'utilisation des LLMs est crucial, surtout qu'ils nécessitent généralement de nombreux GPU pour fonctionner. Dans les expériences utilisant AttentionStore, le Coût d'inférence global a été réduit jusqu'à 70 %. C'est une économie significative qui peut conduire à une adoption plus large de ces technologies dans diverses applications.

Défis dans la Mise en Œuvre d'AttentionStore

Bien qu'AttentionStore offre de nombreux avantages, il y a des défis à concevoir un système de mise en cache efficace :

  1. Surcharge d'Accès : Le transfert de données entre la mémoire haute vitesse et le stockage plus lent peut créer des goulets d'étranglement. AttentionStore s'efforce d'atténuer cela en veillant à ce que les caches soient facilement accessibles.

  2. Espace de Stockage : Les caches clé-valeur peuvent rapidement consommer de grandes quantités de stockage. Pour éviter d'épuiser la mémoire limitée, AttentionStore répartit les caches sur plusieurs types de stockage, y compris des options plus lentes mais plus spacieuses comme les disques.

  3. Gestion des Caches : Étant donné que les demandes de conversation peuvent arriver de manière inattendue, il est essentiel qu'AttentionStore gère efficacement le placement des caches pour assurer un accès rapide.

  4. Limitations de Contexte : À mesure que les conversations s'allongent, elles peuvent dépasser la fenêtre de contexte maximale des LLMs. AttentionStore a développé des méthodes pour gérer cela en gérant et en tronquant efficacement les jetons historiques.

Vue Technique

Architecture Transformer

La fondation de nombreux LLMs modernes est l'architecture transformer. Ce design permet au modèle de traiter les jetons d'entrée et de générer des réponses en fonction du contexte antérieur. Dans cette configuration, les caches clé-valeur sont cruciaux pour conserver les informations des jetons passés pour aider à générer de nouveaux jetons.

Chaque fois qu'un nouveau jeton est généré, des paires clé-valeur sont créées et stockées en mémoire. Cependant, lorsque le nombre de tours de conversation augmente, le besoin de recalculer ces caches entraîne des surcoûts et des inefficacités qu'AttentionStore vise à résoudre.

Inférence Générative

Lorsqu'un utilisateur saisit une invite, le modèle passe par deux phases principales : le pré-remplissage et le décodage.

  1. Phase de Pré-remplissage : Cette phase prépare les caches clé-valeur en fonction de l'entrée utilisateur, générant rapidement les données nécessaires. Le temps pris dans cette phase est étroitement lié à la longueur de l'entrée.

  2. Phase de Décodage : Cette phase traite un jeton à la fois, ce qui rend le processus plus lent. La dépendance aux jetons précédents peut créer des délais, surtout dans des interactions plus longues.

Résultats Expérimentaux

Taux de Réussite des Caches

Dans de nombreuses expériences, AttentionStore a atteint des taux de réussite élevés pour divers modèles. Par exemple, il a maintenu des taux de réussite d'environ 86 % pour LLaMA-13B et 90 % pour Falcon-40B. Ces taux indiquent que la plupart des accès aux caches ont été réussis et n'ont pas nécessité de calculs supplémentaires.

Temps jusqu'au Premier Jeton

Un des indicateurs clés de performance est le temps nécessaire pour produire le premier jeton après avoir reçu une entrée. AttentionStore a significativement réduit ce temps dans plusieurs modèles par rapport aux méthodes traditionnelles. Les résultats ont montré des améliorations pour LLaMA-13B, LLaMA-65B et d'autres.

Débit de Pré-remplissage

Le débit mesure la rapidité avec laquelle le modèle traite les entrées. AttentionStore a montré des performances remarquables dans ce domaine, affichant des améliorations de vitesse significatives grâce à une réduction des calculs lors des phases de pré-remplissage.

Coût d'Inférence

L'utilisation d'AttentionStore a entraîné des économies pour le système global, réduisant drastiquement le besoin en temps GPU et en ressources. Cela est particulièrement pertinent pour les applications nécessitant des performances en temps réel.

Conclusion

En résumé, AttentionStore offre une approche prometteuse pour améliorer l'efficacité et la rentabilité des conversations multi-tours dans les grands modèles de langage. En réutilisant les caches clé-valeur et en mettant en œuvre des techniques innovantes pour la gestion des caches, il parvient à optimiser significativement les performances. Les avancées présentées par AttentionStore ouvrent la voie à des mises en œuvre plus évolutives et rentables des LLMs dans divers secteurs et applications. Le potentiel de gérer des séquences plus longues et des conversations complexes ouvre de nouvelles opportunités pour des interactions plus riches entre humains et machines.

Source originale

Titre: Cost-Efficient Large Language Model Serving for Multi-turn Conversations with CachedAttention

Résumé: Interacting with humans through multi-turn conversations is a fundamental feature of large language models (LLMs). However, existing LLM serving engines executing multi-turn conversations are inefficient due to the need to repeatedly compute the key-value (KV) caches of historical tokens, incurring high serving costs. To address the problem, this paper proposes CachedAttention, a new attention mechanism that enables reuse of KV caches across multi-turn conversations, significantly reducing the repetitive computation overheads. CachedAttention maintains a hierarchical KV caching system that leverages cost-effective memory/storage mediums to save KV caches for all requests. To reduce KV cache access overheads from slow mediums, CachedAttention employs layer-wise pre-loading and asynchronous saving schemes to overlap the KV cache access with the GPU computation. To ensure that the KV caches to be accessed are placed in the fastest hierarchy, CachedAttention employs scheduler-aware fetching and eviction schemes to consciously place the KV caches in different layers based on the hints from the inference job scheduler. To avoid the invalidation of the saved KV caches incurred by context window overflow, CachedAttention enables the saved KV caches to remain valid via decoupling the positional encoding and effectively truncating the KV caches. Extensive experimental results demonstrate that CachedAttention significantly decreases the time to the first token (TTFT) by up to 87%, improves the prompt prefilling throughput by up to 7.8$\times$ for multi-turn conversations, and reduces the end-to-end inference cost by up to 70%.

Auteurs: Bin Gao, Zhuomin He, Puru Sharma, Qingxuan Kang, Djordje Jevdjic, Junbo Deng, Xingkun Yang, Zhou Yu, Pengfei Zuo

Dernière mise à jour: 2024-06-30 00:00:00

Langue: English

Source URL: https://arxiv.org/abs/2403.19708

Source PDF: https://arxiv.org/pdf/2403.19708

Licence: https://creativecommons.org/licenses/by/4.0/

Changements: Ce résumé a été créé avec l'aide de l'IA et peut contenir des inexactitudes. Pour obtenir des informations précises, veuillez vous référer aux documents sources originaux dont les liens figurent ici.

Merci à arxiv pour l'utilisation de son interopérabilité en libre accès.

Plus d'auteurs

Articles similaires