Wat gebeurt er wanneer een thuis-AI-server veel modellen paraat houdt?

Eva Wong is de Technisch Schrijver en en vaste knutselaar bij ZimaSpace. Een levenslange geek met een passie voor homelabs en open-source software, zij is gespecialiseerd in het vertalen van complexe technische concepten naar toegankelijke, praktische handleidingen. Eva gelooft dat zelf-hosting leuk moet zijn, niet intimiderend. Met haar tutorials stelt ze de community in staat om hardware-setup te ontrafelen, van het bouwen van hun eerste NAS tot het beheersen van Docker-containers.

Veel lokale AI-modellen warm houden vermindert koude starts, maar zet gedeeld geheugen om in permanente verplichtingen voor gewichten, runtime, cache en werkruimte.

Een homeserver kan afzonderlijke modellen gereed houden voor chat, embeddings, spraak, beeld, beeldgeneratie, programmeren en automatisering. Elk warm proces lijkt tussen verzoeken inactief, maar de gewichten en runtimecontext blijven in het geheugen aanwezig, zodat de volgende aanroep snel kan starten. De gecombineerde voetafdruk verkleint het geheugen dat beschikbaar is voor lange contexten, gelijktijdige gebruikers, tijdelijke tensors en niet-AI-diensten. Zodra de capaciteit krap wordt, begint het systeem werk uit het geheugen te verwijderen, te verplaatsen of te weigeren. Zo wordt een poging om koude starts te elimineren een andere bron van instabiele latentie.

Elk warm model neemt een permanente geheugenbasis in

Een model dat in het geheugen aanwezig blijft, houdt zijn gewichten in GPU-geheugen, unified memory of systeem-RAM. Het serveerproces kan ook bibliotheken, uitvoeringscontexten, gecompileerde kernels en allocatorpools vasthouden.

WarmServe behandelt het voorverwarmen van modellen als een plaatsingsprobleem, omdat het voorbereiden van één model het geheugen en het opstartpad van andere modellen kan verstoren.

Het computergebruik kan vrijwel nul zijn terwijl het geheugen bezet blijft. Een inactief dashboard betekent daarom niet dat het apparaat voldoende capaciteit heeft voor nog een warm model.

Gecombineerde aanwezigheid verkleint de ruimte voor context en gelijktijdigheid

Modelgewichten vormen alleen de vaste basis. Actieve prompts hebben daarnaast KV-cache, activaties en tijdelijke werkruimten nodig, boven op de al aanwezige warme modellen.

MuxServe plaatst modellen op basis van modelpopulariteit en het gedrag van hun bronnen, in plaats van ervan uit te gaan dat elk model volledig onafhankelijk en permanent aanwezig moet blijven.

Een server die drie inactieve modellen kan bevatten, kan alsnog falen wanneer één gebruiker een lange context indient of meerdere gebruikers actief worden. Bij een veilige planning van de geheugentoewijzing moet rekening worden gehouden met de dynamische piek, niet alleen met de grootte van de gewichtsbestanden.

De gids van ZimaSpace over concurrentie om acceleratgeheugen legt uit waarom afzonderlijke diensten elkaar al in de weg kunnen zitten voordat één proces zijn eigen geconfigureerde limiet bereikt.

Afzonderlijke runtimes dupliceren status die modellen zouden kunnen delen

Eén container per model kan upgrades en foutisolatie vereenvoudigen, maar elk proces kan zijn eigen acceleratorcontext, frameworkbibliotheken, gereserveerde allocatieruimte, tokenizer-assets en gedeelde modelonderdelen laden.

Kostenefficiënt aanbieden van meerdere modellen gebruikt dynamische geheugentoewijzing om verspilling door statische reserveringen per model te beperken.

Een uniforme inferentieserver kan duplicatie verminderen en de aanwezigheid van modellen coördineren, maar creëert ook afwegingen rond compatibiliteit en foutdomeinen. De juiste grens hangt af van de modelfamilies, beveiliging en runtimeondersteuning.

-15% OFF
Single board computer zimaboard2

Verwijdering zet geheugen druk om in vertraging bij het eerste verzoek

Wanneer een nieuw model of verzoek meer ruimte nodig heeft, kan de runtime een inactief model uit het geheugen verwijderen. De volgende aanroep van dat model moet de gewichten opnieuw laden en de uitvoeringsstatus opnieuw opbouwen.

ZimaSpace beschrijft de resulterende latentiepiek wanneer een eerder warm model niet langer aanwezig is.

Als meerdere modellen elkaar afwisselen bij onvoldoende geheugen, kan de server in een thrashingpatroon terechtkomen: elk verzoek verwijdert het model dat het volgende verzoek nodig heeft.

Langere keep-aliveperioden zijn alleen zinvol wanneer de kans op hergebruik groot genoeg is om het bezette geheugen te rechtvaardigen.

Warme modellen kunnen al vóór verwijdering voor interferentie zorgen

Processen die in het geheugen aanwezig blijven, kunnen gefragmenteerde allocatorblokken vasthouden, geheugenbandbreedte gebruiken tijdens gelijktijdige verzoeken en de beschikbare batch- of KV-capaciteit voor actieve diensten verkleinen.

AlpaServe gebruikt statistische multiplexing om modellen rond piekbelastingen te plaatsen, in plaats van voor elke afzonderlijke piek capaciteit te reserveren.

Een warm model heeft ook opportuniteitskosten: geheugen dat is gereserveerd voor een af en toe gebruikt beeldmodel kan niet tegelijkertijd meer chatgebruikers of een langere context ondersteunen.

De aanwezigheid van modellen moet vraag en hersteltijd volgen

Deel modellen in op basis van aanvraagfrequentie, latentiegevoeligheid, laadtijd, geheugengrootte en aanvaardbare terugvalopties. Houd kleine, veelgebruikte spraak- of chatmodellen aanwezig en laat zeldzame modellen op aanvraag laden.

WarmServe gebruikt plaatsing die rekening houdt met verwijdering, zodat bij beslissingen over voorverwarmen rekening wordt gehouden met de interferentie die ze veroorzaken.

Meet koude starts per model, het percentage warme treffers, aanwezige bytes, actieve geheugenpieken, het aantal verwijderingen en de frequentie waarmee van model wordt gewisseld. Gebruik afzonderlijke inactiviteitstime-outs in plaats van één algemene keep-alivewaarde.

Het doel is niet nul koude starts. Het doel is een stabiele mix waarin de modellen die direct moeten reageren warm blijven, zonder herhaalde verwijdering te veroorzaken of de capaciteit te verminderen die actieve huishoudelijke workloads nodig hebben.

Tech & AI HUB

Meer om te lezen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.