Connect with us

Umělá inteligence

Budoucnost serverless inference pro velké jazykové modely

mm

Poslední pokroky v oblasti velkých jazykových modelů (LLM) jako GPT-4, PaLM vedly k transformačním schopnostem v úkolech zpracování přirozeného jazyka. LLM jsou začleněny do různých aplikací, jako jsou chatboti, vyhledávače a programovací asistenti. Nicméně, poskytování LLM v měřítku zůstává výzvou kvůli jejich podstatným požadavkům na GPU a paměť.

Přístupy k překonání této výzvy se obecně dělí do dvou hlavních kategorií:

  1. Techniky komprese modelu

Tyto techniky mají za cíl snížit velikost modelu při zachování přesnosti. Společné přístupy zahrnují:

  • Ředění – Odstranění redundatních nebo méně důležitých parametrů z modelu. Tím se vytváří řídký model s méně parametry.
  • Kvantizace – Použití nižší přesnosti čísel, jako jsou int8 nebo bfloat16, pro reprezentaci váh místo fp32 nebo fp16. Tím se snižuje paměťový otisk.
  • Destilace znalostí – Školení menšího “student” modelu, aby napodoboval velký “učitel” model. Menší model se pak používá pro inference.
  1. Selektivní provádění

Místo komprimovaných modelů tyto techniky selektivně provádějí pouze části modelu pro inference:

  • Řídké aktivity – Přeskočení výpočtu na nulové aktivity.
  • Podmíněný výpočet – Provádění pouze určitých vrstev podmíněných na vstupu.

Na komplementární straně ve vztahu k softwarové architektuře; aby umožnily rychlejší nasazení LLM, výzkumníci navrhli serverless inference systémy. V serverless architekturách jsou LLM hostovány na sdílených GPU clusterech a dynamicky přidělovány na základě poptávky. To umožňuje efektivní využití GPU a snižuje náklady pro vývojáře. Významné implementace zahrnují Amazon SageMaker, Microsoft Azure ML a open-source možnosti, jako je KServe.

Navzdory slibům serverless LLM, existující systémy vykazují vysoké latency, které zhoršují uživatelský zážitek v interaktivních aplikacích:

  1. Nákladné stažení kontrolních bodů: LLM mají velké paměťové stopy, často gigabajty až terabajty velikosti. Stažení kontrolních bodů z vzdáleného úložiště je časově náročné, trvá více než 20 sekund, i s optimalizovanými sítěmi.
  2. Neefektivní načítání kontrolních bodů: I s místním úložištěm SSD, načítání kontrolních bodů do GPU paměti trvá desítky sekund kvůli faktorům, jako je deserializace tensorů a přidělování. To přidává významné zpoždění além času spouštění kontejneru.

Abyste tyto problémy vyřešili, výzkumníci z MIT CSAIL navrhli ServerlessLLM, inovativní systém, který dosahuje nízké latency serverless inference pro LLM. ServerlessLLM zlepšuje lokalitu využíváním hojné, ale nevyužité kapacity a šířky pásma ve víceúrovňovém serverovém úložišti pro nasazení LLM.

Přehled serverless inference systémů LLM

Přehled serverless inference systémů LLM

Klíčové inovace v ServerlessLLM ServerlessLLM zahrnuje několik nových návrhů, aby snížil časy načítání LLM v serverless prostředích:

  1. Rychlé načítání kontrolních bodů
  • Načítání-optimální formát kontrolního bodu, který umožňuje rychlé sekvenční čtení a efektivní adresování tensorů v paměti.
  • Víceúrovňový pipeline načítání kontrolních bodů, který maximalizuje využití šířky pásma napříč sítí, SSD, DRAM a GPU pamětí pomocí technik, jako je přímý I/O, přenos pinované paměti a paralelismus.
  1. Živá migrace pro lokalitu-driven inference
  • Token-based migrace, která přenáší pouze základní prompt tokeny přes síť, čímž se vyhýbá pomalému přenosu snímků.
  • Dvoufázová migrace, která umožňuje nepřerušené inference asynchronním přepočítáním stavů cache na cílovém serveru před přenosem konečných tokenů.
  1. Latency-optimální přidělování serveru
  • Přesné modely pro odhad časy načítání kontrolních bodů z každé úrovně a časy migrace pro server.
  • Lokalita-aware plánovač, který vybírá servery minimalizující očekávanou latenci spouštění pomocí výše uvedených modelů.

