‘Het draait een taalmodel op je apparaat’ is een zin waardoor mensen zich een ventilator voorstellen die op volle toeren draait en een laptop die warm wordt terwijl er niets gebeurt. Dat is een begrijpelijke voorstelling, want zo gaat het wanneer je een chatmodel op een slechte manier gebruikt.

Typsuggesties vormen een andere soort werklast. Hieronder lees je wat ze daadwerkelijk kosten, zodat je de grootte kunt afstemmen op de computer die je hebt.

Vier kostenposten, waarvan er maar één constant is

Schijf. Het modelbestand, eenmalig. Een paar honderd megabyte tot een paar gigabyte, bij het downloaden.

Geheugen. De modelgewichten moeten in het geheugen blijven zolang het model is geladen: ongeveer zo groot als het bestand, plus een bescheiden hoeveelheid extra werkgeheugen. Dit zijn de constante kosten en de kosten die bepalen of het model op je apparaat past. Op een laptop met 16 GB is één gigabyte voor een geladen model nauwelijks noemenswaardig. Op een laptop met 8 GB en een geopende browser is drie gigabyte dat wel.

Rekenkracht. Alleen wanneer een suggestie wordt gegenereerd. Bij het aanvullen van een zin is dat een piek van enkele honderden milliseconden, een paar keer per minuut, met daartussen vooral de pauzes tussen je eigen toetsaanslagen. Vergelijk dat met een chatassistent die zeshonderd woorden genereert en de processor meerdere seconden achter elkaar maximaal belast.

Batterij. Hangt samen met de rekenkracht. Korte pieken kosten weinig energie. De eerlijke kanttekening is dat een apparaat dat nooit in diepe energiebesparingsstanden terechtkomt meer verbruikt dan een apparaat dat dat wel doet. Het effect is dus niet precies nul.

Onthoud vooral dit: een typsuggestie wordt bijna altijd niet berekend. Het geheugen dat het model inneemt, is de echte kostenpost; de rest is verwaarloosbaar, tenzij het model veel te groot is voor het apparaat.

Waarom het bestand kleiner is dan je verwacht

Een model dat wordt aangeprezen als enkele honderden megabytes groot, heeft niet slechts enkele honderden miljoenen parameters. Modellen worden in gekwantiseerde vorm verspreid, waarbij de gewichten met minder precisie zijn opgeslagen — meestal met vier of vijf bits in plaats van zestien. Dat vermindert de grootte en het geheugengebruik met ongeveer een factor vier, tegen een bescheiden maar meetbaar kwaliteitsverlies.

Voor open redeneringen is dat verlies van belang. Voor het afmaken van een zin die je al bent begonnen, meestal niet, omdat de beperkingen voortkomen uit je eigen tekst en niet uit de diepgang van het model. Dat is de technische reden waarom een klein lokaal model geschikt is voor deze taak, maar niet voor andere.

De latentie is de echte beperking, niet de kwaliteit

Er geldt een harde deadline. Een suggestie die pas verschijnt nadat je de woorden zelf al hebt getypt, is slechter dan geen suggestie: ze verschijnt precies wanneer je klaar bent en je leest haar voor niets.

Die deadline begrenst de modelgrootte, ongeacht hoeveel geheugen je hebt. Vanaf een bepaald punt is een beter model een trager model, en trager betekent dat het niet wordt gebruikt. Het praktische doel is een suggestie die verschijnt terwijl je vingers nog in de ruimte tussen twee woorden zitten — in de orde van een paar honderd milliseconden, niet anderhalve seconde.

Dit draait de gebruikelijke intuïtie om. Groter is hier niet beter zodra het te laat is. De juiste grootte is de grootste die op jouw hardware nog binnen die tussenruimte antwoord geeft. Dat antwoord verschilt voor een ultrabook uit 2019 en een desktop met een losse grafische kaart.

Een grootte kiezen

Typeahead levert er drie, die rechtstreeks aansluiten op deze afweging.

Grootte Op schijf Vermelde vereiste Voor wie
Fast (standaard) ~600 MB — Elke ondersteunde machine; de juiste plek om te beginnen
Balanced ~1,2 GB 8 GB systeemgeheugen Machines met voldoende ruimte: betere suggesties, nog steeds comfortabel snel
Maximum quality ~2,5 GB Losse grafische kaart met 8 GB eigen geheugen, 16 GB systeemgeheugen Desktops en werkstations met een echte GPU

Twee dingen over deze tabel.

Begin met Fast, ook als je machine meer aankan. Gebruik het een week. Als de suggesties bruikbaar nauwkeurig zijn, levert een groter model niets op wat je tijdens het typen van een chatbericht zult merken. Als ze merkbaar afwijken, stap dan over naar een grotere variant — dan weet je ook waarvoor je de extra latentie inruilt.

Voor de hoogste klasse is een losse kaart met 8 GB eigen geheugen nodig, geen 8 GB gedeeld systeemgeheugen. Geïntegreerde grafische chips in een laptop voldoen daar niet aan, en een model op hardware forceren die het naar het wisselbestand moet schrijven, is precies hoe je de ervaring met een loeiende ventilator krijgt waarmee dit artikel begon.

