Con hasta 4 millones de contextos de tokens y una inferencia 22 veces más rápida, StreamingLLM se ha vuelto popular y ha recibido 2,5 mil estrellas en GitHub.

Editor: Salsa De Huevo

Si ha experimentado la comunicación con cualquier robot de IA conversacional, definitivamente podrá recordar algunos momentos extremadamente "frustrantes". Por ejemplo, los puntos clave que mencionaste en la conversación del día anterior fueron completamente olvidados por la IA...

Esto se debe a que la mayoría de los LLM actuales solo pueden recordar un contexto limitado: al igual que los estudiantes que se preparan para los exámenes, sus pies quedarán expuestos después de un pequeño interrogatorio.

Imagínese si un asistente de IA en un chat pudiera hacer referencia contextual a una conversación de hace semanas o meses, o si pudiera pedirle al asistente de IA que resumiera un informe de miles de páginas, ¿no es envidiable?

Para que LLM recuerde más y mejor, los investigadores trabajan duro constantemente. Recientemente, investigadores del MIT, Meta AI y CMU propusieron un método llamado "StreamingLLM" para permitir que los modelos de lenguaje procesen sin problemas texto interminable.

* Dirección del papel:

  • dirección del proyecto:

El principio de funcionamiento de StreamingLLM es identificar y guardar los tokens iniciales anclados por los "sumideros de atención" inherentes al modelo para su razonamiento. Combinado con el caché continuo de tokens recientes, StreamingLLM acelera la inferencia 22 veces sin sacrificar la precisión. En tan solo unos días, el proyecto ha ganado 2,5K estrellas en la plataforma GitHub:

Específicamente, StreamingLLM permite que el modelo de lenguaje recuerde con precisión el puntaje de touchdown del último juego, el nombre del recién nacido, el contrato extenso o el contenido del debate, al igual que la memoria del asistente de IA se ha actualizado para manejar perfectamente. cargas de trabajo más pesadas.

A continuación veamos los detalles técnicos.

Innovación de métodos

Por lo general, LLM está limitado por la ventana de atención cuando está previamente capacitado. Aunque se ha realizado mucho trabajo previo para expandir este tamaño de ventana y mejorar la eficiencia del entrenamiento y la inferencia, la longitud de secuencia aceptable de LLM aún es limitada, lo que no es amigable para la implementación persistente.

En este artículo, los investigadores introdujeron por primera vez el concepto de aplicaciones de transmisión de LLM y formularon la pregunta: "¿Se puede implementar LLM con entradas infinitamente largas sin sacrificar la eficiencia y el rendimiento?"

Hay dos desafíos principales al aplicar LLM a flujos de entrada infinitamente largos:

  1. Durante la fase de decodificación, el LLM basado en transformador almacena en caché el estado de clave y valor (KV) de todos los tokens anteriores, como se muestra en la Figura 1 (a), lo que puede causar un uso excesivo de la memoria y aumentar la latencia de decodificación;

  2. La capacidad de extrapolación de longitud de los modelos existentes es limitada, es decir, cuando la longitud de la secuencia excede el tamaño de la ventana de atención establecido durante el entrenamiento previo, su rendimiento disminuirá.

Un método intuitivo se llama Atención de ventana (Figura 1 b). Este método solo mantiene una ventana deslizante de tamaño fijo en el estado KV del token más reciente, aunque puede garantizar que pueda mantener un uso de memoria estable y una velocidad de decodificación, pero una vez que la longitud de la secuencia excede el tamaño de la caché, o incluso simplemente desaloja el KV del primer token, el modelo colapsará. Otro método es recalcular la ventana deslizante (que se muestra en la Figura 1 c). Este método reconstruye el estado KV del token reciente para cada token generado. Aunque el rendimiento es poderoso, requiere el cálculo de atención secundaria dentro de la ventana. El resultado es significativamente más lento, lo que no es ideal en aplicaciones de transmisión reales.

En el proceso de comprender la falla de la atención de la ventana, los investigadores descubrieron un fenómeno interesante de LLM autorregresivo: como se muestra en la Figura 2, se asigna una gran cantidad de puntajes de atención a los tokens iniciales, independientemente de si estos tokens están relacionados con la tarea de modelado del lenguaje. . .

