GUIA Técnico

PagedAttention e vLLM

PagedAttention é uma técnica de gerenciamento de memória que armazena o cache de atenção de um modelo de linguagem em pequenos blocos reutilizáveis, em vez de um grande pedaço contíguo.

  • 2 minutos de leitura
  • Última atualização
Nesta página2 minutos de leitura
  1. Visão geral
  2. Mergulho profundo
  3. Impacto Estratégico
  4. O futuro do PagedAttention e do vLLM
  5. Implementação no mundo real
  6. Riscos e guarda-corpos
  7. Roteiro de implementação
  8. Continue explorando
  9. Perguntas frequentes

Visão geral

It powers vLLM, an open-source serving engine that dramatically boosts how many requests a single GPU can handle.

Mergulho profundo

Quando um modelo de linguagem gera texto, ele mantém um 'cache KV' (vetores de chave e valor) para cada token visto, para que o próximo token possa atender ao contexto completo. Tradicionalmente, cada solicitação reservava uma grande placa contígua de memória GPU dimensionada para seu comprimento máximo possível, desperdiçando enormes quantidades quando as sequências eram mais curtas ou variavam em comprimento. PagedAttention, apresentado no artigo vLLM de 2023 da UC Berkeley, empresta a ideia de paginação de memória virtual dos sistemas operacionais: ele divide o cache KV em blocos de tamanho fixo que podem residir em qualquer lugar da memória e ser alocados sob demanda. Uma tabela de consulta mapeia posições lógicas de tokens para blocos físicos. Isso quase elimina a fragmentação da memória e permite que os blocos sejam compartilhados, por exemplo, entre várias saídas do mesmo prompt.

Impacto Estratégico

Custo e orçamento

As decisões de arquitetura impulsionam o desempenho e os custos operacionais durante anos.

Decisões mais claras

A educação técnica ajuda as equipes a escolher a pilha certa, não apenas a mais nova.

Controle de qualidade

Melhores escolhas de engenharia reduzem incidentes de confiabilidade na produção.

O futuro do PagedAttention e do vLLM

O vLLM se tornou um backbone de inferência de código aberto padrão, e as ideias do PagedAttention agora aparecem na maioria das pilhas de serviços. Espere um cache de prefixo mais profundo (reutilizando prompts do sistema em cache entre os usuários), pré-preenchimento e decodificação desagregados em máquinas separadas, políticas de despejo mais inteligentes e forte integração com quantização e decodificação especulativa. À medida que as janelas de contexto crescem para milhões de tokens, o gerenciamento eficiente de KV paginado torna-se ainda mais central para manter o serviço acessível.

Implementação no mundo real

Hospedando uma API LLM de código aberto onde o vLLM atende muitos usuários de bate-papo simultâneos a partir de uma GPU com alto rendimento

Compartilhando um longo prompt do sistema entre milhares de solicitações por meio de cache de prefixo para que seja processado uma vez, e não repetidamente

Executando pesquisa de feixe ou múltiplas conclusões amostradas que compartilham blocos KV para o prompt comum via copy-on-write

Reduzindo o desperdício de memória da GPU devido à fragmentação para que um provedor possa empacotar mais sessões simultâneas no mesmo hardware

Riscos e guarda-corpos

  • A otimização de um benchmark pode ocultar fraquezas mais amplas do sistema.

  • Os custos de infraestrutura e manutenção são frequentemente subestimados.

  • As lacunas de segurança e observabilidade podem aumentar à medida que os sistemas se tornam mais complexos.

Roteiro de implementação

  1. Defina metas de latência, qualidade e custo antes da implementação.

  2. Benchmark sob condições realistas de carga e dados.

  3. Monitoramento de instrumentos para erros, desvios e impacto no usuário.

  4. Prepare caminhos de reversão e resposta a incidentes antes de escalar.

Continue explorando

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the PagedAttention and vLLM quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Iniciar teste

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Perguntas frequentes

What is PagedAttention and vLLM?

PagedAttention é uma técnica de gerenciamento de memória que armazena o cache de atenção de um modelo de linguagem em pequenos blocos reutilizáveis, em vez de um grande pedaço contíguo. Ele alimenta o vLLM, um mecanismo de serviço de código aberto que aumenta drasticamente o número de solicitações que uma única GPU pode atender.

O que o 'cache KV' armazena durante a geração de texto?

O cache KV contém vetores de chave e valor para cada token anterior, permitindo que o modelo atenda ao contexto completo sem recalculá-lo a cada etapa.

Qual conceito de sistema operacional inspirou o PagedAttention?

PagedAttention empresta paginação de memória virtual: o cache KV é dividido em páginas de tamanho fixo que podem estar em qualquer lugar, mapeadas por uma tabela de blocos.

Que problema com a alocação de cache KV tradicional o PagedAttention resolve?

Reservar uma grande placa contígua por solicitação, dimensionada para o comprimento máximo, desperdiçava enormes quantidades de memória da GPU. A paginação aloca pequenos blocos sob demanda, reduzindo o desperdício.

Como o PagedAttention permite que várias saídas compartilhem memória para um prompt comum?

Prefixos idênticos (prompts compartilhados ou ramificações de pesquisa de feixe) fazem referência às mesmas páginas KV físicas, copiando apenas quando uma ramificação diverge.

Onde o vLLM e o PagedAttention foram originalmente desenvolvidos?

O vLLM e o algoritmo PagedAttention surgiram da UC Berkeley em um artigo de 2023 e rapidamente se tornaram um mecanismo de serviço de código aberto amplamente utilizado.