Machines die echt krap zitten

  • 8 GB RAM met een browser, Teams en Office geopend. Je zit al bijna aan de limiet voordat er iets anders wordt geladen. Gebruik het kleinste model en verwacht dat je het meer zult merken dan iemand met 16 GB. Als je machine op een gewone dag al geheugen naar het wisselbestand schrijft, maakt een permanent actief model dat erger.
  • Oudere processors zonder AVX2. Inferentiebibliotheken maken intensief gebruik van vectorinstructies. Een processor van vóór 2013 zal trager zijn dan elk genoemd cijfer; de hierboven beschreven latentiegrens is dan de doorslaggevende factor.
  • Dunne laptops met thermische beperkingen. De korte piekbelasting maakt langdurige terugklokking door alleen deze werklast onwaarschijnlijk, maar een machine die door andere belasting al terugklokt, heeft geen ruimte over.
  • Op batterij, zonder stroomaansluiting. Suggesties blijven werken, want ze worden lokaal gegenereerd en hebben geen verbinding nodig. Als je het stroomverbruik voor een lange vlucht wilt beperken, is het kleinere model de beste keuze.

Zo controleer je het op je eigen machine

Metingen op iemands anders laptop zeggen je maar weinig. Twee metingen, tien minuten.

  1. 1. Voordat je iets installeert, open je Taakbeheer → Prestaties en noteer je het geheugengebruik tijdens een normale werksituatie: je gebruikelijke browsertabbladen, e-mail en chat.
  2. 2. Nadat je een model hebt geïnstalleerd en geladen, bekijk je hetzelfde cijfer en het geheugengebruik van de app zelf op het tabblad Processen.

Als je met dat verschil nog ruim onder je totaal blijft, zit je goed. Kom je daarmee tegen de limiet aan, kies dan een kleinere variant.

Latentie is subjectief, en dat is juist een voordeel: typ een zin die je normaal ook zou typen en let erop of de suggestie er al staat wanneer je vingers even pauzeren, of pas daarna verschijnt. Een proefperiode is de beste manier om daarachter te komen — die van Typeahead duurt zeven dagen en geeft toegang tot alle modelgroottes.

Wat je ervoor terugkrijgt

  • Niets wat je typt, verlaat de machine. Geen beleid over hoe een server met je tekst omgaat, maar een eigenschap van de plek waar die tekst wordt verwerkt.
  • Het werkt zonder verbinding. In een vliegtuig, in een trein of op hotel-wifi die geen DNS-adressen meer kan opzoeken.
  • Geen abonnement per gebruiker en geen account, omdat er geen server is waarvoor betaald moet worden.
  • Geen wisselende latentie. Een lokaal model is om 9.00 uur even snel als om 17.00 uur; dat geldt niet voor een gedeelde dienst.

Of dat een gigabyte permanent gebruikt geheugen waard is, is een terechte vraag waarop het antwoord per persoon verschilt. De vraag is kleiner dan ze klinkt, en binnen een week kun je haar beantwoorden.

Veelgestelde vragen

Hoeveel RAM heeft een lokaal model voor typen nodig?
Ongeveer de bestandsgrootte van het model plus wat extra geheugen zolang het is geladen. Een model van 600 MB vraagt in de praktijk een paar honderd megabyte geheugen; een model van 2,5 GB vraagt een paar gigabyte. Vergelijk dat met het geheugen dat je browser al gebruikt voordat je besluit dat het veel is.
Gebruikt het de GPU?
Dat kan. Voor de grootste versie wordt een aparte grafische kaart met 8 GB eigen geheugen aanbevolen. De kleinere modellen draaien voor deze taak prima op de processor.
Vreet het batterij?
Alleen in verhouding tot hoe vaak het actief is. Voor typsuggesties zijn dat korte momenten, een paar keer per minuut. Het is niet te vergelijken met een chatassistent die lange antwoorden genereert en verbruikt veel minder dan een videogesprek.
Geeft een groter model betere suggesties?
Een beetje, en boven een bepaald formaat komen de suggesties later, wat slechter is. De juiste grootte is het grootste model dat nog antwoord geeft voordat je vingers verdergaan.
Wat gebeurt er als ik offline ben?
Er verandert niets. Zodra het model is gedownload, worden suggesties op je apparaat gegenereerd. Een verbinding is alleen nodig om een model te downloaden of op updates te controleren.
Kan ik na aankoop de modelgrootte wijzigen?
Ja. Het is een instelling, geen editie. Een andere modelgrootte downloaden en daarnaar overschakelen is de bedoeling: zo vind je de versie die bij je past.
Schrijft een klein model slecht?
Het schrijft geen teksten; het maakt je zin af. De woorden vóór de cursor bepalen het grootste deel van de beperking. Daarom is een model dat veel te klein is om een essay op te stellen hier toch geschikt. De fout waar je op moet letten, is een vloeiende suggestie die je niet bedoelde — daarom moet je die altijd expliciet met een toetsaanslag accepteren.