Por qué colapsa el cache hit de un agente de IA: GPT, Claude y gateways auditables

Guía basada en fuentes sobre fallos de caché en agentes de terceros, prompt caching de GPT y Claude, medición reproducible y compensación pública de Modelflare.

El caché de un agente de IA no es una casilla de verificación. Es un contrato de protocolo, enrutamiento y contabilidad. Este artículo explica por qué un agente de terceros puede tener una tasa de aciertos muy baja aunque el modelo ascendente admita prompt caching, cómo difieren GPT y Claude al reutilizar y medir entradas, y qué debe garantizar un gateway auditable.

La decisión en una frase

No coloques un agente de producción sensible al caché detrás de un agente o gateway de terceros que no exponga el uso nativo, conserve un prefijo estable, mantenga afinidad de modelo y ruta, muestre TTL y denominador, y reconcilie el resultado con un libro mayor persistente. “Admite caché” es una afirmación de funcionalidad; una tasa elegible medida es un hecho operativo.

Esto no afirma que todos los agentes de terceros fallen. La documentación pública no puede demostrar un porcentaje global de un proveedor sin un corpus fijo, un modelo fijo, una ventana conocida y evidencia de uso por solicitud. La conclusión más precisa es que una capa de traducción opaca introduce varios puntos de ruptura independientes y puede convertir un caché válido del proveedor en una ruta casi siempre fría. Para tráfico de producción que depende del caché, la falta de evidencia ya es motivo para no elegir esa ruta.

Define el denominador antes de hablar de porcentajes

El proveedor suele informar tres cubos distintos. Sea R el número de tokens leídos del caché, W los tokens escritos y U los tokens de entrada procesados sin reutilización. Para prefijos elegibles, la tasa comparable es:

eligible_hit_rate = R / (R + W)

Para toda la entrada enviada al modelo, la cuota reutilizada es:

input_reuse_share = R / (R + W + U)

Las cifras responden preguntas distintas. Un panel que divide por toda la entrada puede parecer bajo cuando el agente envía muchas solicitudes cortas y no elegibles. Uno que divide solo por tráfico elegible puede ocultar que el sufijo dinámico domina el coste. Publica ambas cifras, la regla de elegibilidad y la ventana temporal.

El prefijo estable entra en el caché reutilizable y el estado cambiante del agente lo evita

La evidencia son los campos del proveedor, no una insignia verde en la interfaz del agente:

Señal Campo OpenAI Campo Claude Qué demuestra
Prefijo reutilizado input_tokens_details.cached_tokens cache_read_input_tokens Tokens servidos por una entrada coincidente
Nueva entrada input_tokens_details.cache_write_tokens cache_creation_input_tokens Tokens usados para crear o ampliar una entrada
Entrada no reutilizada input_tokens - input_tokens_details.cached_tokens - input_tokens_details.cache_write_tokens (derivar con cuidado) input_tokens después del breakpoint Entrada fuera del prefijo; la semántica difiere
Correlación ID de solicitud, modelo y ruta ID de solicitud, modelo y ruta Qué intento del proveedor produjo el uso

Ejemplo sintético, no telemetría de producción de Modelflare: R=720,000, W=80,000 y U=200,000 dan una tasa elegible de 720,000 / 800,000 = 90%, pero una cuota reutilizada de toda la entrada de 720,000 / 1,000,000 = 72%. Publicar solo una cifra oculta el denominador.

input_tokens_details.cache_write_tokens=0 no demuestra “sin caché”: una lectura no crea una entrada nueva. Del mismo modo, si una respuesta de terceros omite el campo de uso, no es cero; es un fallo de observabilidad que debe marcarse como no auditable.

Por qué una ruta de agente pierde aciertos aunque el modelo admita caché

El problema suele estar entre la aplicación y el proveedor. Estos son los puntos de ruptura más frecuentes:

  • Los bytes dinámicos llegan demasiado pronto. Marcas de tiempo, ID de solicitud, usuario, experimento o una fecha actual cambiante modifican el prefijo antes de las instrucciones reutilizables.
  • Las herramientas se serializan de nuevo. Añadir, quitar, reordenar o serializar de forma no determinista un schema de herramienta cambia el prefijo exacto; incluso el orden de claves JSON puede producir un miss.
  • El fallback cambia la identidad. Balancear entre alias, regiones, organizaciones o credenciales no comparte una entrada universal.
  • El adaptador elimina controles nativos. Quitar cache_control, prompt_cache_key, retención o detalles de uso convierte la capacidad en un best effort invisible.
  • El prompt queda por debajo del umbral. Un turno corto puede ser válido y aun así no ser elegible.
  • Se cruza el TTL. Una entrada de Claude de cinco minutos o una retención de OpenAI específica del modelo puede caducar durante una pausa humana.
  • Hay una carrera de calentamiento paralelo. Varias primeras solicitudes pueden llegar antes de que la primera respuesta cree la entrada.
  • Se reescribe el historial. Resumir, compactar, truncar o serializar de otra forma cambia el prefijo en lugar de añadir al final.

