Saltar al contenido principal
Para los modelos GPT-5.6 y posteriores que admiten esta función, configura prompt_cache_options.ttl en una solicitud a Responses API para elegir una duración mínima de caché de 30 minutos o 12 horas. Los ejemplos usan gpt-6.1-terra.
La caché de 12 horas solo está disponible en /v1/responses, no en /v1/chat/completions. El TTL indica una duración mínima, no un plazo de eliminación ni una garantía de acierto en cada solicitud.

Configurar la clave API

El texto largo de los ejemplos es un marcador de posición. Sustitúyelo por el contenido que quieras reutilizar. El prefijo debe tener al menos 1.024 tokens; este texto breve por sí solo no genera una escritura en caché.

Usar la caché de 30 minutos

Establece prompt_cache_options.ttl en "30m". Si omites ttl, también se usan 30 minutos. Si omites mode, se usa la caché implícita: el servicio de origen elige el punto de caché automáticamente.

Usar la caché de 12 horas

Cambia el mismo campo a "12h" y conserva el resto de la estructura:

Reutilizar un prefijo fijo con distintas preguntas

Para reutilizar un documento largo cambiando solo la última pregunta, establece mode en "explicit" y añade prompt_cache_breakpoint al bloque input_text al final del contenido fijo. Este ejemplo usa 12 horas; para 30 minutos, cambia el TTL de la solicitud a "30m".
Configurar mode: "explicit" sin añadir un punto de caché impide leer o escribir en la caché. El punto siguiente no tiene un TTL propio, por lo que hereda prompt_cache_options.ttl de la solicitud.
En las siguientes solicitudes envía el mismo modelo, prefijo fijo y punto de caché, cambiando solo el último mensaje del usuario. Mantén el contenido, el orden y los ajustes que afectan al contexto. No necesitas crear ni enviar un ID de caché.

Comprobar el uso de la caché

Revisa usage.input_tokens_details en la respuesta:
  • cached_tokens: Tokens leídos de la caché en esta solicitud. Un valor mayor que 0 indica una lectura de caché.
  • cache_write_tokens: Total de tokens escritos en la caché en esta solicitud.
  • cache_write_tokens_details.ttl_30m_tokens: Tokens escritos con un TTL de 30 minutos en esta solicitud.
  • cache_write_tokens_details.ttl_12h_tokens: Tokens escritos con un TTL de 12 horas en esta solicitud.
Tras la primera escritura, envía otra solicitud con el mismo prefijo estable y comprueba cached_tokens. Puede ser 0 si el prefijo es demasiado corto, cambia el contenido o no hay un acierto de caché.

Ejemplo de cache usage y recuento de tokens

Este fragmento de respuesta muestra solo usage de un modelo OpenAI compatible con caché, con escrituras para ambos TTL. Los valores reales dependen de la respuesta.
Tokens de entrada ordinarios:
Las lecturas y escrituras de caché ya están incluidas en input_tokens. Las dos cantidades por TTL son componentes de cache_write_tokens: no vuelvas a sumar el total y sus componentes ni añadas las lecturas y escrituras a la entrada total. Aquí, la entrada ordinaria es 12000 - 4000 - 7000 = 1000, las escrituras son 5000 + 2000 = 7000 y el total de tokens es 12000 + 1000 = 13000. Consulta la guía oficial de caché de prompts de OpenAI para conocer su funcionamiento.