Cost Optimization

Precios y Economía de Prompt Caching: Anthropic vs OpenAI vs DeepSeek

Respuesta rápida: El prompt caching reduce los costes de entrada en APIs de LLM entre un 50% y un 90% y recorta la latencia TTFT hasta un 85% al reutilizar los tensores del KV cache entre peticiones. Anthropic ofrece un 90% de descuento en lectura con puntos de corte explícitos (desde 1.024 tokens). OpenAI aplica un 50% automático sin recargo de escritura. DeepSeek logra entre 80% y 90% de ahorro con un umbral ultra bajo de 64 tokens y persistencia NVMe.


1. Introducción: La economía del estado en las APIs sin estado (Stateless)

Las APIs modernas de Modelos de Lenguaje Grande (LLM) son intrínsecamente sin estado (stateless): cada petición HTTP POST a /v1/chat/completions o /v1/messages debe incluir el historial completo, instrucciones de sistema, herramientas y contexto documental. Aunque este diseño simplifica el balanceo de carga en clústeres GPU, impone una carga económica devastadora en flujos de trabajo multi-turno con agentes autónomos.

En bucles de agentes —como Claude Code, Roo Code, Aider, Devin o motores RAG empresariales— el agente retransmite repetidamente prompts de sistema idénticos, esquemas OpenAPI y fragmentos de código. En el turno 15 de una tarea estándar, entre el 95% y el 98% de los tokens transmitidos son prefijos estáticos que el modelo ya ha procesado múltiples veces.

Históricamente, los proveedores cobraban la tarifa base completa por cada token en cada turno, obligando a los aceleradores a recalcular costosas multiplicaciones de matrices (fase prefill) sobre contexto inalterado. El Prompt Caching soluciona esta ineficiencia. Al almacenar los tensores de activación Key-Value (KV) en memoria GPU (HBM), memoria del host o discos NVMe ultrarrápidos, se omite por completo el cómputo redundante de prefill.

Los equipos de ingeniería que implementan prompt caching logran habitualmente reducciones de factura del 60% al 88%, recortando el Time-to-First-Token (TTFT) de varios segundos a cientos de milisegundos.


2. Arquitectura interna: Mecánica del KV Cache y cuello de botella del Prefill

Para entender la economía del almacenamiento en caché de prompts, es esencial analizar la física de inferencia de Transformers en aceleradores modernos (NVIDIA H100/B200, Google TPU v5e/v6e).

Pipeline de inferencia tradicional sin estado:
[Prompt estático + Esquemas de herramientas + Historial (64.000 tokens)]
                          │
                          ▼
            [Fase Prefill completa (O(N²) FLOPs)]
       Multiplicación densa de matrices recalcula todo Q, K, V
                          │
                          ▼
             [Primer token generado (TTFT: 2.8s)]
             [Coste: Tarifa base completa × 64.000 tokens]

Pipeline con Prompt Caching activado:
[Prefijo estático (60.000 tokens)] ──► [Coincidencia de Hash!] ──► [Cargar tensores KV cacheados]
                                                                        │ (Evita FLOPs de matrices)
[Consulta dinámica (4.000 tokens)] ──► [Prefill solo para delta] ───────┤
                                                                        ▼
                                                       [Primer token generado (TTFT: 0.35s)]
                                                       [Coste: Tarifa lectura × 60k + Base × 4k]

El cuello de botella cuadrático del Self-Attention

En el mecanismo de autoatención, los tokens se proyectan en matrices Query ($Q$), Key ($K$) y Value ($V$):

$$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$$

En la fase de prefill, la GPU procesa todos los tokens en paralelo. Al evaluar las relaciones entre cada par de tokens, la complejidad computacional escala de forma cuadrática con la longitud de la secuencia $N$:

$$\text{FLOPs}_{\text{prefill}} \approx 2 \cdot P \cdot N^2 + 4 \cdot N \cdot d_{\text{model}} \cdot d_{\text{ffn}}$$

Para un modelo de 70B y un prompt de 64.000 tokens, el prefill requiere aproximadamente $5.8 \times 10^{14}$ operaciones de punto flotante antes de emitir la primera palabra.

