ID.nl logo
Makkelijk switchen tussen AI-taalmodellen? Maak kennis met Jan
© ProGeraldo - stock.adobe.com
Huis

Makkelijk switchen tussen AI-taalmodellen? Maak kennis met Jan

OpenAI heeft het met ChatGPT het concept van een AI-chatbot populair gemaakt. Ook andere bedrijven bieden soortgelijke diensten aan. Daarnaast zijn er grote taalmodellen beschikbaar waarmee je zelf een chatbot kunt maken die op je eigen computer draait. Met Jan krijg je toegang tot al deze taalmodellen vanuit één interface.

Na het lezen van dit artikel weet je hoe je met Jan meerdere taalmodellen op je pc kunt beheren en hoe je ermee kunt werken:

  • Installeer Jan
  • Download de gewenste taalmodellen
  • Ga ermee aan de slag:
    • Vat pdf-documenten samen
    • Laat beschrijven wat er op een afbeelding te zien is
    • Laat je helpen bij programmeertaken

Ook bij een lokaal taalmodel is je prompt van belang: Prompt engineering: zo maak je precies het beeld dat je voor ogen hebt

Een groot taalmodel (Large Language Model of LLM) is een neuraal netwerk met miljarden parameters dat teksten kan genereren. Dit type algoritme kreeg brede bekendheid toen OpenAI in november 2022 de dienst ChatGPT lanceerde. Via deze webinterface kun je eenvoudig chatten met het taalmodel, en de antwoorden lijken vaak alsof ze van een mens komen.

Ook de concurrentie is niet stil blijven staan. Zo biedt het Franse bedrijf Mistral AI een online chatbot op basis van een eigen groot taalmodel. Daarnaast stellen bedrijven als Groq je in staat om allerlei grote taalmodellen in de cloud te draaien. Meta, het moederbedrijf van Facebook, bracht bovendien zijn groot taalmodel Llama uit in kleinere versies, die je zelfs op je eigen computer kunt draaien. Dat werd al snel gevolgd door een reeks andere grote en kleine taalmodellen van diverse bedrijven en onderzoeksinstellingen.

Het kan lastig zijn om al deze modellen uit te proberen: je moet dan allerlei verschillende webinterfaces gebruiken of van diverse locaties modellen downloaden. Jan biedt hiervoor een oplossing: je installeert deze opensourcesoftware op je eigen computer. Daarna verbind je via een API (Application Programming Interface) met een groot taalmodel in de cloud of download je een taalmodel van bijvoorbeeld Meta of Mistral op je eigen computer om het offline te gebruiken. En dat alles in één en dezelfde gebruikersinterface, waarin je eenvoudig tussen verschillende modellen kunt overschakelen.

1 Jan installeren

Jan is beschikbaar voor Windows, macOS (Intel- of Apple-processoren) en Linux. Op de downloadpagina vind je de verschillende versies. Als je lokaal grote taalmodellen wilt draaien, heb je een krachtige computer nodig. Onder Windows en Linux betekent dat een gpu van Nvidia of AMD met minstens 8 GB VRAM. Heb je een recente Mac, dan is een Apple M1-processor of nieuwer ook snel genoeg.

Nadat je Jan hebt gestart, schakel je eerst de hardwareversnelling in. Op Macs met een Apple-processor gebeurt dat automatisch, maar voor Windows en Linux dien je dat handmatig te doen. Raadpleeg de platformspecifieke installatie-instructies om de juiste drivers en andere nodige software te installeren. Voor een Nvidia-gpu open je in Jan de instellingen (het icoontje van het tandwiel linksonder) waar je klikt op Advanced Settings en GPU Acceleration inschakelt.

Voor de beste prestaties laat je Jan gebruikmaken van je gpu.

2 Lokaal AI-model draaien

Als je een groot taalmodel op je eigen computer wilt draaien, moet je dit eerst downloaden. Klik daarvoor in Jan linksboven op het icoontje met de vier vierkantjes. Dit brengt je naar de Hub, een verzameling van modellen die je kunt downloaden. Bij de modellen die je lokaal kunt draaien, staat de bestandsgrootte en een knop Download. Als er Recommended bij staat, draait het model goed op je hardware. Staat er de waarschuwing Slow on your device, dan komt dat bijvoorbeeld omdat je gpu te weinig VRAM heeft. Klik rechts naast de downloadknop voor extra uitleg over het model en klik op Download om het model op te slaan. Download bijvoorbeeld Mistral Instruct 7B Q4. Dat is een goed algemeen model dat al op een gpu met 8 GB VRAM draait.

