Simple Science

Ciência de ponta explicada de forma simples

# Informática# Computação e linguagem# Aprendizagem de máquinas

AttentionStore: Transformando Conversas de Várias Voltas

A AttentionStore melhora a eficiência nas conversas com modelos de linguagem reaproveitando caches passados.

― 7 min ler


AttentionStore OtimizaAttentionStore OtimizaConversas de LLMcustos em modelos de linguagem.Aumentando a eficiência e reduzindo
Índice

Modelos de linguagem grandes (LLMs) viraram uma ferramenta importante pra conversas interativas com humanos. Esses modelos conseguem lidar com várias rodadas de conversa, deixando a experiência mais envolvente. Mas, os sistemas que tão sendo usados pra gerenciar essas conversas não são muito eficientes. Eles têm que processar e calcular informações de tokens passados repetidamente, o que aumenta os custos e deixa o desempenho mais lento.

Pra resolver esses problemas, foi apresentado um novo método chamado AttentionStore. Essa abordagem inovadora permite a reutilização de Caches de chave-valor passados em diferentes rodadas da conversa. Fazendo isso, o AttentionStore reduz a necessidade de cálculos repetidos, economizando tempo e recursos.

O Problema das Conversas Multiturno

Conversas multiturno são essenciais pra melhorar a compreensão dos LLMs sobre o contexto e a intenção do usuário. Uns 73% das conversas envolvem várias rodadas, o que mostra a importância desse recurso. Porém, os sistemas existentes descartam caches passados quando a conversa tá inativa. Isso significa que quando a conversa recomeça, o sistema tem que recomputar tudo de novo, o que é ineficiente e caro.

Os cálculos repetitivos pra armazenar pares de chave-valor resultam em um overhead significativo, especialmente conforme o número de rodadas de conversa aumenta. Isso é um desperdício de recursos computacionais valiosos e leva a atrasos nos tempos de resposta.

A Solução: AttentionStore

O método AttentionStore resolve as ineficiências relacionadas a conversas multiturno. Ao invés de descartar caches de chave-valor, ele os salva em um sistema de cache dedicado. Quando a mesma sessão de conversa é retomada, esses caches podem ser acessados e reutilizados rapidamente, eliminando a necessidade de cálculos repetidos.

Principais Características do AttentionStore

  1. Sistema de Cache Hierárquico: O AttentionStore organiza seus caches de forma hierárquica, usando diferentes tipos de armazenamento pra economizar espaço e melhorar a velocidade de acesso.

  2. Pré-carregamento por Camadas: Pra minimizar os tempos de acesso lentos, o AttentionStore carrega caches de chave-valor camada por camada enquanto os cálculos tão rolando. Isso ajuda a sobrepor o tempo gasto em carregar e computar.

  3. Salvamento Assíncrono: O AttentionStore permite que o salvamento dos caches de chave-valor aconteça ao mesmo tempo que os cálculos tão sendo feitos. Isso evita atrasos causados por esperar os caches salvarem antes de partir pra outras tarefas.

  4. Gerenciamento Consciente do Agendador: O sistema usa informações do agendador de tarefas pra determinar quais caches de chave-valor provavelmente vão ser necessários em breve, melhorando a eficiência na busca e remoção de caches.

  5. Desacoplamento da Codificação Posicional: Pra manter a validade dos caches de chave-valor salvos, a codificação posicional é separada dos caches. Isso permite atualizações e modificações fáceis conforme o contexto da conversa muda.

Melhorias na Eficiência

Experimentos mostram que o AttentionStore pode melhorar significativamente o Tempo até o primeiro token (TTFT), que é o tempo que o modelo leva pra começar a produzir saída depois de receber uma entrada. Em vários testes, o TTFT foi reduzido em até 87%, enquanto o throughput pra preencher entradas melhorou em até 7,8 vezes.

Pra sequências mais longas, os benefícios são ainda mais evidentes. O TTFT foi reduzido em até 95%, e o throughput de preenchimento melhorou em 22 vezes. Isso mostra o potencial dos mecanismos de atenção pra otimizar o processamento em tarefas complexas.

Redução de Custos

O aspecto financeiro de usar LLMs é crítico, especialmente porque eles normalmente precisam de várias GPUs pra operar. Nos experimentos com o AttentionStore, o custo total de inferência foi reduzido em até 70%. Isso é uma economia significativa que pode levar a uma adoção mais ampla dessas tecnologias em várias aplicações.

