PagedAttention a vLLM
PagedAttention je technika správy paměti, která ukládá mezipaměť pozornosti jazykového modelu do malých opakovaně použitelných bloků namísto jednoho velkého souvislého bloku.
Přehled
It powers vLLM, an open-source serving engine that dramatically boosts how many requests a single GPU can handle.
Hluboký ponor
Když jazykový model generuje text, uchovává „vyrovnávací paměť KV“ (vektory klíčů a hodnot) pro každý token, který viděl, takže další token se může věnovat celému kontextu. Tradičně každý požadavek rezervoval jednu velkou souvislou část paměti GPU dimenzovanou na maximální možnou délku, čímž se plýtvalo obrovské množství, když byly sekvence kratší nebo různé délky. PagedAttention, představený v dokumentu vLLM z roku 2023 od UC Berkeley, si vypůjčuje myšlenku stránkování virtuální paměti z operačních systémů: rozděluje mezipaměť KV na bloky pevné velikosti, které mohou žít kdekoli v paměti a přidělovat je na vyžádání. Vyhledávací tabulka mapuje pozice logických tokenů na fyzické bloky. To téměř eliminuje fragmentaci paměti a umožňuje sdílení bloků, například přes více výstupů ze stejné výzvy.
Technický přehled
Mezipaměť KV je rozdělena na stránky pevné velikosti, z nichž každá obsahuje klíče a hodnoty pro nastavený počet tokenů. Tabulka bloků pro jednotlivé sekvence mapuje logické pozice na umístění fyzické stránky, takže mezipaměť sekvence nemusí být souvislá. Vzhledem k tomu, že identické předpony (sdílená systémová výzva nebo větve pro vyhledávání pomocí paprsku) mohou ukazovat na stejné fyzické stránky prostřednictvím kopírování při zápisu, je paměť znovu použita namísto duplikace, což snižuje odpad z více než 60 % na několik procent.
Strategický dopad
Cena a rozpočet
Rozhodnutí o architektuře zvyšují výkon a provozní náklady po mnoho let.
Jasnější rozhodnutí
Technické vzdělání pomáhá týmům vybrat ten správný stack, nejen ten nejnovější.
Kontrola kvality
Lepší konstrukční volby snižují výskyt problémů se spolehlivostí ve výrobě.
Budoucnost PagedAttention a vLLM
vLLM se stal výchozí páteří pro odvození open source a nápady PagedAttention se nyní objevují ve většině obslužných zásobníků. Očekávejte hlubší ukládání prefixů do mezipaměti (opětovné použití systémových výzev uložených v mezipaměti mezi uživateli), rozčleněné předvyplnění a dekódování na samostatných počítačích, chytřejší zásady vystěhování a úzkou integraci s kvantizací a spekulativním dekódováním. Jak kontextová okna narůstají do milionů tokenů, efektivní správa stránkovaných KV se stává ještě důležitější pro udržení dostupnosti poskytování služeb.
Real-World Implementace
Hostování open-source LLM API, kde vLLM obsluhuje mnoho souběžných uživatelů chatu z jednoho GPU s vysokou propustností
Sdílení dlouhé systémové výzvy pro tisíce požadavků prostřednictvím mezipaměti prefixů, takže je zpracována jednou, nikoli opakovaně
Vyhledávání běžícím paprskem nebo vícenásobná vzorkovaná dokončení, která sdílejí KV bloky pro společnou výzvu prostřednictvím kopírování při zápisu
Omezení plýtvání pamětí GPU z fragmentace, aby poskytovatel mohl zabalit více simultánních relací na stejný hardware
Rizika a zábradlí
Optimalizace jednoho benchmarku může skrýt širší systémové slabiny.
Náklady na infrastrukturu a údržbu jsou často podceňovány.
Mezery v zabezpečení a pozorovatelnosti se mohou zvětšovat, jak se systémy stávají složitějšími.
Plán implementace
Před implementací definujte cíle latence, kvality a nákladů.
Benchmark za realistických podmínek zatížení a dat.
Monitorování chyb, posunu a dopadu na uživatele.
Před škálováním připravte cesty vrácení zpět a reakce na incidenty.
Pokračujte v objevování
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.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
Další průvodce
Diferenciální soukromí
Často kladené otázky
What is PagedAttention and vLLM?
PagedAttention je technika správy paměti, která ukládá mezipaměť pozornosti jazykového modelu do malých opakovaně použitelných bloků namísto jednoho velkého souvislého bloku. Pohání vLLM, open-source obslužný engine, který dramaticky zvyšuje počet požadavků, které zvládne jediný GPU.
Co ukládá 'KV cache' během generování textu?
Mezipaměť KV uchovává klíčové a hodnotové vektory pro každý předchozí token, což umožňuje modelu věnovat se celému kontextu, aniž by jej každý krok přepočítával.
Jaký koncept operačního systému inspiroval PagedAttention?
PagedAttention si vypůjčuje stránkování virtuální paměti: mezipaměť KV je rozdělena na stránky pevné velikosti, které mohou žít kdekoli, mapované tabulkou bloků.
Jaký problém s tradiční alokací KV cache řeší PagedAttention?
Vyhrazení jednoho velkého souvislého slabě na požadavek, dimenzovaného na maximální délku, plýtvalo obrovským množstvím paměti GPU. Stránkování přiděluje malé bloky na požádání a omezuje odpad.
Jak PagedAttention umožňuje více výstupům sdílet paměť pro společnou výzvu?
Identické předpony (sdílené výzvy nebo větve prohledávání paprskem) odkazují na stejné fyzické stránky KV a kopírují se pouze tehdy, když se větev rozchází.
Kde byly původně vyvinuty vLLM a PagedAttention?
vLLM a algoritmus PagedAttention vyšly z UC Berkeley v dokumentu z roku 2023 a rychle se staly široce používaným open-source serverem.