Sprach-KI-GUIDE

Aufmerksamkeit bei mehreren Abfragen

Multi-Query Attention (MQA) ist eine speichersparende Variante der Transformer-Aufmerksamkeit, die einen Schlüssel- und Wertesatz für alle Aufmerksamkeitsköpfe gemeinsam nutzt.

2 Minuten gelesenZuletzt aktualisiert

Übersicht

It dramatically speeds up text generation by shrinking the memory the model must shuffle around.

Tiefer Einblick

Bei der standardmäßigen Multi-Head-Aufmerksamkeit erhält jeder Head seine eigenen Abfrage-, Schlüssel- und Wertprojektionen. Während der Generierung müssen die Schlüssel und Werte für alle vergangenen Token zwischengespeichert und bei jedem Schritt neu geladen werden – dieser KV-Cache wird zum größten Engpass, da das Lesen aus dem Speicher langsamer ist als die Berechnung selbst. Multi-Query Attention, 2019 von Noam Shazeer vorgeschlagen, behält separate Abfrageprojektionen pro Kopf bei, fasst die Schlüssel und Werte jedoch in einem einzigen gemeinsamen Kopf zusammen. Dadurch wird der KV-Cache um einen Faktor verkleinert, der der Anzahl der Köpfe entspricht, manchmal um das 8- bis 64-fache. Das Ergebnis ist eine viel schnellere autoregressive Dekodierung und ein geringerer Speicherbedarf bei nur geringfügigem Qualitätsabfall. Ein Mittelweg, Grouped-Query Attention, gleicht den Kompromiss aus.

Technischer Einblick

In MQA erzeugen Abfragegewichte immer noch H separate Abfragevektoren, aber eine einzelne Schlüsselprojektion und eine einzelne Wertprojektion werden von allen Köpfen gemeinsam genutzt. Jeder Kopf berechnet die Aufmerksamkeit mithilfe seiner eigenen Abfrage anhand derselben Schlüssel und Werte. Da die zwischengespeicherten K- und V-Tensoren nicht mehr mit der Anzahl der Köpfe skalieren, sinkt die Speicherbandbreite während der Dekodierung stark – und nicht die Rechenleistung, sondern die Bandbreite bestimmt die Generierungsgeschwindigkeit moderner Beschleuniger.

Strategische Auswirkungen

Geschwindigkeit und Umfang

Sprachworkflows können schneller ablaufen, ohne dass die Konsistenz darunter leidet.

Zugang und Erreichbarkeit

Es erweitert den Zugang über Sprachen und Kommunikationsstile hinweg.

Klarere Entscheidungen

Teams können mehr Zeit für die Beurteilung aufwenden, während die Automatisierung die Wiederholungen bewältigt.

Die Zukunft der Aufmerksamkeit bei mehreren Abfragen

MQA hat festgestellt, dass Sie redundante Schlüssel-/Wertköpfe ohne großen Schaden bereinigen können, und diese Erkenntnis prägt mittlerweile fast jedes Fast-Inference-LLM. Das Gebiet hat sich weitgehend dem Grouped-Query Attention (GQA) angenähert, das in Llama 2/3 und vielen anderen verwendet wird und einige wenige KV-Gruppen anstelle einer einzigen verwendet, um die Qualität wiederherzustellen und gleichzeitig den größten Teil der Geschwindigkeit beizubehalten. Zukünftige Arbeiten kombinieren diese Ideen mit KV-Cache-Komprimierung, Quantisierung und multilatenter Aufmerksamkeit, um längere Kontexte und eine kostengünstigere Bereitstellung zu fördern.

Reale Umsetzung

Beschleunigung der Token-für-Token-Generierung in Chat-Assistenten, bei denen der KV-Cache und nicht die Rohdatenverarbeitung den Durchsatz begrenzt.

PaLM von Google, das Multi-Query Attention nutzte, um eine effiziente groß angelegte Inferenz zu ermöglichen.

Bedienen vieler gleichzeitiger Benutzer auf einer GPU durch Verkleinern des KV-Cache-Speichers pro Anfrage.

Grouped-Query Attention in Llama 2 70B und Llama 3, ein direkter Nachkomme, der die Geschwindigkeit von MQA mit der Qualität der vollständigen Aufmerksamkeit in Einklang bringt.

Risiken und Leitplanken

Halluzinierte Fakten können still und leise in Berichte, Support-Flows oder Forschungsergebnisse einfließen.

Eine schnelle Sensibilität kann bei ähnlichen Anfragen zu inkonsistenten Ergebnissen führen.

Sensible Textdaten können offengelegt werden, wenn die Zugriffskontrollen schwach sind.

Implementierungs-Roadmap

1

Definieren Sie vor dem Rollout Ausgabeformat, Ton und Qualitätsstandards.

2

Bodenantworten mit vertrauenswürdigen Quellen, wann immer es auf Genauigkeit ankommt.

3

Halten Sie einen Kontrollpunkt für die menschliche Überprüfung für Ergebnisse mit hohem Risiko ein.

4

Verfolgen Sie Fehlermuster und trainieren Sie Eingabeaufforderungen oder Arbeitsabläufe regelmäßig neu.

Entdecken Sie weiter

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 Multi-Query Attention quiz

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

Quiz starten

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

Nächster Leitfaden

Achtung bei gruppierter Abfrage

Häufig gestellte Fragen

What is Multi-Query Attention?

Multi-Query Attention (MQA) ist eine speichersparende Variante der Transformer-Aufmerksamkeit, die einen Schlüssel- und Wertesatz für alle Aufmerksamkeitsköpfe gemeinsam nutzt. Es beschleunigt die Textgenerierung erheblich, indem es den Speicher verkleinert, den das Modell verschieben muss.

Was hat Multi-Query Attention mit allen Aufmerksamkeitsköpfen gemeinsam?

MQA verwaltet separate Abfragen pro Kopf, teilt jedoch eine Schlüsselprojektion und eine Wertprojektion für alle Köpfe.

Was ist der Hauptengpass, den MQA während der autoregressiven Generierung behebt?

Das Neuladen des großen KV-Cache ist bei jedem Schritt bandbreitengebunden. MQA verkleinert diesen Cache, um die Dekodierung zu beschleunigen.

Um welchen Faktor verkleinert MQA ungefähr den KV-Cache?

Da Schlüssel und Werte von H-Köpfen auf einen zusammenfallen, schrumpft der Cache um ungefähr die Kopfanzahl.

Was ist der Hauptkompromiss bei der Verwendung von MQA?

Durch die gemeinsame Nutzung von Schlüsseln und Werten wird die Darstellungskapazität geringfügig verringert, was zu einer geringfügigen Qualitätsminderung im Austausch für große Geschwindigkeitsgewinne führt.

Welche Variante liegt zwischen Standard-Multi-Head-Aufmerksamkeit und MQA?

Grouped-Query Attention (GQA) verwendet mehrere KV-Gruppen statt einer, um Qualität und Geschwindigkeit in Einklang zu bringen.