>_ DevTrendsnl

Taal

Home

Talen

Secties

Frontend Backend Mobiel DevOps AI / ML GameDev Blockchain Embedded Beveiliging
Shell

Hoe een neuraal netwerk met 27 miljard parameters uit te voeren op een gewone iPhone of thuis-pc

Onlangs betrapte ik mezelf op de gedachte: we zijn gewend geraakt aan het idee dat het draaien van serieuze LLM's (Large Language Models) serverracks met A100's of minimaal top-tier RTX 4090's vereist. Maar wat als ik je zou vertellen dat een 27B-model nu in de RAM van een gewone smartphone of laptop zonder discrete grafische kaart kan worden "geperst"? Het Bonsai-demo project van het Prismml team doet precies dit, met behulp van de magie van 1-bit en ternaire kwantisatie.

Bonsai

Wat is de kern van het project

Het hoofdprobleem met grote modellen is hun "gretigheid." Een standaard 27B-model in 16-bit formaat weegt ongeveer 50 GB. Zelfs populaire 4-bit compressie (Q4_K_M) vereist 16-17 GB videogeheugen alleen al voor de gewichten. Bonsai-demo biedt een overgang naar een extreem niveau: 1-bit en ternaire (1,58-2 bits) modellen.

Als gevolg daarvan neemt Bonsai-27B in 1-bit configuratie slechts 3,5 GB in beslag. Dit is vergelijkbaar met de grootte van een gemiddeld mobiel spel. De ontwikkelaars beweren dat het model het vermogen behoudt om te redeneren, afbeeldingen te zien en zelfs tools aan te roepen.

Wat dit "boom" kan doen

Ik dook in de repository en lichtte een paar dingen uit die er echt uitspringen.

Visie en documentverwerking

De 27B-serie modellen hier zijn niet alleen op tekst gebaseerd. Dit zijn multimodale systemen. Je kunt ze schermafbeeldingen, foto's of PDF-bestanden voeren. Binnenin wordt een speciale projector gebruikt die visuele gegevens omzet in tokens die het model kan begrijpen. Voor een lokaal systeem dat op de CPU draait, lijkt dit magie.

Agent-achtig gedrag en MCP

De demo bevat een volwaardige client voor het MCP (Model Context Protocol). Als je het gemist hebt: dit is een nieuwe standaard van Anthropic waarmee het model verbinding kan maken met externe gegevens. Bonsai-demo heeft al out-of-the-box tools geconfigureerd voor het werken met DeepWiki en Hugging Face. Dus het model hallucineert niet alleen - het gaat naar het internet voor feiten.

"Denk"-modus

De 27B-modellen hebben een chain-of-thought redeneerfunctie. In de interface kun je een denkbudget instellen: van een snel antwoord tot diepgaande analyse van 8.000+ tokens. Als je hardware zwak is, kun je dit beter op Laag zetten, anders moet je lang wachten terwijl het model zijn gedachten op de achtergrond "draait".

Extreme contextbesparing

Meestal verbruikt een context van 100.000 tokens gigabytes aan geheugen. Hier voegden de auteurs experimentele ondersteuning toe voor 4-bit KV-cache. Dit vermindert het geheugenverbruik voor lange gesprekken met 3,5 keer. In cijfers: 100k tokens nemen ongeveer 1,8 GB in beslag in plaats van de gebruikelijke 6,3 GB.

Technische details

Het project is gebaseerd op een fork van llama.cpp en het MLX-framework voor Apple Silicon. Interessant is dat 1-bit kwantisatieondersteuning (Q1_0) al begint te stromen naar de hoofd-lama.cpp upstream. Met ternaire gewichten (Q2_0) is de situatie iets complexer: ze zijn momenteel bezig met migratie, dus het project levert zijn eigen voorgecompileerde binaries voor verschillende platforms.

Als je een Mac met een M-chip hebt, zal het build-script MLX ophalen en alle componenten compileren voor je architectuur. Voor Windows en Linux worden scripts met automatische detectie van CUDA en Vulkan meegeleverd.

Hoe het te proberen

De ontwikkelaars hebben het proces zo "naadloos" mogelijk gemaakt. Je hoeft niet meer handmatig gewichten te downloaden van Hugging Face of de omgeving te configureren.

Voor macOS of Linux zijn slechts drie regels voldoende:

git clone https://github.com/PrismML-Eng/Bonsai-demo.git
cd Bonsai-demo
./setup.sh

Het script installeert automatisch de pakketbeheerder uv, maakt een virtuele omgeving aan, downloadt het vereiste model (Ternary-Bonsai-27B standaard) en bereidt de binaries voor.

Daarna kun je een lokale server starten:

./scripts/start_llama_server.sh

En open localhost:8080 in je browser. Daar vind je een vertrouwde chat waar je zowel visie als generatiesnelheid kunt testen.

Is het de moeite waard om te proberen

Bonsai-demo draait niet om het "doden van GPT-4", maar om toegankelijkheid. Als je een intelligente assistent moet draaien op een kantoorlaptop zonder grafische kaart of een LLM in een mobiele applicatie wilt inbedden, biedt dit project een kant-en-klare basis.

Natuurlijk zijn 1-bit modellen dommer dan hun volledig uitgeruste tegenhangers. Ze kunnen meer fouten maken in complexe logische taken. Maar voor basisautomatisering, tekstclassificatie of eenvoudige chatbots met een context van 256k tokens - dit is een van de meest efficiënte oplossingen die momenteel beschikbaar zijn.

Het belangrijkste voordeel van de repository is zijn "verpakte" aard. Je hoeft geen kwantisatiespecialist te zijn om een ternair model te draaien. Alle vuile hacks met compilatie en parameterafstemming zijn al verborgen in de bash-scripts.

Gerelateerde projecten