En la fase de decodificación (decode), los tokens se generan secuencialmente. Para no recalcular los tokens anteriores, los vectores de activación $K$ y $V$ se almacenan en memoria: el KV Cache. La huella de memoria por token para $L$ capas con $H_{kv}$ cabezales de dimensión $D$ es:

$$\text{Memory}_{\text{KV}} = 2 \times 2 \times L \times H_{kv} \times D \quad \text{(bytes en FP16 / BF16)}$$

El Prompt Caching extiende este KV cache a lo largo de peticiones HTTP independientes. Cuando el hash del prefijo coincide, los tensores se cargan directamente de memoria, eludiendo la fase de prefill.


3. Matriz comparativa entre proveedores: Anthropic vs OpenAI vs DeepSeek

Dimensión Arquitectónica Anthropic Claude OpenAI (GPT-4o / o1 / o3) DeepSeek (V3 / V4 / R1)
Mecanismo de activación Puntos de corte explícitos (cache_control) Automático por prefijo común Automático por prefijo común
Umbral mínimo de activación 1.024 tokens (Sonnet/Opus)
2.048 tokens (Haiku)
1.024 tokens 64 tokens (Bloque de hardware)
Granularidad de bloques Breakpoints definidos (máx. 4/petición) Bloques de 128 tokens tras 1.024 Exactamente bloques de 64 tokens
Tiempo de vida (TTL) 5 minutos (efímero estándar)
1 hora (nivel extendido)
5 a 10 minutos (expulsión dinámica LRU) Horas o persistente (NVMe multinivel)
Reinicio de TTL Se renueva 5m/1h en cada acierto Extensión continua en uso Almacenamiento estable en disco
Recargo de escritura (Write) +25% (1.25x tarifa base para 5m)
+100% (2.0x base para 1h)
$0.00 (1.0x tarifa base de entrada) $0.00 (1.0x tarifa base, sin recargo)
Descuento de lectura (Read) 90% de descuento (0.10x tarifa base) 50% de descuento (0.50x tarifa base) 75% a 90% de descuento (0.10x–0.25x base)
Coste de almacenamiento Incluido en el recargo de escritura Gratis Gratis (en discos SSD NVMe)
Reducción de TTFT Hasta un 85% más rápido Hasta un 50% más rápido Hasta un 80% más rápido

4. Matriz global de precios por modelo (USD por 1M de tokens)

Modelo Entrada Base ($/1M) Escritura ($/1M) Lectura Caché ($/1M) Descuento Lectura Salida Base ($/1M) Umbral Mínimo
Claude 3.5 / 3.7 Haiku $0.80 $1.00 (5m) / $1.60 (1h) $0.08 90.0% $4.00 2.048 tokens
Claude 3.7 Sonnet $3.00 $3.75 (5m) / $6.00 (1h) $0.30 90.0% $15.00 1.024 tokens
Claude 3 Opus / Opus 4.6 $15.00 $18.75 (5m) / $30.00 (1h) $1.50 90.0% $75.00 1.024 tokens
OpenAI GPT-4o mini $0.15 $0.15 $0.075 50.0% $0.60 1.024 tokens
OpenAI GPT-4o $2.50 $2.50 $1.25 50.0% $10.00 1.024 tokens
OpenAI o1 $15.00 $15.00 $7.50 50.0% $60.00 1.024 tokens
OpenAI o3-mini $1.10 $1.10 $0.55 50.0% $4.40 1.024 tokens
DeepSeek V3 / V4 (Off-Peak) $0.14 $0.14 $0.014 90.0% $0.28 64 tokens
DeepSeek V3 / V4 (Peak) $0.27 $0.27 $0.027 90.0% $1.10 64 tokens
DeepSeek R1 (Razonamiento) $0.55 $0.55 $0.14 74.5% $2.19 64 tokens
Google Gemini 2.5 Flash $0.15 $0.15 $0.0375 75.0% $0.60 32.768 tokens
Google Gemini 2.5 Pro $1.25 $1.25 $0.3125 75.0% $5.00 32.768 tokens

5. Formulación matemática y prueba del 90% de ahorro

Cálculo del punto de equilibrio ($N^*$)