Los investigadores llaman a estos tokens "grupos de atención": aunque carecen de significado semántico, ocupan una gran cantidad de puntos de atención. Los investigadores atribuyen este fenómeno a Softmax (que requiere que la suma de las puntuaciones de atención de todos los tokens de contexto sea 1). Incluso si la consulta actual no tiene una fuerte coincidencia entre muchos tokens anteriores, el modelo aún necesita transferir estas atenciones innecesarias. Los valores se asignan en algún lugar para que sumen 1. La razón por la que el token inicial se convierte en un "grupo" es intuitiva: debido a las características del modelado del lenguaje autorregresivo, el token inicial es visible para casi todos los tokens posteriores, lo que los hace más fáciles de entrenar como un grupo de atención.

Con base en los conocimientos anteriores, los investigadores propusieron StreamingLLM, un marco simple y eficiente que permite que un modelo de atención entrenado utilizando una ventana de atención limitada procese texto infinitamente largo sin ajustes.

StreamingLLM aprovecha el hecho de que los grupos de atención tienen valores de atención altos, y retener estos grupos de atención puede hacer que la distribución de la puntuación de atención se acerque a una distribución normal. Por lo tanto, StreamingLLM solo necesita retener el valor KV del token del grupo de atención (solo 4 tokens iniciales son suficientes) y el valor KV de la ventana deslizante para anclar el cálculo de atención y estabilizar el rendimiento del modelo.

Usando StreamingLLM, modelos que incluyen Llama-2-[7,13,70] B, MPT-[7,30] B, Falcon-[7,40] B y Pythia [2.9,6.9,12] B pueden simular 4 de manera confiable Millones de tokens o incluso más.

En comparación con la única línea de base viable, recalcular la ventana deslizante, StreamingLLM es 22,2 veces más rápido sin sacrificar el rendimiento.

Evaluación

En la sesión experimental, como se muestra en la Figura 3, en texto que abarca 20K tokens, la perplejidad de StreamingLLM es comparable a la línea base de Oracle (recalculando la ventana deslizante). Al mismo tiempo, cuando la longitud de entrada excede la ventana de preentrenamiento, la atención densa fallará, y cuando la longitud de entrada excede el tamaño de la caché, la atención de la ventana tendrá problemas, lo que provocará que se elimine el token inicial.

La Figura 5 confirma además que StreamingLLM puede manejar de manera confiable texto de tamaños inusuales, incluidos más de 4 millones de tokens, que cubren una variedad de familias de modelos y tamaños. Esto incluye Llama-2-[7,13,70] B, Falcon-[7,40] B, Pythia-[2.8,6.9,12] B y MPT-[7,30] B.

Posteriormente, los investigadores confirmaron la hipótesis del "grupo de atención" y demostraron que el modelo de lenguaje se puede entrenar previamente y solo requiere un token del grupo de atención durante la implementación de la transmisión. Específicamente, recomiendan agregar un token de aprendizaje adicional al comienzo de todas las muestras de capacitación como un grupo de atención designado. Al entrenar previamente un modelo de lenguaje con 160 millones de parámetros desde cero, los investigadores demostraron que este método puede mantener el rendimiento del modelo. Esto contrasta marcadamente con los modelos de lenguaje actuales, que requieren la reintroducción de múltiples tokens iniciales como grupos de atención para lograr el mismo nivel de rendimiento.

Finalmente, los investigadores compararon la latencia de decodificación y el uso de memoria de StreamingLLM con la ventana deslizante de recálculo y lo probaron en una única GPU NVIDIA A6000 utilizando los modelos Llama-2-7B y Llama-2-13B. Como se muestra en la Figura 10, a medida que aumenta el tamaño de la caché, la velocidad de decodificación de StreamingLLM aumenta linealmente. El retardo de decodificación de este último aumenta en una curva cuadrática. Los experimentos han demostrado que StreamingLLM logra aceleraciones impresionantes, con la velocidad de cada token aumentada hasta 22,2 veces.

Para obtener más detalles de la investigación, consulte el artículo original.

Ver originales
Esta página puede contener contenido de terceros, que se proporciona únicamente con fines informativos (sin garantías ni declaraciones) y no debe considerarse como un respaldo por parte de Gate a las opiniones expresadas ni como asesoramiento financiero o profesional. Consulte el Descargo de responsabilidad para obtener más detalles.
  • Recompensa
  • Comentar
  • Compartir
Comentar
0/400
Sin comentarios
  • Anclado
Opere con criptomonedas en cualquier momento y lugar
qrCode
Escanee para descargar la aplicación Gate
Comunidad
Español
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)