Os exemplos deste guia usam o
gemini-3.6-flash. Para saber se outros modelos são compatíveis com Context Cache, consulte a descrição do modelo e a página de preços da plataforma.Casos de uso
Quando várias solicitações incluem repetidamente o mesmo bloco grande de conteúdo, você pode armazenar em cache um prefixo estável, por exemplo:- Um system prompt muito longo
- Uma base de conhecimento fixa ou documentação de produto
- Mensagens de histórico estáveis em uma conversa com vários turnos
- Definições e instruções de ferramentas que são reutilizadas
Uso básico
Adicionecache_control ao bloco de conteúdo da última mensagem do prefixo estável:
Se
ttl for omitido, o valor padrão será 5m.Estrutura das mensagens
Recomendamos usar a seguinte estrutura:cache_control e todas as mensagens anteriores formam o prefixo armazenado em cache. Deve haver pelo menos uma mensagem em tempo real depois dela.
Exemplo de solicitação compatível com a OpenAI
Não é necessário chamar um endpoint separado para criar o cache.
cache_control define tanto o “limite do cache” quanto o seu “período de validade”.Exemplo de solicitação nativa do Gemini
O endpoint nativogenerateContent do Gemini também permite adicionar cache_control em contents[].parts[]:
cache_control é um campo de extensão da plataforma para o formato de solicitação do Gemini. Depois de identificar o limite, a plataforma remove esse campo antes de encaminhar a solicitação e cria ou reutiliza automaticamente o conteúdo em cache (cachedContent).
A interface de streaming usa o mesmo corpo da solicitação; basta alterar o endereço para: