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
Review Teufel Airy Sports TWS 2 – Perfect zittende oordopjes voor actievelingen
© Maikel Dijkhuizen
Huis

Review Teufel Airy Sports TWS 2 – Perfect zittende oordopjes voor actievelingen

Teufel komt met een nieuwe generatie van zijn Airy Sports TWS. Deze tweede versie is beschikbaar in meerdere kleuren en voorzien van een hogere IP-classificatie (IPx4). Een andere verbetering is dat je in een mobiele app naar eigen wens de audio-instellingen kunt aanpassen. Maar de opvallendste vernieuwing is de toevoeging van noise cancelling. Tijd voor een praktijktest.

Uitstekend
Conclusie

Als je van de noise cancelling-functie geen wonderen verwacht, is de Teufel Airy Sports TWS 2 een interessant product voor actievelingen. Tijdens het wandelen, hardlopen, fitnessen en fietsen blijven de oordopjes goed zitten. Fijn is dat je tijdens al die activiteiten muziek, podcasts en luisterboeken makkelijk kunt bedienen via de aanraakpaneeltjes. Ten slotte is ook de audiokwaliteit dik in orde. Al met al vinden we de adviesprijs van 119,99 euro voor dit kwalitatieve setje in-ears gerechtvaardigd.

Plus- en minpunten
  • Diverse maten oordopjes
  • In-ears blijven goed zitten
  • Hoog draagcomfort
  • Spatwaterbestendig
  • Prettige bediening
  • Duidelijke handleiding
  • Prima audiokwaliteit
  • Equalizerinstellingen aanpassen in app
  • Goede prijs-kwaliteitverhouding
  • Korte usb-c-kabel
  • Matige noise cancelling-functie
CategorieSpecificatie
Formaat audiodrivers10 millimeter (fullrange driver)
AccucapaciteitIn-ears 2× 60 mAh, oplaadcase 750 mAh
IP-classificatieIPx4 (spatwaterdicht)
Beschikbare kleurenZwart, grijs, groen, blauw
Inbegrepen accessoiresOplaadcase, usb-c-oplaadkabel, 5 maten oordopjes

De Berlijnse audiospecialist heeft aan het uiterlijk van de Teufel Airy Sports TWS 2 niet veel veranderd. Het door ons geteste zwarte model bevat aan de buitenzijde van elk oordopje een iets onopvallender Teufel-logo. Daarnaast zijn de oorhaken iets korter en zitten de magneetpunten op een andere plek. Via deze magneetpunten laden de ingebouwde accu's op. De opbergcase heeft zelf ook een accu met een capaciteit van 750 mAh. Die kun je met de inbegrepen usb-c-kabel bijladen. Helaas is dit snoertje met een lengte van nog geen dertig centimeter erg kort.

©Maikel Dijkhuizen

Naast de in-ears levert de fabrikant een oplaadcase, usb-c-kabel, handleiding en vijf maten oordopjes mee.

Draagcomfort

Elk oor is anders en dat begrijpt Teufel maar al te goed. Het merk levert maar liefst vijf setjes siliconen oordoppen mee. Je verwisselt ze eenvoudig, waardoor iedere persoon de juiste pasvorm kan kiezen. Nadat je de Airy Sports TWS 2 aan een bluetooth-bron hebt gekoppeld, haal je de in-ears uit de oplaadcase. Dankzij de flexibele oorhaken blijven de oordoppen prima op hun plek zitten. Ook tijdens het sporten zitten de luisterapparaatjes als gegoten, want de in-ears gaan bij lichamelijke inspanning niet wiebelen. Wegens de prettige pasvorm en het lichte gewicht voel je amper dat je ze in hebt.

©Maikel Dijkhuizen

Dankzij de IPx4-gecertificeerde behuizing kun je de Airy Sports TWS 2 ook bij slecht weer gebruiken.

Bediening

Voor de bediening beschikken beide in-ears aan de buitenzijde over een aanraakpaneeltje. De werking is even wennen, want de linker- en rechterkant herbergen verschillende functies. Tik bijvoorbeeld aan de rechterkant tweemaal om een liedje te skippen en tik links twee keer om naar het vorige liedje te gaan. Je drukt tijdelijk op de behuizing om het volume te wijzigen. Met driemaal tikken kun je de transparantiemodus (links) of noise cancelling (rechts) activeren. Tot slot neem je simpel inkomende gesprekken aan, waarna je handsfree kunt bellen. Zodra je alle functies eenmaal onder de knie hebt, voelt de bediening intuïtief aan. De bijgevoegde handleiding bevat voor alle beschikbare opties duidelijke instructies.