Para Anthropic con recargo de escritura del 25% ($R_{\text{write}} = 1.25 R_{\text{base}}$, $R_{\text{read}} = 0.10 R_{\text{base}}$):

$$1.25 + 0.10(N - 1) \le N \implies 1.15 \le 0.90N \implies N \ge \frac{1.15}{0.90} \approx 1.278$$

Teorema 1: Con el TTL de 5 minutos de Anthropic, el almacenamiento en caché es rentable a partir del segundo turno (N = 2). Para el TTL de 1 hora ($R_{\text{write}} = 2.0 R_{\text{base}}$):

$$2.0 + 0.10(N - 1) \le N \implies 1.90 \le 0.90N \implies N \ge 2.11$$

Teorema 2: Con el TTL de 1 hora de Anthropic, la rentabilidad neta se alcanza en el tercer turno (N = 3).

Límite asintótico del 90% de ahorro

En sesiones largas ($N \to \infty$):

$$\lim_{N \to \infty} S(N) = 1 - \frac{R_{\text{read}}}{R_{\text{base}}}$$

  • Anthropic y DeepSeek: $1 - 0.10 = \mathbf{90.0\%}$ de ahorro máximo.
  • OpenAI: $1 - 0.50 = \mathbf{50.0\%}$ de ahorro máximo.

6. Ejemplos de implementación en código

Anthropic Claude (Python)

import anthropic

client = anthropic.Anthropic()

response = client.messages.create(
    model="claude-3-7-sonnet-20250219",
    max_tokens=2048,
    system=[
        {
            "type": "text",
            "text": "Directrices de arquitectura empresarial...\n" * 400,
            "cache_control": {"type": "ephemeral"} # Punto de corte
        }
    ],
    messages=[{"role": "user", "content": "Diseña la capa de servicios."}]
)
print("Tokens leídos de caché:", getattr(response.usage, "cache_read_input_tokens", 0))

OpenAI (TypeScript / Node.js)

import OpenAI from "openai";
const openai = new OpenAI();

const res = await openai.chat.completions.create({
  model: "gpt-4o",
  messages: [
    { role: "system", content: "Guía de soporte corporativo...\n".repeat(400) },
    { role: "user", content: "Consultar estado de envío" }
  ]
});
console.log("Tokens en caché:", (res.usage as any)?.prompt_tokens_details?.cached_tokens ?? 0);

7. Casos de estudio en producción

  • Agentes de programación (Claude Code, 250k LOC Monorepo): 20 ingenieros redujeron su coste mensual de $29.700 a $4.334 / mes (85.4% de ahorro neto).
  • RAG de documentos extensos (OpenAI GPT-4o): 50.000 consultas mensuales sobre normativas de 45k tokens cayeron de $5.625 a $2.975,63 / mes (47.1% de ahorro).
  • Atención al cliente masiva (DeepSeek V3/V4): 2 millones de conversaciones mensuales pasaron de $3.360 a $378,34 / mes (88.7% de ahorro).

8. Cinco antipatrones que invalidan la caché

  1. Marcas de tiempo en el prompt de sistema: Invalidan el hash en cada segundo, dejando la tasa de acierto en 0%.
  2. Desorden en esquemas de herramientas (Tools): La serialización JSON aleatoria rompe el hash. Ordene las herramientas alfabéticamente.
  3. Variables dinámicas al inicio o en el medio: El caché exige prefijo común estricto. Mantenga siempre los datos fijos primero y los dinámicos al final.
  4. Olvidar el vencimiento de 5 minutos de TTL: Tras pausas prolongadas, use el TTL extendido de 1 hora.
  5. No alcanzar el umbral mínimo: Envíos menores a 1.024 tokens en Anthropic u OpenAI no activan el caché.

9. Veredicto final de LLMPodium

  • Para desarrollo y agentes de código: Anthropic Claude 3.7 Sonnet ofrece el mayor retorno de inversión gracias al 90% de descuento en lectura.
  • Para flujos existentes sin refactorización: OpenAI GPT-4o aporta un 50% de ahorro directo con cero esfuerzo de configuración.
  • Para volumen extremo al menor precio: DeepSeek V3/V4 no tiene rival con su umbral de 64 tokens y lectura a $0.014/1M.
← Todos los Artículos
0 / 4