Technischer Leitfaden

PagedAttention und vLLM

PagedAttention ist eine Speicherverwaltungstechnik, die den Aufmerksamkeitscache eines Sprachmodells in kleinen wiederverwendbaren Blöcken statt in einem großen zusammenhängenden Block speichert.

  • 2 Minuten gelesen
  • Zuletzt aktualisiert
Auf dieser Seite2 Minuten gelesen
  1. Übersicht
  2. Tiefer Einblick
  3. Strategische Auswirkungen
  4. Die Zukunft von PagedAttention und vLLM
  5. Reale Umsetzung
  6. Risiken und Leitplanken
  7. Implementierungs-Roadmap
  8. Entdecken Sie weiter
  9. Häufig gestellte Fragen

Übersicht

It powers vLLM, an open-source serving engine that dramatically boosts how many requests a single GPU can handle.

Tiefer Einblick

Wenn ein Sprachmodell Text generiert, speichert es einen „KV-Cache“ (Schlüssel- und Wertvektoren) für jeden Token, den es gesehen hat, damit der nächste Token den vollständigen Kontext abdecken kann. Traditionell reservierte jede Anfrage eine große zusammenhängende GPU-Speicherplatte, die auf die maximal mögliche Länge ausgelegt war, wodurch große Mengen verschwendet wurden, wenn Sequenzen kürzer waren oder sich in der Länge unterschieden. PagedAttention, eingeführt im vLLM-Papier von UC Berkeley aus dem Jahr 2023, übernimmt die Idee des Paging des virtuellen Speichers von Betriebssystemen: Es teilt den KV-Cache in Blöcke fester Größe auf, die sich an einer beliebigen Stelle im Speicher befinden und bei Bedarf zugewiesen werden können. Eine Nachschlagetabelle ordnet logische Token-Positionen physischen Blöcken zu. Dadurch wird die Speicherfragmentierung nahezu eliminiert und Blöcke können gemeinsam genutzt werden, beispielsweise über mehrere Ausgaben derselben Eingabeaufforderung hinweg.

Strategische Auswirkungen

Kosten und Budget

Architekturentscheidungen beeinflussen über Jahre hinweg die Leistung und die Betriebskosten.

Klarere Entscheidungen

Technische Schulungen helfen Teams dabei, den richtigen Stack auszuwählen, nicht nur den neuesten.

Qualitätskontrolle

Bessere technische Entscheidungen reduzieren Zuverlässigkeitsvorfälle in der Produktion.

Die Zukunft von PagedAttention und vLLM

vLLM ist zu einem standardmäßigen Open-Source-Inferenz-Backbone geworden, und die Ideen von PagedAttention erscheinen jetzt in den meisten Serving-Stacks. Erwarten Sie ein tieferes Präfix-Caching (Wiederverwendung zwischengespeicherter Systemaufforderungen für alle Benutzer), disaggregiertes Vorfüllen und Dekodieren auf separaten Computern, intelligentere Räumungsrichtlinien und eine enge Integration mit Quantisierung und spekulativer Dekodierung. Da Kontextfenster auf Millionen von Token anwachsen, wird eine effiziente ausgelagerte KV-Verwaltung noch wichtiger, um die Bereitstellung erschwinglich zu halten.

Reale Umsetzung

Hosten einer Open-Source-LLM-API, bei der vLLM viele gleichzeitige Chat-Benutzer von einer GPU mit hohem Durchsatz bedient

Teilen einer langen Systemaufforderung mit Tausenden von Anfragen über Präfix-Caching, sodass sie nur einmal und nicht wiederholt verarbeitet wird

Ausführen einer Strahlsuche oder mehrerer abgetasteter Vervollständigungen, die KV-Blöcke für die gemeinsame Eingabeaufforderung über Copy-on-Write teilen

Reduzierung der GPU-Speicherverschwendung durch Fragmentierung, sodass ein Anbieter mehr gleichzeitige Sitzungen auf derselben Hardware packen kann

Risiken und Leitplanken

  • Die Optimierung eines Benchmarks kann umfassendere Systemschwächen verbergen.

  • Infrastruktur- und Wartungskosten werden oft unterschätzt.

  • Sicherheits- und Beobachtbarkeitslücken können größer werden, wenn die Systeme komplexer werden.

Implementierungs-Roadmap

  1. Definieren Sie vor der Implementierung Latenz-, Qualitäts- und Kostenziele.

  2. Benchmark unter realistischen Last- und Datenbedingungen.

  3. Instrumentenüberwachung auf Fehler, Drift und Benutzereinflüsse.

  4. Bereiten Sie vor der Skalierung Rollback- und Incident-Response-Pfade vor.

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 PagedAttention and vLLM 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

Häufig gestellte Fragen

What is PagedAttention and vLLM?

PagedAttention ist eine Speicherverwaltungstechnik, die den Aufmerksamkeitscache eines Sprachmodells in kleinen wiederverwendbaren Blöcken statt in einem großen zusammenhängenden Block speichert. Es basiert auf vLLM, einer Open-Source-Serving-Engine, die die Anzahl der Anfragen, die eine einzelne GPU verarbeiten kann, erheblich steigert.

Was speichert der „KV-Cache“ bei der Textgenerierung?

Der KV-Cache speichert Schlüssel- und Wertvektoren für jedes vorherige Token, sodass das Modell den gesamten Kontext berücksichtigen kann, ohne ihn bei jedem Schritt neu berechnen zu müssen.

Welches Betriebssystemkonzept hat PagedAttention inspiriert?

PagedAttention nutzt das Paging des virtuellen Speichers: Der KV-Cache ist in Seiten fester Größe aufgeteilt, die überall gespeichert werden können und durch eine Blocktabelle zugeordnet werden.

Welches Problem mit der herkömmlichen KV-Cache-Zuweisung löst PagedAttention?

Durch die Reservierung einer großen zusammenhängenden Platte pro Anfrage, deren Größe auf die maximale Länge ausgelegt ist, wurden große Mengen an GPU-Speicher verschwendet. Beim Paging werden bei Bedarf kleine Blöcke zugewiesen, wodurch Verschwendung vermieden wird.

Wie ermöglicht PagedAttention, dass mehrere Ausgaben den Speicher für eine gemeinsame Eingabeaufforderung gemeinsam nutzen?

Identische Präfixe (gemeinsame Eingabeaufforderungen oder Beam-Search-Zweige) verweisen auf dieselben physischen KV-Seiten und werden nur kopiert, wenn ein Zweig divergiert.

Wo wurden vLLM und PagedAttention ursprünglich entwickelt?

vLLM und der PagedAttention-Algorithmus wurden 2023 in einer Arbeit von der UC Berkeley veröffentlicht und entwickelten sich schnell zu einer weit verbreiteten Open-Source-Serving-Engine.