Tyto optimalizace umožňují ServerlessLLM snížit časy načítání LLM o 4-8X a časy spouštění o více než 25X ve srovnání s existujícími systémy, jako jsou PyTorch, TensorFlow a KServe.

Zrychlení načítání kontrolních bodů

První velkou překážkou, kterou ServerlessLLM řeší, je vysoká latence načítání LLM kontrolních bodů z úložiště do GPU paměti.

Abyste ermögnil rychlé načítání kontrolních bodů, ServerlessLLM zavádí:

  1. Načítání-optimální formát kontrolního bodu

Standardní kontrolní body používané rámci, jako je PyTorch, jsou navrženy pro školení modelu a ladění. Pro serverless inference jsou však kontrolní body pouze pro čtení a opakovaně přístupné.

Abyste optimalizovali pro takový čtení-intenzivní použití, ServerlessLLM převádí kontrolní body do formátu se dvěma klíčovými vlastnostmi:

  • Sekvenční chunk-based čtení: Tenzory jsou seskupeny do binárních souborů pro každou GPU, usnadňující velké sekvenční čtení.
  • Efektivní adresování tensorů: Index mapuje názvy tensorů na paměťové ofsety, umožňující přímou obnovu v paměti bez deserializace.
  1. Víceúrovňový pipeline načítání kontrolních bodů

ServerlessLLM využívá víceúrovňovou architekturu GPU serverů, s úložišti, jako jsou SSD a síťové připojení k GPU přes PCIe, NVMe atd.

Systém zahrnuje vícestupňový pipeline, aby maximalizoval využití šířky pásma napříč všemi úrovněmi:

  • Úložiště dat v paměti jsou přidělovány pomocí pinované paměti pro rychlý přenos GPU.
  • Přímý I/O se používá pro efektivní čtení SSD bez cache přetížení.
  • Více vláken čte různé úložné chunky paralelně.
  • Mezi-stupňová koordinace se provádí pomocí asynchronních front úloh.

Společně to umožňuje nasycení šířky pásma i nejrychlejších úrovní, jako je NVMe RAID. Experimenty ukazují, že ServerlessLLM dosahuje 6-8X rychlejšího načítání než PyTorch/TensorFlow, snižuje časy spouštění pro velké LLM z více než jedné minuty na méně než 10 sekund.

Lokalita-driven LLM inference prostřednictvím živé migrace

S urychleným načítáním, ServerlessLLM čelí nové výzvě – jak využít přednačtené kontrolní body pro lokalitu bez přerušení probíhajících inferencí na vytížených serverech?

ServerlessLLM zavádí novou techniku – živou migraci LLM inference napříč GPU servery. To umožňuje bezproblémový přenos provádění na servery s místními kontrolními body.

Klíčové enablery živé LLM migrace:

  1. Token-based migrace

Místo snímkování celého modelového stavu, ServerlessLLM migruje pouze minimální prompt tokeny přes síť. To přenáší řádově méně dat než snímky.

  1. Dvoufázová migrace

Cílový server asynchronně přepočítává stavy cache z prompt tokenů. Jakmile je připraven, zdroj serveru přenáší konečné tokeny před uvolněním zdrojů. To zabraňuje inferenčním zástavám.

Experimenty ukazují, že token-based migrace snižuje časy migrace z desítek sekund na méně než jednu sekundu, i pro dlouhé sekvence. Živá migrace je zásadní pro prevenci fronty zpoždění při dosahování lokalita-driven alokace.

Latency-optimální plánování modelu

Abyste minimalizovali konečné latency, ServerlessLLM vylepšuje plánovač, aby optimalizoval výběr serveru s ohledem na lokalitu. To zahrnuje:

  1. Jemný odhad času načítání