Zodra het model is gedownload, verandert de downloadknop in Use. Klik erop om een nieuwe ‘thread’ te starten, een conversatie met het model. Dit kan ook door op de tekstballon linksboven te klikken. Voordat je een vraag typt in het tekstveld onderaan, raden we je aan aan de rechterkant naar enkele instellingen te kijken. In het tabblad Assistant kun je onder Instructions specifieke instructies geven die de antwoorden van de chatbot beïnvloeden, zoals de rol die het moet uitvoeren. In het tabblad Model kun je het taalmodel kiezen: naast de gedownloade modellen zijn ook de modellen die je online gebruikt via een API zichtbaar. Laat de andere instellingen voorlopig op hun standaardwaarden staan (zie het kader ‘Modelparameters’ voor de betekenis ervan). Nu kun je je vraag stellen. Jan zal eerst het taalmodel in het VRAM of RAM laden, wat even kan duren. Daarna verschijnt het antwoord redelijk snel. Vervolgvragen worden hierdoor ook sneller beantwoord.

Dankzij Jan kun je met alle mogelijke grote taalmodellen chatten.

Modelparameters

Jan laat je bij elk model diverse parameters aanpassen. In het tabblad Model heb je bijvoorbeeld Inference Parameters. Met de temperatuur stel je in hoe divers of voorspelbaar de antwoorden zijn en met Top P stel je in hoe gefocust of creatief het taalmodel is. Ook het maximumaantal tokens in het antwoord kun je instellen. Bij Engine Parameters kun je bij sommige modellen ook de contextlengte kiezen, wat de maximale lengte van de invoer bepaalt. Stel dat je korte vragen stelt, dan kun je de contextlengte korter houden, waardoor de berekening sneller gaat. Wil je daarentegen een langer document laten samenvatten, dan heb je een langere contextlengte nodig. Bij grote modellen is het soms nuttig om te kiezen hoeveel lagen van het neurale netwerk je op de gpu uitvoert; de rest wordt op je (tragere) cpu berekend. Jan doet standaard al zo veel mogelijk op je gpu.

//k1-jan-model-parameters.png// Jan laat toe om allerlei parameters van de taalmodellen aan te passen.

3 AI-model in de cloud draaien

Op dezelfde manier kun je modellen in de cloud draaien bij leveranciers als OpenAI, Anthropic, Mistral, Cohere en Groq. Hiervoor moet je eerst een API-sleutel voor de desbetreffende dienst instellen. Keer daarvoor terug naar de instellingen van Jan en klik bij Model Providers op de gewenste dienst. We illustreren dit met OpenAI. Bij API Key moet je een API-sleutel invullen, die je aanmaakt op de pagina API keys van je OpenAI-account. Klik daar op Create new secret key, geef je sleutel een naam en ken ze aan een project toe (er is een Default project). Klik dan op Create secret key. Kopieer nu onmiddellijk de gegenereerde sleutel en vul die in Jan in, want je krijgt die daarna nooit meer te zien.

Je kunt nu in de Hub van Jan naar OpenAI GPT 4o gaan en ernaast op Use klikken om een nieuw gesprek te starten. Of je klikt op de tekstballon linksboven, daarna op het icoontje met het potlood om een nieuwe thread aan te maken, om vervolgens aan de rechterkant bij ModelOpenAI GPT 4o uit de lijst te selecteren. Cloudmodellen waar je geen toegang toe hebt omdat je nog geen API-sleutel hebt ingesteld, zijn grijs weergegeven. Je kunt tijdens het gesprek overigens op elk moment van model veranderen. Als je bijvoorbeeld merkt dat het model niet goed genoeg is voor je vraag, verander dan het model en klik op het knopje Regenerate bij het antwoord.

Creëer een API-sleutel om OpenAI’s grote taalmodellen in Jan te gebruiken.

4 Pdf-documenten samenvatten

Als je een model met lange contextlengte gebruikt, kun je in Jan ook pdf-documenten laten samenvatten of op andere manieren analyseren. Klik daarvoor eerst in de instellingen op Advanced Settings en schakel Experimental Mode in. Je threads tonen nu aan de rechterkant ook een tabblad Tools. Schakel daar Retrieval in.

Klik nu in je thread op het icoontje van de paperclip en kies Document. Selecteer het pdf-bestand dat je wilt analyseren. Nu kun je in het tekstveld onderaan vragen stellen aan het taalmodel over dit document. Als het lijkt alsof het taalmodel de informatie niet volledig heeft verwerkt, kun je experimenteren met de parameters in het tabblad Tools. Wees overigens altijd kritisch over de antwoorden. Vaak zit het taalmodel ernaast of antwoordt het onvolledig.

