A continuaciónSiguiente guía
Optimización de caché KV
Técnico
GUÍA de IA en idiomas
La caché KV almacena los vectores de clave y valor que un transformador ya ha calculado para tokens anteriores, por lo que no tiene que volver a calcularlos para cada nueva palabra que genera.
Escuche esta guíaNarrado por IA · ~2 min
It is the single biggest reason text generation is fast — and the main thing eating your GPU memory during long conversations.
Los transformadores generan texto un token a la vez, y la capa de atención de cada nuevo token debe compararse con cada token anterior. El mecanismo de atención convierte cada token en un vector de consulta, clave y valor. Sin el almacenamiento en caché, generar el token número 1000 significaría volver a calcular las claves y los valores de los 999 tokens anteriores en cada paso: un trabajo cuadrático y derrochador. La caché KV guarda esos vectores de clave y valor después de que se calculan por primera vez y los reutiliza, por lo que cada nuevo paso solo calcula vectores para el token más nuevo y atiende la caché almacenada. Esto reduce el costo por token de escalar con la longitud de la secuencia a aproximadamente constante. La compensación es la memoria: la caché crece linealmente con la longitud del contexto, el número de capas y las cabezas de atención, convirtiéndose a menudo en el consumidor de memoria dominante en el servicio de contexto prolongado.
Acelerar las respuestas del chatbot al reutilizar claves/valores almacenados en caché del historial de conversaciones en lugar de reprocesarlos cada turno.
Almacenamiento en caché de prefijo que comparte el caché durante un aviso prolongado del sistema entre muchos usuarios, lo que reduce los costos y la latencia.
PagedAttention de vLLM administra la caché KV en bloques para atender muchas solicitudes simultáneas en una GPU de manera eficiente.
Cuantificar la caché KV para reducir la precisión y adaptar contextos más largos a la memoria GPU limitada.
A medida que las ventanas de contexto se extienden a cientos de miles de tokens, la caché KV se convierte en el cuello de botella central, por lo que la innovación es intensa: cuantificación de la caché a 8 o 4 bits, políticas de desalojo que eliminan los tokens de baja importancia, uso compartido de prefijos de solicitudes cruzadas y descarga a la CPU o al disco. Los cambios arquitectónicos, como la atención latente de múltiples cabezas, comprimen el caché mismo. Espere un codiseño continuo de variantes de atención y sistemas de memoria destinados a servir en contextos muy prolongados de forma económica y con un alto rendimiento.
Boletín gratuito
Tres noticias verificadas sobre IA cada mañana de lunes a viernes, explicadas con claridad. Gratis para siempre y sin anuncios.
Un correo cada día laborable. Date de baja con un clic. Nunca vendemos ni compartimos tu dirección.
Ponte a prueba
Corrección inmediata en cada respuesta y un certificado para compartir, con un ID verificable, cuando apruebas un curso.
Apoya la educación gratuita sobre IA. AI Understanding es una organización sin fines de lucro 501(c)(3): sin anuncios ni muros de pago, nunca. Hacer una donación
La caché KV almacena los vectores de clave y valor que un transformador ya ha calculado para tokens anteriores, por lo que no tiene que volver a calcularlos para cada nueva palabra que genera. Es la principal razón por la que la generación de texto es rápida y la principal razón por la que consume la memoria de tu GPU durante largas conversaciones.
La caché KV contiene los vectores de clave y valor de tokens anteriores para que la atención pueda reutilizarlos en lugar de volver a calcularlos.
The cache reuses keys and values computed for earlier tokens instead of rebuilding them at every decode step. The new query still attends over cached positions, so attention work and cache memory continue to grow with context length.
La caché crece con la longitud de la secuencia, las capas y los encabezados, y a menudo se convierte en el consumidor dominante de memoria de GPU en el servicio de contexto prolongado.
La atención de consultas agrupadas y consultas múltiples permite que varios cabezales de consulta compartan menos conjuntos de claves/valores, lo que reduce sustancialmente el caché.
Prefill llena el caché con el K/V del mensaje; decode agrega un K/V de un nuevo token en cada paso y vuelve a asistir al caché.
sigue aprendiendo
Más guías seleccionadas para este tema.
A continuaciónSiguiente guía
Optimización de caché KV
Técnico