Hoeveel GPU-geheugen is nodig voor visueel-linguïstisch zoeken op een thuis-NAS?

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.

Zoeken met vision-language-modellen kan al beginnen rond 8–12 GB VRAM, maar de modelgrootte, kwantisatie, image tokens, contextlengte en gelijktijdigheid bepalen de betrouwbare ondergrens.

Een compact, gekwantiseerd model uit de 7B-klasse kan op een GPU met 8 GB laden, maar alsnog falen wanneer meerdere afbeeldingen met hoge resolutie en een lange chatgeschiedenis samen worden verwerkt. Bij zoeken kan ook een afzonderlijke image encoder en reranker worden gebruikt. De capaciteit moet piektoewijzingen tijdens runtime omvatten, niet alleen de bestandsgrootte van het model op schijf tijdens het drukste verwachte querypatroon.

Gewichten bepalen de ondergrens, niet de piek

Het theoretische geheugengebruik van gewichten is het aantal parameters vermenigvuldigd met het aantal bits per parameter. Zeven miljard parameters met vier bits nemen ongeveer 3,5 GB in beslag, vóór schalen, metadata, frameworkbuffers en niet-gekwantiseerde lagen. Een image encoder kan afzonderlijk zijn of in het model zijn geïntegreerd.

Een praktische uitleg van GPU-geheugencomponenten maakt onderscheid tussen modelgewichten, KV-cache, activaties en runtime-overhead. Alleen naar de bestandsgrootte kijken onderschat daarom het geheugengebruik tijdens inferentie.

Kwantisatie vermindert de geheugentoewijzing voor gewichten, maar verkleint niet elke toewijzing in dezelfde mate. Vision-projecties, tijdelijke attentionbuffers en sommige kernels kunnen in 16-bits precisie blijven. Een model dat maar net kan laden, laat geen ruimte over voor echte image queries.

Afbeeldingen worden tokens en runtimegegevens

Vision encoders delen afbeeldingen op in patches of schalen ze opnieuw, waarna ze visuele tokens naar het taalmodel sturen. Meer afbeeldingen, een hogere ondersteunde resolutie of dynamische tegelsegmentatie verhogen het aantal tokens. Die tokens vergroten de attention-berekeningen en, tijdens autoregressieve fasen, de vraag naar KV-cache.

Onderzoek naar visuele instructieafstemming laat zien hoe afbeeldingen via aangeleerde visuele representaties aan taalmodellen worden gekoppeld. De architectuur en voorbewerking bepalen hoeveel visuele kenmerken in de context terechtkomen.

Het bundelen van meerdere zoekopdrachten vermenigvuldigt de actieve beeld- en tekstgegevens, ook wanneer de gewichten gedeeld blijven. Daarom is een tier van 8–12 GB geschikt voor compacte zoekopdrachten door één gebruiker, terwijl 16–24 GB meer ruimte biedt voor grotere modellen, meerdere afbeeldingen of gelijktijdige aanvragen.

Waar VRAM-aanbevelingen niet meer opgaan

Systemen met unified memory, offloading naar de CPU, gesplitste encoders en embeddingzoekopdrachten die vanaf schijf worden uitgevoerd, veranderen de beperking. Offloading kan ervoor zorgen dat een model met minder VRAM werkt, maar verhoogt de latentie. Vooraf berekende image embeddings vereisen tijdens runtime veel minder vision-berekeningen dan voor elke query beschrijvingen genereren.

Een bespreking van KV-cache-toewijzing laat zien hoe contextlengte en KV-cache-toewijzing kleinere limieten kunnen afdwingen, zelfs wanneer de gewichten passen. Multimodale invoer legt dezelfde geheugenlimiet verder onder druk.

De bereiken gelden ook niet voor training of fine-tuning, waarvoor gradiënten en optimizerstatus nodig zijn. Ze beschrijven uitsluitend inferentie. Meer VRAM garandeert geen nauwkeurige zoekresultaten als image embeddings, OCR, metadatafusie of evaluatie zwak zijn.

-15% OFF
Single board computer zimaboard2

Controleer piekgebruik van VRAM met representatieve image queries

Laad het beoogde gekwantiseerde model, de encoder en de reranker en voer vervolgens representatieve queries uit met één afbeelding, meerdere afbeeldingen, hoge resolutie en een lange geschiedenis. Herhaal dit met de geplande gelijktijdigheid en registreer toegewezen en gereserveerde VRAM, out-of-memoryfouten, latentie tot het eerste token en de verwerkingstijd van afbeeldingen.

Test met een dataset voor bandbreedte van de image pipeline die overeenkomt met afbeeldingen en screenshots van creators, in plaats van synthetische lege invoer. Houd vooraf berekende en live gecodeerde paden gescheiden.

Selecteer een VRAM-tier waarbij de slechtste geldige query onder ongeveer 80–85 procent van de capaciteit blijft. Als alleen de image encoding piekt, verplaats die encoder dan of bereken embeddings vooraf. Als de KV-cache dominant is, beperk dan eerst de context of gelijktijdigheid voordat je ervan uitgaat dat een groter vision-model nodig is.

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.