Cache de prompt
O cache de prompt permite reduzir a latência geral da solicitação e o custo para prompts mais longos que têm conteúdo idêntico no início do prompt. "Prompt", neste contexto, refere-se à entrada que você envia para o modelo como parte de sua solicitação de conclusão de chat. Em vez de reprocessar os mesmos tokens de entrada repetidamente, o serviço é capaz de reter um cache temporário de cálculos de token de entrada processados para melhorar o desempenho geral. O cache de prompt não tem impacto no conteúdo de saída retornado na resposta do modelo, além de uma redução na latência e no custo. Para modelos suportados, os tokens armazenados em cache são cobrados com desconto no preço do token de entrada para tipos de implantação Standard e até 100% de desconto em tokens de entrada para tipos de implantação provisionados.
Normalmente, os caches são limpos dentro de 5 a 10 minutos após a inatividade e são sempre removidos dentro de uma hora após o último uso do cache. Os caches de prompt não são compartilhados entre assinaturas do Azure.
Modelos suportados
Atualmente, apenas os seguintes modelos suportam cache de prompt com o Azure OpenAI:
o1-2024-12-17
o1-preview-2024-09-12
o1-mini-2024-09-12
gpt-4o-2024-11-20
gpt-4o-2024-08-06
gpt-4o-mini-2024-07-18
-
gpt-4o-realtime-preview
(versão 2024-12-17)»
Nota
O cache de prompt agora também está disponível como parte do ajuste fino do modelo para gpt-4o
e gpt-4o-mini
. Consulte a seção de ajuste fino da página de preços para obter detalhes.
Suporte de API
O suporte oficial para cache de prompt foi adicionado pela primeira vez na versão 2024-10-01-preview
API. No momento, apenas a família de modelos o1 suporta o cached_tokens
parâmetro de resposta da API.
Introdução
Para que uma solicitação aproveite o cache de prompt, a solicitação deve ser ambas:
- Um mínimo de 1.024 tokens de comprimento.
- Os primeiros 1.024 tokens no prompt devem ser idênticos.
Quando uma correspondência é encontrada entre os cálculos de token em um prompt e o conteúdo atual do cache de prompt, é chamada de acerto de cache. Os acessos ao cache aparecerão como cached_tokens
abaixo prompt_tokens_details
na resposta de conclusão do chat.
{
"created": 1729227448,
"model": "o1-preview-2024-09-12",
"object": "chat.completion",
"service_tier": null,
"system_fingerprint": "fp_50cdd5dc04",
"usage": {
"completion_tokens": 1518,
"prompt_tokens": 1566,
"total_tokens": 3084,
"completion_tokens_details": {
"audio_tokens": null,
"reasoning_tokens": 576
},
"prompt_tokens_details": {
"audio_tokens": null,
"cached_tokens": 1408
}
}
}
Após os primeiros 1.024 tokens de hits de cache ocorrerão para cada 128 tokens idênticos adicionais.
Uma única diferença de caracteres nos primeiros 1.024 tokens resultará em uma falha de cache, que é caracterizada por um cached_tokens
valor de 0. O cache de prompt é habilitado por padrão, sem necessidade de configuração adicional para modelos suportados.
O que é armazenado em cache?
Os modelos da série o1 são apenas texto e não suportam mensagens do sistema, imagens, uso de ferramentas/chamadas de função ou saídas estruturadas. Isso limita a eficácia do cache de prompt para esses modelos para as partes de usuário/assistente da matriz de mensagens que são menos propensas a ter um prefixo de token 1024 idêntico.
O cache de prompt é suportado para:
Cache suportado | Descrição | Modelos suportados |
---|---|---|
Mensagens | A matriz completa de mensagens: conteúdo do sistema, do usuário e do assistente | gpt-4o gpt-4o-mini gpt-4o-realtime-preview (Versão 2024-12-17) |
Imagens | Imagens incluídas em mensagens do usuário, como links ou como dados codificados em base64. O parâmetro detail deve ser definido da mesma forma entre as solicitações. | gpt-4o gpt-4o-mini |
Utilização da ferramenta | Tanto a matriz de mensagens quanto as definições de ferramentas. | gpt-4o gpt-4o-mini gpt-4o-realtime-preview (Versão 2024-12-17) |
Resultados estruturados | O esquema de saída estruturado é anexado como um prefixo à mensagem do sistema. | gpt-4o gpt-4o-mini |
Para melhorar a probabilidade de ocorrência de acertos de cache, você deve estruturar suas solicitações de modo que o conteúdo repetitivo ocorra no início da matriz de mensagens.
Posso desativar o cache de prompt?
O cache de prompt é habilitado por padrão para todos os modelos suportados. Não há suporte de exclusão para cache de prompt.