LuAITools.com
提交工具
AI
Atención, más rápida y ligera

FlashAttention

FlashAttention replantea la atención con bloques y recálculo, recortando el uso de memoria y acelerando el cálculo: ya es estándar en los modelos de contexto largo.

¿Qué es FlashAttention?

La atención es el corazón del Transformer, pero tiene una mala costumbre: es lenta y devora memoria. Alarga la secuencia y la VRAM sube como una fuga. FlashAttention es un algoritmo de atención más rápido y barato que, con una programación ingeniosa, reduce a la vez el uso de memoria y el tiempo de cálculo.

¿Qué problema resuelve?

La memoria crece cuadráticamente con la longitud de la secuencia
La atención tradicional guarda entera una «matriz de atención» absurdamente grande. Duplica la secuencia y la memoria puede multiplicarse por cuatro.
El tráfico constante de memoria lo ralentiza
Buena parte del ir y venir entre niveles de memoria es movimiento desperdiciado.

¿Cómo lo consigue?

Tiling (por bloques)
En lugar de calcular la matriz entera de golpe, divide el trabajo en bloques pequeños que calcula en la memoria en chip, más rápida, quedándose solo con los resultados.
Recálculo
Lo que necesita la retropropagación no se guarda: se recalcula sobre la marcha, cambiando un poco de cálculo por una gran caída de memoria.
Menos movimiento de datos
Menos viajes de ida y vuelta por la memoria lenta significan que la GPU dedica su esfuerzo a calcular de verdad.

Por qué importa

FlashAttention se ha vuelto estándar en casi todos los grandes modelos. Hace viables contextos más largos y modelos más grandes: uno de los héroes discretos de que «los modelos crezcan mientras la memoria se encoge».

En resumen: FlashAttention adelgaza y acelera la atención — calcula por bloques y mueve menos datos, y obtienes memoria más barata y ejecuciones más rápidas.

Comentarios