Cómo funcionan los precios de la API de LLM

Tokens, entrada versus salida, ventanas de contexto: por qué la misma tarea puede costar 50 veces más en un modelo que en otro, explicado de forma sencilla.

HogarAprender › Almacenamiento en caché rápido: cómo reducir los costos de llamadas repetidas

Almacenamiento en caché rápido: cómo reducir los costos de llamadas repetidas

Si su aplicación envía el mismo gran fragmento de texto al inicio de cada solicitud, un mensaje largo del sistema, un documento, un conjunto de ejemplos, está pagando el precio completo para volver a procesarlo cada vez. El almacenamiento en caché rápido permite al proveedor almacenar esa parte repetida y cobrarle mucho menos por reutilizarla. Si se utiliza bien, puede reducir drásticamente los costos de insumos en cargas de trabajo repetitivas.

¿Qué hace realmente el almacenamiento en caché de avisos?

Cuando un modelo procesa su entrada, la mayor parte del trabajo ocurre en los tokens de entrada antes de generar una sola palabra de salida. El almacenamiento en caché de mensajes guarda el estado procesado de un prefijo de su mensaje para que no sea necesario procesar nuevamente un prefijo idéntico en la siguiente llamada.

La palabra clave es prefijo. El almacenamiento en caché funciona desde el comienzo del mensaje, hasta el punto en que el contenido comienza a diferir. Si los primeros 5000 tokens de cada solicitud son idénticos (por ejemplo, un bloque de instrucciones fijo más un documento de referencia), esos tokens se pueden almacenar en caché, mientras que la pregunta única del usuario al final se procesa normalmente.

Por qué ahorra dinero

Los proveedores cobran mucho menos por los tokens leídos desde la memoria caché que por los tokens procesados ​​nuevos. Una estructura común es que los tokens de entrada almacenados en caché cuestan una pequeña fracción de la tarifa de entrada normal, a menudo alrededor de una décima parte, aunque el descuento exacto varía según el proveedor.

A continuación se muestra un ejemplo ilustrativo (tarifas inventadas para mayor claridad). Supongamos que la entrada normalmente cuesta $3 por millón de tokens y las lecturas en caché cuestan $0,30 por millón. Si envía un mensaje fijo de 10 000 tokens en 1000 llamadas, procesarlo de nuevo cada vez cuesta 10 000 x 1000 = 10 millones de tokens x $3 = $30. Con el almacenamiento en caché, la primera llamada paga el precio completo y el resto se lee desde la caché: aproximadamente 10.000 x 3 dólares/millón + 9,99 millones x 0,30 dólares/millón, cerca de 3 dólares. Ésa es la escala de ahorro que hacen posible los prefijos repetitivos.

Suele haber un coste de escritura y un límite de tiempo.

El almacenamiento en caché no es puramente gratuito. La mayoría de los proveedores cobran una pequeña prima por escribir contenido en el caché la primera vez, a veces alrededor de un 25% por encima de la tasa de entrada normal para esos tokens. Lo recupera en lecturas posteriores, por lo que el almacenamiento en caché solo da sus frutos cuando el mismo prefijo se reutiliza suficientes veces.

Los cachés también caducan. Un período de vida típico son unos pocos minutos de inactividad, y algunos proveedores ofrecen una retención más prolongada por un costo adicional. Si sus llamadas están muy separadas en el tiempo, el caché puede caducar entre ellas y usted perderá el beneficio. El almacenamiento en caché recompensa la reutilización ráfaga y de alta frecuencia del mismo contenido.

El almacenamiento en caché ahorra dinero, no espacio de contexto

Un error común es pensar que un prefijo almacenado en caché de alguna manera queda excluido de la ventana contextual del modelo, dejando más espacio para otro contenido. No es así. Los tokens almacenados en caché siguen siendo parte de la solicitud y aún cuentan para el límite de contexto total del modelo; el proveedor los lee desde un estado almacenado en lugar de reprocesarlos, pero ocupan el mismo presupuesto de contexto como si se hubieran procesado recientemente.

El almacenamiento en caché reduce lo que paga y el tiempo que espera para que se procesen esos tokens. No aumenta la cantidad de texto que el modelo puede ver a la vez. Si está alcanzando un límite de ventana de contexto, el almacenamiento en caché no lo solucionará; aún necesita recortar el historial, resumir o pasar a un modelo con una ventana más grande. El almacenamiento en caché solo ayuda una vez que el mensaje ya se ajusta.

