GUÍA de IA en idiomas

Atención de consultas agrupadas

La atención de consultas agrupadas (GQA) es una forma de reducir la memoria necesaria durante la generación de texto al permitir que varios encabezados de consulta compartan los mismos encabezados de clave y valor.

2 minutos de lecturaÚltima actualización

Descripción general

It makes large models much faster to serve with almost no quality loss.

Buceo profundo

En una capa de atención estándar de múltiples cabezales, cada cabezal tiene sus propias consultas, claves y valores. Durante la generación, las claves y los valores de todos los tokens anteriores se almacenan en caché (el 'caché KV') para que el modelo no los vuelva a calcular. Con muchas cabezas y contextos largos, este caché se vuelve enorme y domina el ancho de banda de la memoria en el momento de la inferencia. GQA, presentado por investigadores de Google en 2023, agrupa los encabezados de consulta y proporciona a cada grupo un único conjunto compartido de encabezados de claves y valores. Si tiene 32 cabezales de consulta pero solo 8 grupos de KV, la caché de KV se reduce aproximadamente a cuatro veces. Esto se ubica entre la atención total de múltiples cabezas (cada cabeza separada) y la atención de múltiples consultas (un KV compartido para todas las cabezas), capturando la mayor parte de la velocidad de MQA mientras mantiene la calidad cerca de la atención total. Llama 2 70B y muchos modelos posteriores lo adoptaron.

Información técnica

La calidad de la atención depende en gran medida de tener muchas direcciones de consulta distintas, pero tolera compartir las claves y los valores. GQA explota esta asimetría: mantiene todos los encabezados de consulta pero replica cada encabezado KV compartido en las consultas de su grupo. Los ahorros se obtienen por inferencia, donde la caché KV es el principal consumidor de ancho de banda de memoria; Menos cabezales KV significan menos datos para leer por token generado. Los modelos a menudo se "mejoran" brevemente para convertir un punto de control de múltiples cabezales existente en uno de GQA.

Impacto Estratégico

Speed and scale

Los flujos de trabajo lingüísticos pueden avanzar más rápido sin sacrificar la coherencia.

Access and reach

Amplía el acceso a través de idiomas y estilos de comunicación.

Decisiones más claras

Los equipos pueden dedicar más tiempo a juzgar mientras la automatización se encarga de la repetición.

El futuro de la atención de consultas agrupadas

GQA es ahora un estándar predeterminado en los modelos de peso abierto porque intercambia limpiamente un pequeño costo de calidad por grandes ganancias en servicios. Espere que se combine cada vez más con otros trucos de eficiencia como FlashAttention, cuantificación de caché KV y esquemas más nuevos, como la atención latente de múltiples cabezales, que comprimen aún más el caché. A medida que crezcan las ventanas de contexto, controlar el tamaño de la caché KV seguirá siendo un problema central de diseño, y el uso compartido de cabezales estilo GQA seguirá siendo una palanca clave.

Implementación en el mundo real

Llama 2 70B y Llama 3 usan GQA para servir contextos largos con un caché KV más pequeño

Reducir la memoria de la GPU para que un modelo de chat grande quepa en menos aceleradores o más baratos

Acelerar la generación token por token en las API de producción donde el ancho de banda de la caché KV es el cuello de botella

Permitir tamaños de lote más grandes para atender a muchos usuarios simultáneamente sin agotar la memoria

Riesgos y barandillas

Los hechos alucinados pueden aparecer silenciosamente en informes, flujos de apoyo o resultados de investigaciones.

La sensibilidad rápida puede crear resultados inconsistentes en solicitudes similares.

Los datos de texto confidenciales pueden quedar expuestos si los controles de acceso son débiles.

Hoja de ruta de implementación

1

Defina el formato de salida, el tono y los estándares de calidad antes del lanzamiento.

2

Respuestas terrestres con fuentes confiables siempre que la precisión sea importante.

3

Mantenga un punto de control de revisión humana para los resultados de alto riesgo.

4

Realice un seguimiento de los patrones de error y vuelva a capacitar las indicaciones o los flujos de trabajo con regularidad.

Sigue explorando

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Grouped-Query Attention quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Iniciar prueba

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Preguntas frecuentes

What is Grouped-Query Attention?

La atención de consultas agrupadas (GQA) es una forma de reducir la memoria necesaria durante la generación de texto al permitir que varios encabezados de consulta compartan los mismos encabezados de clave y valor. Hace que los modelos grandes sean mucho más rápidos de servir y casi sin pérdida de calidad.

En Atención de consultas agrupadas, ¿qué se comparte entre un grupo de jefes de consulta?

GQA mantiene cabezales de consulta separados, pero permite que cada grupo comparta un conjunto de cabezales de clave y valor, lo que reduce la caché de KV.

GQA se describe mejor como un término medio, ¿entre qué dos extremos?

El cabezal múltiple le da a cada cabezal su propio KV; la consulta múltiple comparte un KV para todos los cabezales; GQA se encuentra en el medio con algunos grupos de KV.

¿Qué parte de la inferencia GQA abarata principalmente?

Los ahorros aparecen en el momento de la generación, donde la lectura de la caché KV es el costo de ancho de banda de memoria dominante.

Si un modelo tiene 32 cabezales de consulta y 8 grupos de KV, ¿en qué factor se reduce aproximadamente la caché de KV?

32 cabezales de consulta divididos por 8 grupos KV compartidos ofrecen aproximadamente una reducción de cuatro veces en claves y valores almacenados en caché.

¿Por qué GQA puede conservar la mayor parte de la calidad del modelo a pesar de compartir cabezales KV?

La atención tolera mucho mejor compartir claves y valores que perder distintas direcciones de consulta, por lo que GQA mantiene alta la calidad.