Als je de datasheet van de Raspberry Pi Pico W met GPT-4o bevraagt, zijn de antwoorden helaas onvolledig.

5 Multimodaal model

Sommige modellen kunnen niet alleen overweg met tekst, maar ook met afbeeldingen. Ze kunnen bijvoorbeeld een afbeelding die je hen voorlegt beschrijven of erover redeneren. We noemen dat multimodale modellen. Een voorbeeld hiervan is LLaVA (Large Language and Vision Assistant). In de Hub van Jan zijn enkele varianten te vinden, zoals LlaVa 7B, BakLlava 1 en LlaVa 13B Q4 (voor GPU’s met meer dan 8 GB VRAM).

Na je selectie kun je een afbeelding uploaden door in een gesprek op de paperclip klikken en voor Image te kiezen. Als het niet om een multimodaal model gaat, blijft Image grijs en kun je het niet selecteren. Daarna kun je vragen stellen over de afbeelding. Helaas bleek in onze test geen van de LLaVA-modellen uit Jans Hub te werken, ook niet met een LLaVA-model dat we van Hugging Face downloadden. Het is een van de redenen waarom de ontwikkelaars van Jan nog steeds waarschuwen dat hun programma in bètafase is.

6 Modellen van Hugging Face

Hugging Face is een Frans-Amerikaans bedrijf dat met zijn Model Hub een populaire website aanbiedt waar iedereen AI-modellen kan publiceren. Jan kan deze modellen van de Hugging Face Model Hub ook lokaal draaien, zolang ze in het formaat GGUF (GPT-Generated Unified Format) worden aangeboden. We illustreren dit met Granite Code 8B, een taalmodel van IBM dat is getraind om programmeertaken uit te voeren.

Als je binnen de Hugging Face Model Hub op de pagina van een GGUF-model rechtsboven op Use this model klikt en vervolgens op Jan, krijg je de vraag om de pagina in Jan te openen. Een andere manier is om in de Hub van Jan de url van het model te plakken. Jan toont je dan informatie over het model en biedt verschillende versies ter download aan. In ons voorbeeld is er maar één versie, maar vaak zijn er verschillende kwantisaties beschikbaar (zie het kader ‘Welke modelvariant kiezen?’). Klik op de downloadknop naast het gewenste model. Zodra het is gedownload, klik je op Use om een gesprek te beginnen.

Jan kan alle GGUF-taalmodellen van Hugging Face downloaden.

7 Modellen die programmeren

Taalmodellen zoals Granite Code, Codestral, Deepseek Coder en CodeNinja zijn gespecialiseerd in alles wat met programmeren te maken heeft. Vraag bijvoorbeeld om een Python-script dat met de bibliotheek Bleak scant naar bluetooth-apparaten in de buurt, en het taalmodel toont je de code hiervoor, inclusief uitleg en instructies om de benodigde bibliotheken te installeren.

Er zijn veel apparaten die met bluetooth werken

Draadloze koptelefoons bijvoorbeeld

De code zelf wordt in afzonderlijke kaders getoond, die je met een klik op het icoontje rechtsboven kopieert, zodat je de code in je eigen code-editor kunt plakken en uitproberen. Je kunt ook code invoeren in Jan en het model vragen om deze uit te leggen. Of geef code waarvan je weet dat er een fout in zit en vraag het model om de code te verbeteren. Vaak krijg je overigens code die niet werkt, of die een foutmelding geeft. Reageer dan met de foutmelding of vertel wat er fout gaat, en je krijgt een verbeterde versie. Na wat heen en weer communiceren krijg je vaak wel een bruikbaar resultaat.

Granite Code kan je helpen bij programmeertaken.

Welke modelvariant kiezen?