Lo mismo se aplica a los límites de la tasa de tokens por minuto en la mayoría de los proveedores: los tokens almacenados en caché generalmente todavía se cuentan en su cuota de tokens por minuto, incluso al precio con descuento. Una carga de trabajo almacenada en caché de gran volumen aún puede tener una tasa limitada aunque la factura sea pequeña, porque el limitador está observando los recuentos de tokens, no los dólares.

Cuando el almacenamiento en caché vale la pena

El almacenamiento en caché rápido brilla en patrones específicos:

  • Avisos largos y fijos del sistema reutilizado entre muchos usuarios o solicitudes.
  • Preguntas y respuestas sobre el documento donde un documento grande se consulta muchas veces en una sesión.
  • Indicaciones de pocos disparos con un gran bloque de ejemplos que nunca cambia.
  • Chatbots donde los primeros giros de la conversación permanecen constantes mientras se añaden nuevos giros.

No vale la pena cuando cada solicitud es única, cuando su prefijo fijo es pequeño (unos pocos cientos de tokens) o cuando las llamadas son raras y están muy separadas, por lo que el caché sigue caducando.

Cómo estructurar indicaciones para el almacenamiento en caché

La regla de oro es: poner el contenido estable primero, el contenido variable al final. Ordene su mensaje de modo que las instrucciones del sistema, el material de referencia y los ejemplos que no cambian se encuentren en la parte superior y la pregunta específica del usuario en la parte inferior. Debido a que el almacenamiento en caché funciona en el prefijo compartido, cualquier variación cerca del inicio interrumpe el caché para todo lo que sigue.

Evite incluir valores dinámicos (marcas de tiempo, nombres de usuario, ID aleatorios) en la primera parte del mensaje. Incluso un solo carácter modificado desde el principio puede invalidar el caché. Mantenga esos bits dinámicos al final de la solicitud, donde pertenecen.

Estimando la recompensa

Para decidir si el almacenamiento en caché ayuda, compare dos números: el tamaño de su prefijo fijo en tokens y cuántas veces lo reutiliza dentro de la ventana de caché. Cuantas más fichas haya en el prefijo y cuantas más veces lo reutilices, mayor será la ganancia. Un pequeño prefijo reutilizado dos veces no ahorra casi nada; un prefijo de 20.000 tokens reutilizado cientos de veces por hora es donde el almacenamiento en caché transforma su factura.

Puede modelar ambos escenarios en la calculadora de costos de LLM comparando una ejecución con un precio total a la tasa de entrada estándar con otra en la que la mayoría de los tokens de entrada tienen un precio a la tasa almacenada en caché. Ver los dos totales uno al lado del otro hace que la decisión sea obvia, y las páginas de comparación de modelos muestran qué proveedores publican los precios de los tokens almacenados en caché.

Preguntas frecuentes

¿El almacenamiento en caché rápido cambia la salida del modelo?

No. El almacenamiento en caché solo reutiliza el estado de entrada procesado para ahorrar costos y latencia. El modelo produce el mismo resultado que tendría sin el almacenamiento en caché, porque los tokens subyacentes son idénticos.

¿Cuánto tiempo permanece válido un mensaje almacenado en caché?

Varía según el proveedor, pero un valor predeterminado común es unos minutos de inactividad antes de que caduque el caché. Algunos proveedores ofrecen retención extendida por una tarifa adicional. La reutilización frecuente mantiene el caché caliente.

¿Existe algún riesgo al almacenar en caché datos confidenciales?

El contenido almacenado en caché está vinculado a su cuenta y se utiliza únicamente para atender sus propias solicitudes repetidas, pero aun así debe seguir las políticas de datos de su proveedor y evitar almacenar en caché cualquier cosa que no esté autorizado a almacenar.

¿El almacenamiento en caché rápido me permite incluir más contenido en la ventana contextual?

No. Los tokens almacenados en caché aún cuentan para el límite de contexto total del modelo y, por lo general, también cuentan para su límite de tasa de tokens por minuto. El almacenamiento en caché reduce el costo y la latencia de los tokens que ya están dentro de su presupuesto contextual, no expande ese presupuesto.

Sólo educación, no asesoramiento financiero.

Tools & Hosting

📈 TradingView🔒 NordVPN💳 RevolutDigitalOcean $200Hostinger