Geluidskwaliteit

De Airy Sports TWS 2 levert zowel op lage als hoge volumes een helder geluid. Muziek klinkt erg levendig waarbij luisteraars een duidelijk stereobeeld kunnen horen. Vrouwelijke en mannelijke stemmen zijn duidelijk te verstaan, waardoor je podcasts, audioboeken en radio-uitzendingen moeiteloos kunt volgen. De in-ears sluiten je oren namelijk goed af van de omgeving. Daarnaast kun je natuurlijk noise cancelling inschakelen, maar deze functie zorgt slechts voor een bescheiden demping van de lage tonen in jouw omgeving. Je hoort omringende geluiden hierdoor een fractie zachter.

Met de standaardinstellingen laten de bassen zich niet zo nadrukkelijk gelden. Vind je een diepere laagweergave prettig, dan loont het de moeite om de Teufel Go-app te installeren. Kies vervolgens de geluidsinstelling Bass Boost en ervaar een steviger geluid. Overigens zijn er nog meer audio-opties beschikbaar, namelijk Podcast, Techno, Pop, Treble boost, Rock en Klassiek. Bovendien pas je de equalizerinstellingen eventueel handmatig aan. Kortom, genoeg mogelijkheden om het geluid naar je hand te zetten.

Gebruikers kunnen in de app ook nog noise cancelling of de transparantiemodus activeren. Laatstgenoemde functie laat geluid van buitenaf door, zodat je tijdens het luisteren soepel een gesprek kunt voeren. Verder toont de app de resterende batterijcapaciteit van elk oordopje en de huidige firmware-versie. Als er een nieuwe software-update verschijnt, kun je die meteen installeren.

©Maikel Dijkhuizen

Pas in de Teufel Go-app het geluid naar eigen smaak aan.

Teufel Airy Sports TWS 2 kopen?

Als je van de noise cancelling-functie geen wonderen verwacht, is de Teufel Airy Sports TWS 2 een interessant product voor actievelingen. Tijdens het wandelen, hardlopen, fitnessen en fietsen blijven de oordopjes goed zitten. Fijn is dat je tijdens al die activiteiten muziek, podcasts en luisterboeken makkelijk kunt bedienen via de aanraakpaneeltjes. Ten slotte is ook de audiokwaliteit dik in orde. Al met al vinden we de adviesprijs van 119,99 euro voor dit kwalitatieve setje in-ears gerechtvaardigd.

▼ Volgende artikel
Home Alone- en The Last of Us-actrice Catherine O'Hara overleden
Huis

Home Alone- en The Last of Us-actrice Catherine O'Hara overleden

Catherine O'Hara, de actrice die onder andere bekend is van haar rol in de eerste twee Home Alone-films, is op 71-jarige leeftijd overleden.

Ze kwam in haar huis te Los Angeles te overlijden na een korte ziekte. Het internet stond gisteren vol met mooie herinneringen aan O'Hara van collega-acteurs en anderen uit het acteervak.

De Canadees-Amerikaanse actrice was vooral bekend om haar rol als moeder van hoofdpersonage Kevin McCallister in de eerste twee Home Alone-films. Ook haar rol als Delia Deetz in de gotische Tim Burton-film Beetlejuice was bekend.

De laatste jaren kreeg O'Hara's carrière een tweede leven dankzij haar rol in de sitcom Schitt's Creek, alsmede in het vervolg op Beetlejuice. Daarnaast had ze rollen in recente series als The Last of Us en The Studio.

View post on X
Nieuw op ID: het complete plaatje

Misschien valt het je op dat er vanaf nu ook berichten over games, films en series op onze site verschijnen. Dat is een bewuste stap. Wij geloven dat technologie niet stopt bij hardware; het gaat uiteindelijk om wat je ermee beleeft. Daarom combineren we onze expertise in tech nu met het laatste nieuws over entertainment. Dat doen we met de gezichten die mensen kennen van Power Unlimited, dé experts op het gebied van gaming en streaming. Zo helpen we je niet alleen aan de beste tv, smartphone of laptop, maar vertellen we je ook direct wat je erop moet kijken of spelen. Je vindt hier dus voortaan de ideale mix van hardware én content.