De meeste modellen komen in enkele varianten. De belangrijkste eigenschap is het aantal modelparameters, wat meestal in de miljarden ligt. Veelvoorkomende aantallen zijn 7B, 8B, 13B, 33B en 70B, waarbij de B voor miljard (billion in het Engels) staat. Een grotere versie behaalt doorgaans betere resultaten, maar je hardware moet het aankunnen. Idealiter kies je een model dat volledig in het VRAM van je gpu past: dan laadt Jan dit volledig in je gpu en worden de berekeningen ook volledig versneld door de gpu. Een 7B-model past doorgaans in een gpu met 8 GB VRAM, 13B in 16 GB VRAM en 33B in 32 GB VRAM. Draai je een model dat groter is dan je VRAM, dan wordt een deel van het neurale netwerk in het RAM geladen en door de cpu uitgevoerd, wat trager is. Modellen komen ook in verschillende kwantisaties. Veelvoorkomende aanduidingen zijn f16 (16 bits kommagetallen) en int4 (4 bits gehele getallen). Een int4-model is kleiner en werkt sneller dan hetzelfde model in de f16-versie, maar is minder nauwkeurig. Ook hebben de kwantisaties weleens aanduidingen als IQ3_XS, Q2_K_L en Q5_K_M. De exacte betekenis daarvan valt buiten het bestek van dit artikel, maar Q5_K_M biedt meestal een goed evenwicht tussen snelheid en nauwkeurigheid.

8 Extra cloudmodellen toevoegen

Er komen continu nieuwe taalmodellen bij, en Jan kan dat niet altijd direct volgen. Gelukkig kun je vaak met wat handmatige configuraties de nieuwe modellen toch nog aan de praat krijgen. We illustreren dit met GPT-4o mini, de goedkopere versie van GPT-4o die OpenAI aanbiedt. Tijdens het schrijven stond deze nog niet in Jans Hub, maar je kunt deze eenvoudig toevoegen. Jan slaat de configuratie van elk model op in een bestand in zijn datadirectory. Voor OpenAI’s GPT-4o is dat bijvoorbeeld in het bestand jan\models\gpt-4o\model.json in je persoonlijke map.

Om Jan toegang te geven tot GPT-4o mini, maak je een map gpt-4o-mini aan en kopieer je het bestand model.json van GPT-4o daarnaartoe. Pas nu in dit json-bestand het id aan van gpt-4o naar gpt-4o-mini, de naam van OpenAI GPT 4o naar OpenAI GPT 4o mini en het maximumaantal tokens van 4096 naar 16384. Deze waarde vind je op de website van OpenAI bij de eigenschappen van het model. Sla het bestand op, sluit Jan af en start het programma weer op. Daarna is het model in Jan beschikbaar.

Voeg het nieuwste model van OpenAI aan Jan toe.

9 Meer mogelijkheden

Jan biedt nog heel wat meer mogelijkheden. Zo kun je het programma als server draaien en functionaliteit van de taalmodellen aan andere programma’s aanbieden. In de code-editor Visual Studio Code kun je bijvoorbeeld met de extensie Continue hulp bij het programmeren krijgen. Continue communiceert dan op de achtergrond met een taalmodel dat Jan uitvoert.

Een ander interessant programma is Open Interpreter. Dit laat een groot taalmodel code genereren die dan op je computer wordt uitgevoerd. Je kunt bijvoorbeeld aan een taalmodel van Jan vragen om een bestand met data in te lezen en daar grafieken van te maken. Verder zullen er wellicht nog meer tools komen dan enkel het inlezen van pdf-bestanden.

Jan ondersteunt allerlei integraties om de grote taalmodellen toe te passen.

▼ Volgende artikel
Roamingkosten verdwijnen op Noordzee: geen hoge en onverwachte rekeningen meer
© Marc Venema
Huis

Roamingkosten verdwijnen op Noordzee: geen hoge en onverwachte rekeningen meer

Reizigers die de oversteek maken op de Noordzee naar Groot Brittannië of Noorwegen kennen het probleem: je moet je roaming uitzetten omdat je anders onbedeoeld verbinding maakt met een dure maritieme provider. Dat is binnenkort verleden tijd, want door een samenwerking met Tampnet betaal je - net als in Nederland - gewoon de normale kosten voor het gebruik van je mobiele data en gesprekken.

Mobiele provider KPN heeft aangeven dat klanten vanaf 1 november 2025 geen extra roamingkosten meer betalen als ze gebruik maken van mobiel internet en telefonie tijdens bijvoorbeeld een overtocht met een ferry naar Groot Brittannië. Door een samenwerking met maritiem provider Tempnet worden er geen exorbitante prijzen meer gerekend als je met je smartphone op internet surft. Ook klanten van Youfone en Simyo vallen onder deze nieuwe regeling.

Odido volgt in januari

Ook Odido heeft eerder al bekend gemaakt dat de roamingkosten voor klanten van deze provider, waar ook klanten van Ben en Simpel onder vallen, verdwijnen en ook deze klanten dus niet meer betalen dan in Nederland. Bij Odido verdwijnen de roamingkosten per 1 januari 2026.

