Skip to main content
PromptQuorumPromptQuorum

O Que É Cache de Prompt para LLMs Locais?

Resposta rápida

O cache de prompt armazena o cache de chave-valor (KV) calculado para o prefixo de um prompt, para que não precise ser recalculado quando uma solicitação posterior compartilha esse mesmo prefixo — um prompt de sistema fixo, um documento reutilizado ou turnos anteriores de conversa. Isso reduz significativamente o tempo de processamento do prompt em cargas de trabalho com prefixo repetido, mas não traz nenhum benefício quando cada solicitação é independente.

  • Armazena em cache o KV do prefixo de um prompt, não a saída do modelo
  • Maior ganho: prompts de sistema longos e fixos, documentos reutilizados, conversas de vários turnos
  • Nenhum benefício para solicitações avulsas sem prefixo compartilhado entre chamadas

Atualizado: 15 de julho de 2026

Technique & Concept ExplainersIntermediário

Pontos principais

  • O cache de prompt armazena o cache KV calculado para o prefixo de um prompt, permitindo que uma solicitação posterior o reutilize em vez de reprocessar os mesmos tokens
  • Quanto maior e mais repetido o prefixo compartilhado, maior o ganho de velocidade — um prompt de sistema longo e imutável, reutilizado em milhares de solicitações, se beneficia enormemente
  • Conversas de vários turnos se beneficiam automaticamente na maioria das configurações de serving local, já que cada novo turno compartilha toda a conversa anterior como prefixo
  • O cache só ajuda no processamento do prompt (a entrada), não na geração de tokens (a saída) — ele reduz o tempo até o primeiro token, não os tokens por segundo depois que a geração começa

Como o Cache Realmente Acelera as Coisas

Processar um prompt significa que o modelo calcula uma representação de chave-valor (KV) para cada token de entrada antes de começar a gerar uma resposta. Essa etapa — o processamento do prompt — acontece antes do início da geração, e seu custo cresce com o comprimento do prompt. Sem cache, um prompt de sistema longo é totalmente reprocessado a cada solicitação, mesmo sendo idêntico byte a byte em todas as vezes.

O cache armazena essa representação KV calculada para um determinado prefixo, indexada pela sequência exata de tokens. Quando uma nova solicitação começa com os mesmos tokens, os valores KV em cache são reutilizados diretamente, e apenas a parte nova e não cacheada do prompt precisa ser processada. O efeito prático é que o tempo até o primeiro token cai bastante nos acertos de cache, já que a maior parte da entrada não precisa mais ser recalculada.

É por isso que conversas de vários turnos se beneficiam quase automaticamente: o turno 3 de uma conversa inclui os turnos 1 e 2 como seu prefixo, então uma configuração de serving com cache processa apenas o turno mais recente, não todo o histórico da conversa novamente.

Estruturando Prompts para Realmente Aproveitar o Cache

  • **Coloque o conteúdo compartilhado e imutável primeiro.** Prompts de sistema, instruções e documentos de referência que permanecem idênticos entre solicitações devem vir antes do conteúdo variável e específico de cada solicitação — o cache só funciona com um prefixo que corresponda exatamente, então tudo antes do primeiro ponto de diferença é o que será reutilizado.
  • **Mantenha o prefixo compartilhado idêntico byte a byte entre solicitações.** Até mesmo uma única diferença de caractere em um prompt de sistema (um timestamp, um ID aleatório) quebra a correspondência do prefixo e força o reprocessamento completo — mova qualquer variação específica da solicitação para o final do prompt, depois do conteúdo reutilizável.
  • **Não espere que o cache ajude em solicitações avulsas e não relacionadas.** Se sua carga de trabalho é composta majoritariamente por perguntas pontuais sem configuração compartilhada, não há nada para o cache reutilizar — o valor da técnica é proporcional a quanto do seu tráfego realmente compartilha um prefixo comum.
  • **Conversas de longa duração se beneficiam mais das configurações de retenção de cache.** Verifique por quanto tempo sua configuração de serving mantém prefixos em cache antes de descartá-los — um cache descartado de forma muito agressiva não vai ajudar conversas com intervalos entre os turnos.

Perguntas Frequentes

O cache de prompt muda a saída do modelo?
Não. O cache afeta apenas como o prefixo compartilhado é processado internamente — ele produz resultados matematicamente idênticos ao reprocessamento completo, só que mais rápido. É uma otimização de desempenho, não uma mudança no comportamento ou na qualidade do modelo.
O cache de prompt ajuda na velocidade de geração de tokens, ou só no tempo de resposta inicial?
Apenas no tempo de resposta inicial (tempo até o primeiro token). Depois que a geração começa, os tokens continuam sendo produzidos um a um na mesma velocidade de geração, independentemente do cache — o cache elimina o trabalho redundante de processamento do prompt, não a etapa de geração em si.
Quanto de VRAM o cache usa?
Os dados KV em cache ficam na VRAM junto com o próprio modelo, e seu tamanho cresce conforme a quantidade de contexto em cache e o número de conversas simultâneas. Colocar em cache várias conversas longas ao mesmo tempo pode aumentar consideravelmente o uso de VRAM — uma troca real em relação à profundidade do cache em hardware com VRAM limitada.
Toda ferramenta de serving local tem suporte a cache de prompt?
O suporte e o comportamento padrão variam de acordo com a ferramenta — algumas fazem cache automaticamente para uso de vários turnos dentro de uma sessão, outras exigem configuração explícita, e a retenção do cache (por quanto tempo um prefixo permanece em cache antes de ser descartado) também é específica de cada ferramenta. Consulte a documentação da sua ferramenta de serving específica para saber o comportamento de cache e as configurações que o controlam.