Tres formas de solicitud muestran cómo las lecturas, escrituras y entradas sin caché crean denominadores distintos

Ninguno de estos fallos exige engaño. Son consecuencias previsibles de tratar una solicitud de agente como texto libre y no conservar el contrato de caché del proveedor. La advertencia práctica es clara: si el agente no puede mostrar qué breakpoint falló, no puedes poner precio ni depurar tráfico dependiente del caché.

GPT y Claude comparten la idea, pero no la semántica

Ambos exigen un prefijo reutilizable idéntico, pero sus controles y contabilidad difieren. La tabla usa las guías oficiales comprobadas el 2026-08-25; nombres, mínimos y retención pueden cambiar.

Dimensión Prompt caching de OpenAI Prompt caching de Claude
Unidad reutilizable Prefijo completo del contexto renderizado: instrucciones, herramientas, historial y partes multimodales Prefijo ordenado hasta un breakpoint cache_control: herramientas, system y mensajes
Longitud mínima La guía actual indica 1.024 tokens visibles para GPT-5.6+ y normalmente 2.048 en modelos anteriores Mínimos por modelo de aproximadamente 512–4.096 tokens; prompts más cortos no se almacenan
Controles Caché implícito; breakpoints explícitos y prompt_cache_key estable en modelos compatibles Caché automático de nivel superior o breakpoints por bloque; hasta cuatro y lookback de 20 bloques
Retención GPT-5.6+ admite TTL de 30 minutos; modelos anteriores exponen modos con ventanas típicas propias TTL predeterminado de cinco minutos, renovado al usarlo; una hora opcional con mayor coste de escritura
Precio En la guía GPT-5.6+ actual, escritura 1,25× y lectura 0,1× del input base Escritura de cinco minutos 1,25×, de una hora 2×; lectura 0,1×
Evidencia input_tokens_details.cached_tokens y, cuando existe, input_tokens_details.cache_write_tokens cache_read_input_tokens, cache_creation_input_tokens y input_tokens tras el breakpoint
Invalidación frecuente Cambios de modelo, herramientas o ajustes, overflow de máquina o cambio antes del breakpoint Cambios de modelo, system, herramientas o mensajes; mensaje previo ausente o miss de calentamiento paralelo

OpenAI indica que las entradas viven en máquinas individuales: prompt_cache_key ayuda a agrupar y enrutar, pero no fija una máquina ni garantiza un hit. Claude documenta coincidencia exacta, aislamiento por workspace y diagnósticos como tools_changed y messages_changed. Un gateway que oculta esas diferencias no puede convertir honestamente la documentación en una sola promesa.

Los multiplicadores muestran el impacto. En el modelo OpenAI citado, una escritura seguida de una lectura cuesta aproximadamente 1.25 + 0.10 = 1.35× de la unidad sin caché; diez reutilizaciones completas cuestan 1.25 + 9×0.10 = 2.15× en lugar de 10×. Son cálculos ilustrativos oficiales, no una factura de Modelflare ni una garantía universal.

El impuesto del adaptador se puede medir

Usa una matriz de fallos, no una captura de pantalla. Fija prompt, modelo, credenciales y ritmo; cambia una variable y conserva el objeto usage original.

Cambio controlado Señal esperada Qué puede ocultar un agente opaco Interpretación
Añadir solo el turno del usuario R sube después del primer W Historial reescrito o nueva ruta El prefijo se conserva
Añadir una marca de tiempo al system prompt R cae a cero o aparece otro W Qué bytes cambiaron El prefijo dinámico rompe el caché
Reordenar una propiedad de herramienta tools_changed o nueva escritura Serializador utilizado El schema debe ser determinista
Dividir tráfico entre alias o máquinas R menor y más variable Ruta y clave elegidas Falta afinidad
Dormir más que el TTL Nueva escritura tras expirar Hora de expiración y retención Medir aparte las pausas humanas
Lanzar dos primeras solicitudes en paralelo Una o ambas pueden escribir Carrera y orden de intentos Un burst frío no mide capacidad

Conserva ID de solicitud, modo de streaming, tiempo del primer evento, modelo exacto, ruta elegida, campos de caché y marca UTC. Redacta prompts, claves y contenido del cliente. Si el gateway solo devuelve un total de input normalizado, marca la prueba no auditable; no conviertas dimensiones faltantes en ceros inventados.

Un registro de auditoría reproducible