Het is nog niet bekend wanneer andere provider zoals Vodafone roamingkosten zullen aanschaffen voor reizigers op de Noordzee, maar de verwachting is dat ook dit rond de jaarwisseling zal worden doorgevoerd.

Voorheen hoge kosten
Wanneer reizigers op het oude maritieme netwerk verbinding maakten met internet, konden de kosten extreem hoog oplopen. Bij Odido kon je bijvoorbeeld bundels afkopen voor 3 euro voor 25MB of of 25 euro voor 500MB, bedragen waar je dus behoorlijk diep in de buidel voor moet tasten. Had je geen bundel en maakte je per ongeluk verbinding, dan liepen de kosten nog verder op.

▼ Volgende artikel
Nieuw van OPPO: Find X9 en X9 Pro met Hasselblad-telelens en accu van ruim 7000 mAh
© OPPO
Huis

Nieuw van OPPO: Find X9 en X9 Pro met Hasselblad-telelens en accu van ruim 7000 mAh

OPPO brengt zijn nieuwste vlaggenschepen, de Find X9 en Find X9 Pro, wereldwijd op de markt. De nieuwe toestellen combineren krachtige camera's, hoge accucapaciteit en de nieuwste versie van OPPO's besturingssysteem ColorOS.

De Find X9-serie richt zich vooral op fotografie, met camera's die in samenwerking met Hasselblad zijn ontwikkeld. De Find X9 beschikt over drie 50MP-camera's: een hoofdcamera met een Sony LYT808-sensor, een ultragroothoek met autofocus en een periscoop-telelens. De Find X9 Pro gaat een stap verder met een aangepaste Sony LYT828-hoofdsensor en een 200MP-telelens met 3x optische zoom. Deze laatste kan dankzij de hoge resolutie digitaal inzoomen tot ruim 13x zonder zichtbaar kwaliteitsverlies.

Beide toestellen maken gebruik van OPPO's nieuwe LUMO Image Engine, die foto's sneller en energiezuiniger verwerkt. De camera kiest automatisch de juiste resolutie (50, 25 of 12 megapixel) afhankelijk van de lichtomstandigheden. Ook nieuw zijn 4K Motion Photos, waarbij korte videofragmenten met hoge resolutie kunnen worden vastgelegd en elk frame als losse foto kan worden opgeslagen.

©OPPO

Wat is de LUMO Image Engine?

De LUMO Image Engine is OPPO's nieuwe systeem voor beeldverwerking. Het combineert rekenkracht en kunstmatige intelligentie om foto's sneller te verwerken en natuurlijker te laten ogen. De engine past onder meer de belichting en kleurweergave aan en vermindert ruis in situaties met weinig licht, terwijl het stroomverbruik van de chip wordt verlaagd.

Grote accu's

De Find X9-serie valt ook op door zijn grote batterijcapaciteit. De Find X9 heeft een 7025mAh-accu, de Pro-versie zelfs 7500mAh – groter dan in eerdere OPPO-flagships. Beide modellen ondersteunen 80W snelladen via de kabel, 50W draadloos laden en 10W omgekeerd opladen, waarmee je andere apparaten – zoals oordopjes of een smartwatch – draadloos kunt bijladen. De toestellen zijn voorzien van OPPO's derde generatie silicium-koolstofbatterij, die volgens de fabrikant na vijf jaar nog 80 procent van de oorspronkelijke capaciteit behoudt.

Prestaties en koeling

Binnenin draait de Find X9-serie op de MediaTek Dimensity 9500-chip, gebouwd op een 3nm-proces. De nieuwe chipset belooft betere prestaties en een lager energieverbruik. OPPO's eigen Trinity Engine moet zorgen voor stabiele prestaties, ook bij langdurig gamen of zware taken.

Scherm en ontwerp

Het ontwerp is grotendeels vlak, met smalle randen van 1,15 millimeter en een helder 120Hz-scherm dat tot 3600 nits piekhelderheid haalt. Beide toestellen hebben een IP69-classificatie, wat bescherming biedt tegen stof, water en hoge temperaturen. De Find X9 verschijnt in Titanium Grey en Space Black, terwijl de Pro-uitvoering verkrijgbaar is in Silk White en Titanium Charcoal.

De toestellen draaien op ColorOS 16, dat onder meer verbeterde animaties, slimme AI-functies en uitgebreidere koppeling met Windows- en Mac-computers biedt.

©OPPO

Beschikbaarheid en prijs

De adviesprijs van de OPPO Find X9 (12GB/512GB) is 999 euro, die van de Find X9 Pro (16GB/512GB) is 1.299 euro. Beide modellen zijn per direct verkrijgbaar.