Modely předpovídají časy načítání z sítě, SSD cache a paměti pro každý server pomocí metrik, jako jsou fronty zpoždění, velikosti modelu a měřené šířky pásma.

  1. Přesný předpověď času migrace

Plánovač odhaduje časy migrace pro servery pomocí počtu prompt a výstupních tokenů. Sleduje pokrok inference asynchronně, aby se předešlo přetížení.

  1. Lokalita-aware přidělování

Pro každou žádost o inference, plánovač vyhodnocuje odhadované časy načítání a migrace napříč servery. Vybere server, který minimalizuje očekávanou latenci spouštění.

Plánovač také udržuje fronty úloh serveru a využívá silně konzistentní úložiště pro odolnost proti chybám. Společně tyto inovace snižují přetížení plánování, zatímco maximalizují výhody lokalizace.

Hodnocení výkonu ServerlessLLM

Komplexní experimenty měří konečnou efektivitu ServerlessLLM proti existujícím systémům pomocí reálných modelů, jako je OPT-175B, a zátěží modelovaných podle Azure stop.

Klíčové výsledky:

  • Mikrobenchmarky: ServerlessLLM urychluje načítání kontrolních bodů o 3,6-8,2X ve srovnání s PyTorch/TensorFlow. To plně nasycuje šířku pásma úložiště, i pro nejnovější NVMe RAID.
  • Plánování: ServerlessLLM snižuje latenci alokace o 4-12X ve srovnání s náhodným plánováním, zdůrazňujícím výhody lokalita-aware plánování. Živá migrace zabraňuje frontám zpoždění.
  • Konečné latence: Pro velké modely, jako je OPT-30B, ServerlessLLM zlepšuje 99. percentil latence o 28-200X ve srovnání se systémy, jako jsou KServe a Ray Serve. To také zlepšuje efektivitu zdrojů.

Tyto podstatné zisky demonstrují schopnost ServerlessLLM překonat úzká místa v existujících serverless implementacích a odemknout sílu LLM pro interaktivní služby.

Optimalizace zavedené v ServerlessLLM, jako je víceúrovňové načítání, živá migrace a latency-driven plánování, mohou pomoci informovat návrh budoucích serverless architektur. Schopnost systému snížit časy načítání a spouštění odemkne nasazení velkých jazykových modelů pro praktické aplikace.

Vzhled do budoucnosti: Ongoing Challenges

I když je to významný skok vpřed, ServerlessLLM představuje pouze první krok v optimalizaci serverless inference pro masivní LLM. Několik otevřených problémů zůstává, včetně:

  • Předpověď reálné poptávky modelu pro vedení zajištění a přednačítání
  • Inteligentní umístění kontrolních bodů napříč servery pro maximalizaci cache zásahů
  • Efektivní škálování algoritmů plánování pro zpracování větších clusterů
  • Zajištění férovosti při přidělování zdrojů napříč modely a vývojáři
  • Generalizace inovací, jako je živá migrace, na další serverless zátěže

Řešení těchto oblastí může pomoci postavit na slibu serverless LLM a učinit jejich schopnosti ještě více přístupnými. Kromě systémových optimalizací, snížení značného uhlíkového otisku a potenciálních škod velkých modelů zůstává naléhavou prioritou.

ServerlessLLM demonstruje, že obrovský prostor pro inovace existuje v next-generation serverless architekturách pro AI zátěže. Jak LLM budou pokračovat ve zvětšování velikosti a popularity, řešení, jako je ServerlessLLM, které odemknou jejich škálovatelnost, budou mít stále větší dopad. Konvergence systémového a strojového učení výzkumu může zavést nové paradigmy ve službách, sdílení a škálování AI modelů bezpečně a udržitelně.

Já jsem strávil posledních pět let ponořen do fascinujícího světa Machine Learning a Deep Learning. Moje vášeň a odbornost mě vedly k tomu, abych přispěl k více než 50 různým softwarovým inženýrským projektům, se zvláštním zaměřením na AI/ML. Moje pokračující zvědavost mě také táhne směrem k Natural Language Processing, oblasti, kterou jsem ochoten dále prozkoumat.