Este es un formato sintético pequeño. La envoltura es neutral y usage mantiene campos nativos. No es un benchmark.

{"request_id":"demo-001","timestamp":"2026-08-25T02:00:00Z","model":"MODEL_ID","route":"route-a","stream":true,"usage":{"input_tokens":1000000,"input_tokens_details":{"cached_tokens":0,"cache_write_tokens":1000000}}}
{"request_id":"demo-002","timestamp":"2026-08-25T02:00:03Z","model":"MODEL_ID","route":"route-a","stream":true,"usage":{"input_tokens":1000000,"input_tokens_details":{"cached_tokens":720000,"cache_write_tokens":80000}}}

Ejecuta cinco fases como mínimo: calentamiento serial, conversación con anexos, mutación dinámica del sistema, mutación del orden de herramientas y reproducción tras un intervalo TTL. Conserva los campos nativos de cada proveedor y compara R/(R+W) y R/(R+W+U) por fase, ruta, modelo y día UTC. Un número mezclado no basta para aprobar un agente en producción.

Qué garantiza Modelflare y qué no

La página pública de estado de Modelflare describe actualmente OpenAI Cache Hit Rate Guarantee. Para solicitudes elegibles que cumplen los requisitos de OpenAI y forman un caché válido, la tasa se calcula por día natural UTC. Si queda por debajo del nivel aplicable, se compensa la diferencia y aparece en Dashboard → Token Usage Analysis. Los niveles públicos actuales son 65%, 75% y 85%.

Tres niveles públicos de garantía ascienden del 65 al 85 por ciento

El límite es deliberado:

  • La garantía cubre tráfico OpenAI elegible y válido, no solicitudes cortas o cambiantes que nunca califican.
  • No convierte automáticamente un modelo, schema, ruta o TTL cambiante en un prefijo reutilizable.
  • Se calcula por día UTC y se acredita en la superficie de cuenta documentada; no afirma que cada solicitud tenga hit.
  • La evidencia nativa y el cálculo de elegibilidad siguen siendo necesarios. Un denominador explícito hace verificable la compensación.

Esa es la diferencia entre una promesa auditable y un eslogan de agente: la primera nombra población, ventana, umbral y destino del crédito.

La ventaja de precio y la legitimidad operativa son pruebas separadas

La página de precios también muestra actualmente una proporción promocional de 0.015 para la primera recarga en la campaña/grupo aplicable, con mínimo y condiciones publicados. Es un incentivo de precio, no la garantía de caché. Confirma en la página viva el alcance del modelo y las reglas de liquidación.

Los materiales públicos de confianza y legales identifican a Havenbyte LLC como operador y describen la operación como basada en Estados Unidos. Indican Stripe como procesador para pagos, facturas, reembolsos y controles antifraude. Son señales de custodia y responsabilidad, no una certificación ni una afirmación sobre un estado concreto.

Recomendación para agentes de producción

Elige un agente de terceros solo si supera esta lista:

  • Reenvía controles nativos y devuelve lecturas y escrituras nativas.
  • Mantiene idénticos los bytes del prefijo estable y añade después el estado dinámico.
  • Expone modelo, ruta, límite de organización/región, modo TTL e ID de solicitud.
  • Registra calentamiento serial y paralelo sin promediarlos.
  • Define por escrito tráfico elegible, denominador, ventana UTC, umbral y compensación.
  • Permite exportar evidencia por solicitud sin exponer claves ni contenido.

Si alguna respuesta es “no”, no uses la ruta para un workload cuya economía dependa de reutilización. Haz la prueba por la ruta directa del proveedor o usa un gateway auditable como Modelflare con el mismo corpus. Consulta también enrutamiento fiable de AI API, seguimiento de costes, precios y confianza.

Fuentes y fecha de verificación

Estas fuentes primarias se comprobaron el 2026-08-25. Definen contratos de proveedores y la política pública actual de Modelflare; no prueban una tasa universal para un agente de terceros no identificado.

Pregunta frecuente: ¿una tasa baja siempre significa fraude?

No. Prompts cortos, prefijos cambiantes, rutas dispersas, expiración TTL o campos ausentes pueden explicar el valor. El hallazgo correcto es “no reproducible” o “no auditable” hasta hallar la causa con una prueba controlada.

Pregunta frecuente: ¿puedo comparar Claude y GPT con un número?

Solo después de normalizar el denominador y conservar los campos nativos. Compara el mismo corpus y fase, no un total mezclado del panel.

Pregunta frecuente: ¿la compensación elimina la necesidad de un prefijo estable?

No. La compensación limita el riesgo financiero del tráfico OpenAI elegible; no hace reutilizable una solicitud no elegible ni repara un agente que reescribe el prefijo.