Desafios na Implementação do AttentionStore

Enquanto o AttentionStore oferece muitos benefícios, existem desafios em projetar um sistema de cache eficiente:

  1. Overhead de Acesso: Transferir dados entre memória de alta velocidade e armazenamento mais lento pode criar gargalos. O AttentionStore trabalha pra mitigar isso garantindo que os caches estejam prontamente acessíveis.

  2. Espaço de Armazenamento: Caches de chave-valor podem rapidamente consumir grandes quantidades de armazenamento. Pra evitar esgotar a memória limitada, o AttentionStore espalha os caches por vários tipos de armazenamento, incluindo opções mais lentas mas mais espaçosas como discos.

  3. Gerenciamento de Cache: Como os pedidos de conversa podem chegar de surpresa, é essencial que o AttentionStore gerencie a colocação dos caches de forma eficiente pra garantir acesso rápido.

  4. Limitações de Contexto: Conforme as conversas se alongam, elas podem exceder a janela de contexto máxima dos LLMs. O AttentionStore desenvolveu métodos pra lidar com isso gerenciando e truncando tokens históricos de forma eficaz.

Visão Técnica

Arquitetura Transformer

A base de muitos LLMs modernos é a arquitetura transformer. Esse design permite que o modelo processe tokens de entrada e gere respostas com base no contexto anterior. Dentro dessa configuração, caches de chave-valor são cruciais pra reter informações de tokens passados pra ajudar a gerar novos tokens.

Toda vez que um novo token é gerado, pares de chave-valor são criados e armazenados na memória. Porém, quando as rodadas de conversa aumentam, a necessidade de recomputar esses caches leva a um overhead e ineficiências que o AttentionStore pretende resolver.

Inferência Generativa

Quando um usuário insere um prompt, o modelo passa por duas fases principais: pré-preenchimento e decodificação.

  1. Fase de Pré-preenchimento: Essa fase prepara os caches de chave-valor com base na entrada do usuário, gerando os dados necessários rapidamente. O tempo gasto nessa fase tá intimamente ligado ao comprimento da entrada.

  2. Fase de Decodificação: Essa fase processa um token por vez, tornando o processo mais lento. A dependência de tokens anteriores pode criar atrasos, especialmente em interações mais longas.

Resultados Experimentais

Taxa de Acerto de Cache

Em experimentos extensivos, o AttentionStore alcançou altas taxas de acerto de cache pra vários modelos. Por exemplo, manteve taxas de acerto em torno de 86% pro LLaMA-13B e 90% pro Falcon-40B. Essas taxas indicam que a maioria dos acessos ao cache foi bem-sucedida e não exigiu computação adicional.

Tempo até o Primeiro Token

Um dos principais métricas de desempenho é o tempo levado pra produzir o primeiro token depois de receber a entrada. O AttentionStore reduziu significativamente esse tempo em vários modelos comparado aos métodos tradicionais. Os resultados destacaram melhorias pro LLaMA-13B, LLaMA-65B e outros.

Throughput de Pré-preenchimento

O throughput mede quão rápido o modelo processa entradas. O AttentionStore demonstrou um desempenho notável nessa área, mostrando melhorias significativas de velocidade devido à redução da computação nas fases de pré-preenchimento.

Custo de Inferência

Usar o AttentionStore resultou em economia de custos pro sistema todo, reduzindo drasticamente a necessidade de tempo e recursos de GPU. Isso é particularmente relevante pra aplicações que requerem desempenho em tempo real.

Conclusão

Resumindo, o AttentionStore oferece uma abordagem promissora pra melhorar a eficiência e a relação custo-benefício de conversas multiturno em modelos de linguagem grandes. Reutilizando caches de chave-valor e implementando técnicas inovadoras de gerenciamento de cache, ele otimiza o desempenho de forma significativa. Os avanços apresentados pelo AttentionStore abrem caminho pra implementações mais escaláveis e econômicas de LLMs em várias indústrias e aplicações. O potencial de lidar com sequências mais longas e conversas complexas cria novas oportunidades pra interações mais ricas entre humanos e máquinas.

Fonte original

Título: Cost-Efficient Large Language Model Serving for Multi-turn Conversations with CachedAttention

Resumo: 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%.

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

Última atualização: 2024-06-30 00:00:00

Idioma: English

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

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

Licença: https://creativecommons.org/licenses/by/4.0/

Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.

Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.

Mais de autores

Artigos semelhantes