Innhold Vis
FreeToken får en MoE-modell med 753 milliarder parametere til å kjøre på én GPU ved å bruke hele maskinen som én samlet inferensplattform. GPU-minnet er ikke hele regnestykket lenger. Eksperter som ikke ligger i VRAM, blir enten hentet over PCIe eller kjørt direkte på CPU-en, alt etter hva som faktisk er raskest på maskinen.
Det er rått. På en RTX PRO 6000 målte forskerne GLM-5.2 til 14,9 tokens per sekund, mot 7,3 med llama.cpp. På en bærbar PC med 8 GB RTX 4060 kjørte en 35-milliarders modell med 39,3 tokens per sekund. FreeToken angriper med andre ord et av de mest irriterende problemene med lokale, åpne modeller: Du kan laste ned vektene, men maskinvaren som trengs for å bruke dem har vært langt utenfor rekkevidde.
Men les den store påstanden nøye. «Én GPU» betyr ikke en vanlig PC med ett grafikkort og 32 GB RAM. GLM-5.2-testen brukte også 512 GB systemminne og en Xeon Platinum-prosessor. Gjennombruddet er ekte nok til å være spennende, men overskriften er langt mer folkelig enn maskinen.
Hva er FreeToken?
FreeToken er en åpen inferensmotor for Mixture-of-Experts-modeller, laget av forskere fra UC Berkeley og UT Austin. Ifølge forskningsartikkelen om FreeToken støtter systemet mer enn 20 MoE-modeller og maskinvare fra en bærbar PC med 8 GB VRAM til en arbeidsstasjon med RTX PRO 6000.
En MoE-modell består av mange spesialiserte eksperter, men bruker bare et lite utvalg av dem for hvert token. GLM-5.2 har totalt 753 milliarder parametere, mens omtrent 40 milliarder er aktive om gangen. Det gjør beregningen mulig på langt mindre maskinvare enn en tett modell på samme størrelse, men alle ekspertvektene må fortsatt ligge et sted og være tilgjengelige når ruteren velger dem.
Vanlige lokale motorer løser dette med en ganske statisk fordeling. Noe ligger i VRAM, resten ligger i systemminnet og flyttes eller beregnes etter en fast regel. Problemet er at trafikken endrer seg fra token til token. En ekspert som var kald for et øyeblikk siden, kan plutselig bli etterspurt, mens GPU-en, CPU-en eller PCIe-forbindelsen står og venter på hverandre.
FreeToken måler i stedet hvor mye båndbredde akkurat din maskin faktisk har. Deretter fordeler motoren cache-bommer mellom to parallelle løp: Noen eksperter hentes til GPU-cachen over PCIe, mens resten beregnes direkte på CPU-en. Delresultatene summeres til slutt. Det brukes ingen forenklet ekspert, ingen endret ruter og ingen tilnærming i denne fordelingen.
Hvorfor er båndbredden viktigere enn antall kjerner?
Store MoE-modeller er ofte begrenset av hvor fort vektene kan flyttes, ikke bare av hvor mange regneoperasjoner maskinen klarer. Forskerne målte 52,7 GB/s over PCIe og 77,3 GB/s fra systemminnet på en RTX 5090-server. På en RTX 4060-laptop var de samme tallene 11,8 og 47,5 GB/s. En fast fordelingsregel ville vært feil for minst én av disse maskinene.
FreeToken bruker kommandoen ft bench bw til å måle både CPU- og PCIe-båndbredden med de faktiske MoE-kjernene. Profilen lagres lokalt og brukes når motoren velger mellom offload og hybrid. I hybridmodus henter den noen manglende eksperter til GPU-en samtidig som CPU-en beregner de andre.
Dette høres kanskje ut som en liten scheduler-optimalisering. Det er det ikke. CPU-kjøring og PCIe-overføring leser fra det samme systemminnet og konkurrerer om båndbredden. FreeToken prøver å fylle begge kanalene uten å overbelaste den ene. Det er her mye av ytelsesgevinsten kommer fra.
Motoren gjør også mer enn å flytte ekspertvekter. Under prefill strømmer den neste lagpakken inn mens GPU-en jobber med den nåværende. Under dekoding bruker den én global LRU-cache på tvers av MoE-lagene, i stedet for å låse bestemte eksperter til VRAM ved oppstart. Forskerne rapporterer en cache-bomrate på 16 prosent ved lik kapasitet, mot 41 prosent for KTransformers og 62 prosent for llama.cpp.
Hvor raskt kjører modellene?
På RTX 5090 målte FreeToken 77 til 83 tokens per sekund med Qwen3.6-35B-A3B i BF16 og 22 til 25 tokens per sekund med DeepSeek-V4-Flash i MXFP4. Forskerne oppgir 1,5 til 2,3 ganger høyere dekodingshastighet enn de sterkeste resultatene fra llama.cpp, Ollama og KTransformers i testene.
Forskjellen blir enda viktigere for AI-agenter. En vanlig chat kan tåle litt venting før første svar. En kodeagent med verktøykall, redigeringer og stadig voksende kontekst betaler den ventetiden om og om igjen. FreeToken holdt verste målte tid til første token under 44 sekunder, mens hver av konkurrentene passerte 150 sekunder i minst én arbeidsflyt.
På den minste testmaskinen, en laptop med RTX 4060 og 8 GB VRAM, leverte den NVFP4-kvantiserte Qwen3.6-35B-A3B 39,3 tokens per sekund. Det er et mye mer relevant resultat for folk flest enn GLM-5.2-overskriften. En 35-milliarders modell i ordentlig samtalehastighet på en bærbar GPU er et reelt sprang for lokal AI.
GLM-5.2-resultatet er likevel det som viser hvor langt arkitekturen kan strekkes. Modellen har 753 milliarder parametere totalt og 40 milliarder aktive parametere. På én RTX PRO 6000 med 96 GB VRAM nådde FreeToken 14,9 tokens per sekund, omtrent dobbelt så raskt som llama.cpp i forskernes oppsett.
Jeg liker retningen voldsomt godt. Flere åpne modellvekter hjelper lite hvis de i praksis bare kan kjøres av datasentre. FreeToken flytter grensen ved å utnytte maskinvaren folk allerede har langt bedre. Det er akkurat den typen systemarbeid lokal AI trenger.
Hvor stor er haken bak «én GPU»?
Den er stor: GLM-5.2-maskinen hadde én GPU, men også 512 GB DDR5-minne og en Xeon Platinum 8559C. Testen av DeepSeek-V4-Flash med 284 milliarder parametere brukte 192 GB systemminne. Dette er arbeidsstasjoner, ikke vanlige gaming-PC-er med et stort grafikkort.
Påstanden om én GPU er teknisk korrekt fordi ekspertvektene ikke krever en GPU-klynge. Samtidig er systemminnet selve forutsetningen for at trikset fungerer. Vektene forsvinner ikke. De flyttes bare ut av VRAM og inn i RAM, mens FreeToken gjør trafikken mellom CPU, RAM, PCIe og GPU langt mer effektiv.
Det betyr at du ikke skal kjøpe en 96 GB GPU og regne med at GLM-5.2 bare starter på den vanlige maskinen din. Det betyr heller ikke at 14,9 tokens per sekund er uavhengig bekreftet. Prosjektet og forskningsartikkelen er helt nye, og ytelsestallene kommer foreløpig fra teamet selv.
Benchmarkene har også en viktig metodisk hake. Konkurrentene ble begrenset til seks CPU-tråder på leide servere for å etterligne svakere kantmaskiner. Det er forsvarlig som én test, men KTransformers er nettopp bygget for å utnytte mange CPU-kjerner og AMX. Tallene viser derfor FreeToken mot KTransformers i et avgrenset kantoppsett, ikke nødvendigvis den høyeste ytelsen KTransformers kan levere på den store Xeon-maskinen.
Hva betyr dette for en vanlig RTX 4090?
FreeToken er mest interessant når du ser nedover i modellstørrelse. En RTX 4090 har 24 GB VRAM, men kan sammen med nok systemminne kjøre langt større MoE-modeller enn VRAM-en alene skulle tilsi. Forskningsresultatene viser Qwen3.6-35B-A3B med 42,9 tokens per sekund i BF16 på RTX 4090, og motoren støtter også modeller som gpt-oss, Gemma 4, MiniMax M2.5 og Muse Glimmer.
Det er en annen målgruppe enn den jeg skrev om da Atlas presset Qwen3.5 til 131 tokens per sekund på DGX Spark. Atlas spesialiserer hele motoren for en bestemt maskinvareplattform. FreeToken prøver å tilpasse seg balansen mellom ressursene som finnes i svært forskjellige maskiner.
For en som allerede har et kraftig Nvidia-kort og mye RAM, kan dette bli et langt mer spennende alternativ enn å leie GPU-kraft i skyen hver gang en stor modell skal prøves. Men prosjektet er på versjon 0.1.2, og ferske feilrapporter viser at det fortsatt er tidlig programvare.
Én feilrapport fra en RTX 4060 Ti beskriver at en prompt på rundt 180 tokens kunne henge under prefill når den ble sendt som første forespørsel til en kald server. En annen rapport fra RTX PRO 6000 viser at automatisk minnefordeling kunne la bare rundt 8 200 tokens stå igjen til KV-cache. En prompt over kapasiteten ble stående i kø uten feilmelding. Dette er ikke små detaljer for en kodeagent med lang systemprompt og mange verktøy.
Poenget er ikke at FreeToken dermed er ubrukelig. Poenget er at «kan installeres i ettermiddag» og «bør drive arbeidsflyten din i produksjon» er to forskjellige påstander. Jeg ville startet med en modell og en maskin prosjektet selv oppgir som testet, kjørt ft bench bw, kontrollert faktisk KV-kapasitet og målt både prefill og dekoding med mine egne prompter før jeg stolte på systemet.
Hvordan prøver du FreeToken?
FreeToken er publisert under Apache 2.0-lisens, og kildekoden ligger på GitHub. Prosjektet tilbyr en skrivebordsapp for Windows og Linux, men den dokumenterte CLI-installasjonen krever Linux x86_64, Nvidia-GPU, driver r580 eller nyere, CUDA 13 og Python 3.10 eller nyere.
Den anbefalte installasjonen bruker uv:
uv venv
source .venv/bin/activate
uv pip install "freetoken[accel]"
ft bench bw
ft serve --model /sti/til/modellen
CUDA-kjernene JIT-kompileres første gang og krever at CUDA 13-verktøyet nvcc ligger i søkestien. Serveren lytter som standard på 127.0.0.1:1919 og tilbyr OpenAI-kompatible endepunkter, Anthropic Messages og Responses API. Kommandoen ft launch codex kan koble Codex til den lokale modellen.
Før du laster ned hundrevis av gigabyte med modellvekter, bør du kontrollere de offisielle installasjonskravene og listen over kjente, fungerende modeller. FreeToken laster Hugging Face-safetensors direkte, mens GGUF-støtten foreløpig er begrenset. Det er fort gjort å blande «åpen modell» med «passer i oppsettet mitt». Det er ikke det samme.
Lokal AI har fått et nytt tak
FreeToken løser ikke fysikken, men det bruker maskinen langt smartere. Det er den virkelige nyheten. I stedet for å behandle systemminne som et tregt lager utenfor GPU-en, fordeler motoren arbeid og data etter den målte båndbredden i hele maskinen. Resultatet er at en laptop kan kjøre 35 milliarder parametere raskt, en gaming-PC med 192 GB RAM kan strekke seg til 284 milliarder, og en tung arbeidsstasjon kan kjøre GLM-5.2 uten en GPU-klynge.
753 milliarder parametere på én GPU er fortsatt en jævlig morsom milepæl. Bare ikke kapp bort resten av maskinen når du gjentar den. 512 GB RAM, en kraftig Xeon og foreløpig egenrapporterte målinger er en del av historien, ikke liten skrift.
Hvis uavhengige tester bekrefter resultatene og de tidlige hengproblemene blir ryddet opp, kan FreeToken bli et av de viktigste lokale AI-prosjektene i år. Ikke fordi alle plutselig skal kjøre GLM-5.2 hjemme, men fordi grensen for hva en maskin kan brukes til nettopp flyttet seg ganske brutalt.
Ofte stilte spørsmål
Kan FreeToken virkelig kjøre GLM-5.2 på én GPU?
Ja, forskerne målte 14,9 tokens per sekund på én RTX PRO 6000 med 96 GB VRAM. Maskinen hadde samtidig 512 GB DDR5-minne og en Xeon Platinum 8559C, så dette er en tung arbeidsstasjon, ikke en vanlig gaming-PC.
Fungerer FreeToken på RTX 4090?
Ja. RTX 4090 er blant plattformene forskerne testet, og FreeToken målte Qwen3.6-35B-A3B til 42,9 tokens per sekund i BF16. Hvilke større modeller som er praktiske, avhenger også av systemminne, CPU og PCIe-båndbredde.
Er FreeToken gratis og åpen kildekode?
Ja. FreeToken er publisert på GitHub under Apache 2.0-lisens og finnes også som Python-pakke. Prosjektet tilbyr dessuten en skrivebordsapp for Windows og Linux, mens den dokumenterte CLI-ruten krever Linux, Nvidia-GPU og CUDA 13.
Er FreeToken raskere enn llama.cpp og Ollama?
I forskernes egne tester var dekodingen 1,5 til 2,3 ganger raskere enn de sterkeste sammenlignede motorene. Resultatene er ennå ikke uavhengig reprodusert, og enkelte baseline-oppsett brukte bare seks CPU-tråder, så du bør måle på din egen maskin.