GUIA de IA de linguagem

Cache KV

O cache KV armazena os vetores de chave e valor que um transformador já computou para tokens anteriores, portanto, não é necessário recalculá-los para cada nova palavra que gera.

Ouça este guiaNarrado por IA · ~2 min

Nesta página2 minutos de leitura
  1. Visão geral
  2. Mergulho profundo
  3. Implementação no mundo real
  4. O futuro do cache KV
  5. Colocando em prática
  6. Continue explorando
  7. Perguntas frequentes

Visão geral

Esse é o maior motivo pelo qual a geração de texto é rápida – e o principal motivo pelo qual a memória da GPU é consumida durante longas conversas.

Mergulho profundo

Os transformadores geram texto, um token por vez, e a camada de atenção de cada novo token precisa ser comparada com todos os tokens anteriores. O mecanismo de atenção transforma cada token em um vetor de consulta, chave e valor. Sem armazenamento em cache, gerar o token número 1.000 significaria recalcular chaves e valores para todos os 999 tokens anteriores em cada etapa – trabalho quadrático e um desperdício. O cache KV salva esses vetores de chave e valor depois de serem computados pela primeira vez e os reutiliza, de modo que cada nova etapa calcula apenas vetores para o token mais recente e atende ao cache armazenado. Isso reduz o custo por token do escalonamento com o comprimento da sequência para aproximadamente constante. A compensação é a memória: o cache cresce linearmente com o comprimento do contexto, o número de camadas e as cabeças de atenção, muitas vezes tornando-se o consumidor de memória dominante no serviço de contexto longo.

Implementação no mundo real

Acelerar as respostas do chatbot reutilizando chaves/valores armazenados em cache do histórico de conversas em vez de reprocessá-los a cada turno.

Cache de prefixo que compartilha o cache para um longo prompt do sistema entre muitos usuários, reduzindo custos e latência.

O PagedAttention do vLLM gerencia o cache KV em blocos para atender com eficiência muitas solicitações simultâneas em uma GPU.

Quantizando o cache KV para diminuir a precisão para ajustar contextos mais longos na memória limitada da GPU.

O futuro do cache KV

À medida que as janelas de contexto se estendem para centenas de milhares de tokens, o cache KV se torna o gargalo central, então a inovação é feroz: quantização do cache para 8 ou 4 bits, políticas de despejo que descartam tokens de baixa importância, compartilhamento de prefixo de solicitação cruzada e descarregamento para CPU ou disco. Mudanças arquitetônicas, como atenção latente de vários cabeçotes, comprimem o próprio cache. Espere o co-projeto contínuo de variantes de atenção e sistemas de memória destinados a servir contextos muito longos de maneira barata e com alto rendimento.

Colocando em prática

Por que isso importa

  • Velocidade e escala. Os fluxos de trabalho de idiomas podem avançar mais rapidamente sem sacrificar a consistência.
  • Acesso e alcance. Ele expande o acesso entre idiomas e estilos de comunicação.
  • Decisões mais claras. As equipes podem gastar mais tempo julgando enquanto a automação cuida da repetição.

Cuidado com

  • Fatos alucinados podem entrar silenciosamente em relatórios, fluxos de apoio ou resultados de pesquisas.
  • A sensibilidade do prompt pode criar resultados inconsistentes em solicitações semelhantes.
  • Dados de texto confidenciais podem ser expostos se os controles de acesso forem fracos.

Próximas etapas

  1. Defina o formato de saída, o tom e os padrões de qualidade antes da implementação.
  2. Respostas terrestres com fontes confiáveis ​​sempre que a precisão for importante.
  3. Mantenha um ponto de verificação de revisão humana para resultados de alto risco.
  4. Rastreie padrões de falha e treine novamente prompts ou fluxos de trabalho regularmente.

Continue explorando

Boletim informativo gratuito

Receba o resumo diário de IA

Três histórias verificadas de IA a cada manhã de dia útil, escritas em linguagem simples. Gratuito para sempre, sem anúncios.

Um e-mail a cada dia útil. Cancele a inscrição com um clique. Nunca vendemos ou compartilhamos seu endereço.

Teste você mesmo

Take the KV Cache quiz

Feedback instantâneo sobre cada resposta e um certificado compartilhável com um ID verificável assim que você concluir um curso.

Iniciar teste

Apoie a educação gratuita em IA. O AI Understanding é uma organização sem fins lucrativos 501(c)(3) — sem anúncios, sem paywall, nunca. Faça uma doação

Perguntas frequentes

O que é cache KV?

O cache KV armazena os vetores de chave e valor que um transformador já computou para tokens anteriores, portanto, não é necessário recalculá-los para cada nova palavra que gera. Esse é o maior motivo pelo qual a geração de texto é rápida – e o principal motivo pelo qual a memória da GPU é consumida durante longas conversas.

O que o cache KV armazena?

O cache KV contém os vetores de chave e valor dos tokens anteriores para que a atenção possa reutilizá-los em vez de recomputá-los.

Qual problema o cache KV resolve principalmente?

The cache reuses keys and values computed for earlier tokens instead of rebuilding them at every decode step. The new query still attends over cached positions, so attention work and cache memory continue to grow with context length.

Qual é a principal desvantagem do cache KV?

O cache cresce com o comprimento da sequência, camadas e cabeçalhos, muitas vezes se tornando o consumidor dominante de memória da GPU em serviços de contexto longo.

Qual técnica reduz o tamanho do cache KV compartilhando chaves e valores entre cabeças de atenção?

A atenção de consulta agrupada e multiconsulta permite que vários cabeçotes de consulta compartilhem menos conjuntos de chave/valor, reduzindo substancialmente o cache.

Quais são as duas fases de inferência do transformador em relação ao cache KV?

O pré-preenchimento preenche o cache com o K/V do prompt; decode anexa o K/V de um novo token a cada etapa e reaparece no cache.