Pre-Compiled Pipeline Shards for Distributed LLM Inference on Intel AI PC Fleets
Dit artikel presenteert een gedistribueerd inferentiesysteem dat vooraf gecompileerde OpenVINO pipeline-shards benut over meerdere vrije Intel AI PC's om interactieve snelheid van uitvoering van grote LLM's (tot 70B parameters) mogelijk te maken die de geheugenlimieten van een enkel apparaat overschrijden, waarbij een hoge doorvoer wordt bereikt door middel van geoptimaliseerde graph fusion, speculative decoding en request interleaving.
Oorspronkelijk artikel gelicentieerd onder CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dit is een AI-gegenereerde uitleg van het onderstaande artikel. Het is niet geschreven of goedgekeurd door de auteurs. Raadpleeg het oorspronkelijke artikel voor technische nauwkeurigheid. Lees de volledige disclaimer
In de wereld van de moderne computertechnologie is een nieuw soort persoonlijke computer opgekomen, uitgerust met krachtige processors die specifiek zijn ontworpen voor kunstmatige intelligentie. Deze machines, vaak te vinden in gestroomlijnde laptops, bevatten gespecialiseerde chips die grote taalmodellen kunnen draaien—programma's die in staat zijn om te schrijven, te redeneren en te converseren. Echter, een enkele machine heeft een harde limiet: het geheugen is te klein om de enorme "hersenen" van de meest geavanceerde modellen te bevatten, die veel meer opslag vereisen dan welk enkel apparaat ook kan bieden. Traditioneel moesten gebruikers om deze gigantische modellen te draaien vertrouwen op verre, dure cloudservers, waarbij ze hun vragen via het internet verstuurden en wachtten op een antwoord. Dit creëert een afhankelijkheid van externe infrastructuur en roept zorgen op over de privacy van gegevens, aangezien gevoelige informatie de lokale machine moet verlaten. De vraag die onderzoekers bezighield, was of een groep van deze gewone, ongebruikte persoonlijke computers samen zou kunnen werken, verbonden via een standaard kantoornetwerk, om een model te draaien dat te groot is voor elk individueel apparaat, terwijl de gegevens lokaal blijven en de respons snel genoeg is voor een echt gesprek.
Een team van onderzoekers zette zich scharrel om dit te beantwoorden door een systeem te bouwen dat een groot kunstmatig intelligentiemodel opdeelt in kleinere stukken, waarbij elk stuk aan één computer in een kleine vloot wordt toegewezen. Stel je een enorm boek voor dat te zwaar is voor één persoon om te dragen; in plaats van te proberen het alleen te tillen, staat een groep mensen in een rij, waarbij ieder een hoofdstuk vasthoudt. Terwijl het verhaal ontvouwt, leest de eerste persoon zijn hoofdstuk en geeft de context door aan de volgende, die zijn hoofdstuk leest, enzovoort, totdat de laatste persoon de zin afmaakt. In dit systeem zijn de "hoofdstukken" de lagen van het AI-model, en het "doorgeven" gebeurt via een standaard netwerkverbinding. De onderzoekers ontdekten dat het simpelweg op deze manier opsplitsen van het model niet genoeg was; de overdracht tussen computers was te traag, en het proces van het controleren van het werk was te onhandig, waardoor het systeem traag werd. Om dit op te lossen, ontwikkelden ze drie specifieke technieken die een trage, experimentele opstelling transformeerden in een snelle, bruikbare tool.
De eerste doorbraak betrof een subtiele verandering in hoe de modelstukken werden voorbereid voordat ze zelfs maar werden ingeschakeld. Wanneer de onderzoekers de modellagen aanvankelijk exporteerden om op de grafische chip van de computer te draaien, mist de software een cruciale optimalisatie die normaal gesproken zaken versnelt. Door een specifieke, eenvoudige instructie in de code van elk stuk te injecteren, ontsloten ze een verborgen efficiëntie in de grafische processor. Deze kleine aanpassing zorgde ervoor dat de opgesplitste stukken bijna net zo snel draaiden als het originele, niet-opgesplitste model op een enkele machine. Zonder deze fix was het systeem aanzienlijk trager, maar met deze fix verdween het prestatieverschil bijna volledig, wat bewees dat het model verdeeld kon worden zonder snelheid op te offeren.
De tweede uitdaging was het afhandelen van het "conceptieproces" (drafting) dat werd gebruikt om het nadenken van de AI te versnellen. Normaal gesproken raadt een kleiner, sneller model de volgende paar woorden, en controleert het hoofdmodel deze. Als de gok fout is, moet het hoofdmodel de onjuiste gok weggooien en opnieuw beginnen. Op de gespecialiseerde chips die in deze computers worden gebruikt, was de standaardmanier om een foutieve gok weg te gooien ongelooflijk traag, waarbij bijna een halve seconde werd verloren bij elke correctie—lang genoeg om de flow van het gesprek te verpesten. De onderzoekers vonden een slimme workaround: in plaats van de foutieve gokkjes fysiek uit het geheugen van de computer te verwijderen, vertelden ze de AI simpelweg om ze te negeren. Door de onjuiste gokken als onzichtbaar te markeren in de achtergrondgegevens, bereikte het systeem exact hetzelfde result%, maar in een fractie van een seconde. Dit stelde het systeem in staat om de snellere conceptietechniek te gebruiken zonder de straf, waardoor de AI veel responsiever aanvoelde.
De derde innovatie maakte het mogelijk om meerdere mensen tegelijkertijd te bedienen. In een standaardopstelling, terwijl één computer in de rij werkt, zitten de anderen vaak stil te wachten op hun beurt. De onderzoekers ontwierpen een methode waarbij de computers gelijktijdig taken van verschillende gebruikers konden jongleren. Terwijl één computer bezig was met een zin voor Gebruiker A, kon de volgende computer in de rij alvast beginnen met een zin voor Gebruiker B. Deze afwisseling van taken hield elke machine in de vloot bezig, wat de totale snelheid van de groep effectief vermenigvuldigde. In combinatie met de andere twee fixes, maakte deze aanpak een twee-computer-vloot in staat om twee gebruikers te bedienen met een snelheid die bijna twee keer zo snel is als een enkele computer die slechts één gebruiker bedient.
De resultaten werden gemeten op een vloot van drie high-end laptops verbonden via een standaard Wi-Fi-netwerk. In tests bediende een opstelling met twee computers die een populair 8-miljard-parameter model draaide, bijna twee gebruikers met een snelheid van 44 woorden per seconde, wat snel genoeg is voor een natuurlijke, interactieve conversatie. Dit was 1,79 keer sneller dan een enkele computer die hetzelfde model voor slechts één gebruiker draaide. Nog indrukwekkender was dat wanneer de onderzoekers een trage, langafstands internetverbinding simuleerden, het systeem bruikbaar bleef, terwijl een niet-geoptimaliseerde versie van dezelfde opstelling te traag werd om praktisch te zijn. Het systeem slaagde er ook in om op te schalen om een massief 70-miljard-parameter model te draaien, een omvang die geen enkele computer in de vloot alleen zou kunnen bevatten. Door dit gigantische model over vier computers te splitsen, bereikte het team interactieve snelheden, wat bewees dat een groep consumentenapparaten taken kon uitvoeren die voorheen waren voorbehouden aan enorme datacenters.
De studie onderzocht ook hoe dit systeem zich gedraagt onder verschillende omstandigheden. Ze ontdekten dat de snelheid van het netwerk minder belangrijk was dan de efficiëntie van de hand-overs tussen computers. Wanneer de verbinding traag was, compenseerde het systeem door meer woorden tegelijkertijd in één passage te verwerken, wat de vertragingen uitvlaktte. Ze testten het systeem ook op een echt, breed netwerk over het internet, waarbij de resultaten bevestigden dat de vloot, met de juiste optimalisaties, een steady gesprekssnelheid kon behouden, zelfs wanneer de computers ver uit elkaar stonden. De onderzoekers merkten op dat hoewel het systeem goed werkt, het afhankelijk is van het feit dat de computers in een vertrouwde omgeving werken, aangezien het geen ingebouwde beveiligingsfuncties zoals encryptie of authenticatie bevat. Bovendien observeerden ze dat de fysieke hitte die de computers tijdens langdurig gebruik genereerden, de computers uiteindelijk kon vertragen, een factor die beheerd zou moeten worden in een echte implementatie.
Uiteindelijk toont dit werk aan dat de barrière voor het draaien van krachtige kunstmatige intelligentie niet alleen de hardware is, maar hoe die hardware wordt gebruikt. Door te heroverwegen hoe modellen worden opgesplitst, hoe fouten worden gecorrigeerd en hoe meerdere gebruikers worden bediend, kan een kleine groep gewone computers fungeren als één krachtige machine. De onderzoekers maakten hun code en gegevens beschikbaar voor het publiek, zodat anderen de resultaten kunnen verifiëren en voort te bouwen op het systeem. De bevindingen suggeren dat organisaties in de nabije toekomst hun eigen private, snelle AI-clusters kunnen draaien met de computers die ze al bezitten, waardoor gegevens lokaal blijven en de afhankelijkheid van externe clouddiensten wordt verminderd. Het systeem bewees dat met de juiste software, de collectieve kracht van een vloot ongebruikte machines kan worden ingezet om problemen op te lossen die ooit dachten een supercomputer te vereisen.
Verdrinkt u in papers in uw vakgebied?
Ontvang dagelijkse digests van de nieuwste papers die bij uw onderzoekswoorden passen — met technische samenvattingen, in uw taal.