Onderzoeker brengt klein Nederlands taalmodel uit gebaseerd op Microsoft Phi

Een Belgische onderzoeker van de KU Leuven heeft Fietje uitgebracht, een Nederlandse variant op Phi 2 van Microsoft. Met 2,8 miljard parameters moet het bruikbaar zijn op weinig krachtige hardware.

Fietje
Fietje

Fietje moet innovatie in Nederlandstalige taalmodellen bevorderen en toegang tot Nederlandse taaltechnologie verbeteren, zegt maker Bram Vanroy tegen Tweakers. "De stap om dit soort modellen lokaal op je telefoon te draaien wordt hierdoor kleiner." Vanroy maakte GEITje Ultra, een Nederlandstalig taalmodel geoptimaliseerd voor gebruik als AI-assistent. GEITje Ultra heeft zeven miljard parameters. "Hoewel Fietje het in benchmarks bijna zo goed doet als GEITje 7B Ultra, is het in de praktijk toch minder krachtig. Het is dan ook bedoeld als een stap naar het lokaal draaien van LLM's, ook op kleine apparaten zoals een Raspberry Pi of een telefoon."

Fietje kwam tot stand met data van Wikipedia en CulturaX, zo zegt Vanroy. Daarna volgden instruction tuning en voorkeurstraining. Het kleine model moet een compromis zijn tussen snelheid en kwaliteit, zegt Vanroy. Fietje is te proberen op de HuggingFace-pagina van het project.

Update, woensdag - Het screenshot is vervangen door een nieuw screenshot en er is meer duiding toegevoegd over de benchmarks met een quote en een link.

Fietje

Door Arnoud Wokke

Redacteur

30-04-2024 • 20:28

66 Linkedin Whatsapp

Reacties (66)

66
65
20
2
1
40
Wijzig sortering
Bram Vanroy hier, de maker van Fietje. Eveneens de maker van de vele krachtigere GEITje Ultra.

Om al heel wat negatieve commentaren voor te zijn: ik vreesde al dat gebruikers de vergelijking zouden maken met andere, krachtigere modellen (zoals GEITje Ultra of Mixtrals of nieuwe Llamas of zelfs ChatGPT). Dat is begrijpelijk, maar helemaal niet het doel van Fietje! Fietje is 2,5x kleiner dan Ultra, en dan zit je al snel op de limieten van wat je voor kennis en kunnen allemaal in een model gepropt krijgt! Ik heb dit proberen benadrukken in verschillende beschrijvingen, maar ik zeg het nogmaals: de bedoeling is NIET om een nieuwe state-of-the-art vast te leggen, dat kan ook gewoon niet met deze grootte. Het doel was altijd al om een klein model te krijgen dat een balans moet vinden tussen zo klein mogelijk gaan en toch nog voor sommige taken nuttig te zijn, bv. in edge devices en onderzoek in een resource-contraints setting waar een grotere model deployen gewoon niet gaat. In plaats van grotere modellen te bouwen (wat zeker ook nuttig is), heb ik me nu eerst gericht op de toegankelijkheid tot taaltechnologie te verbeteren. Uiteraard is dit maar een enkele stap in het proces, en blijven we doorgaan met nieuwe projecten en ideeën. Misschien wordt dat een finetune van Mixtral, misschien van Llama 3, of misschien toch maar weer een kleine phi-3!

Ik heb de auteur ook gevraagd om deze zin weg te halen ", maar wel even goed zijn als een groter model" en in de tekst het volgende bij te plaatsen, ter verduidelijking: "Hoewel Fietje het in benchmarks bijna zo goed doet als GEITje 7B Ultra, is het in de praktijk toch minder krachtig. Het is dan ook bedoeld als een stap naar het lokaal draaien van LLMs, ook op kleine apparaten zoals een Raspberry PI of een telefoon." ik heb de auteur ook gevraagd om de screenshot te vervangen. Het is namelijk niet gek dat Fietje niet weet wat te doen: er is geen system message, dus ze weet niet dat ik haar gemaakt heb, ze weet niet hoe ze zelf gemaakt/getraind is, dus ze denkt dat ze zich moet voordoen als een journalist die graag traint (in de gym bv.). Een leukere screenshot vind ik bv. deze, die toont dat Fietje een DnD-personage voor je kan maken in JSON!

Tot slot: wat ik erg belangrijk vind is community-building en transparantie. Daarom zijn mijn datasets, modellen, trainingscode, trainingslog allemaal openbaar en voor iedereen beschikbaar in de hoop om andere onderzoekers te motiveren om even transparant te zijn, en samen te werken aan betere taaltechnologie voor het Nederlands.

---

Als je vragen zou hebben over LLMs, kan je die hieronder ook altijd kwijt. Maken we er een leuke Q&A van! Ik ben ook erg geinteresseerd in wat jullie als Tweakers-community graag willen: the bigger the better, of living on the edge? Let me know!

[Reactie gewijzigd door BramVroy op 1 mei 2024 00:50]

Dank voor je werk.

Reuze leuk om mee te experimenteren. En op een Raspberry Pi 5 werkt het al best snel inderdaad. Spuugt grammaticaal goed Nederlands uit.

Op de een of andere manier lijken de originele Engelstalige LLM's wel passief Nederlands te beheersen, maar niet actief. Je kan ze in het Nederlands een vraag stellen, maar een goed Nederlands antwoord genereren kunnen ze niet. Jouw model kan dat wel.

Kan je kort aangeven wat het verschil is tussen de 3 modellen, chat, instruct en base en wanneer je de een of de ander moet gebruiken?
Het is een interessant fenomeen. Net zoals bij mensen lijkt er een verschil te zijn bij LLMs tussen begrijpen en produceren. In onderzoek wordt dat onderscheid tussen natural language understanding en generation duidelijk gemaakt, maar in benchmarks voor generatieve jammer genoeg niet voldoende.

- base: dit is simpelweg een "volgende woord voorspellen" model, niet getunet voor chat. Zal je in de praktijk dus niet gebruiken
- instruct: aangepast voor chat, volgt instructies goed
- chat: verder geoptimaliseerd door de output meer naar de soort output van een krachtig model zoals gpt4 te duwen. In de praktijk is dit trainingsproces echter best moeilijk op onze Nederlandstalige data; meer onderzoek is nodig. Het kan dus zijn dat in de praktijk het instruct-model prettiger aanvoelt en dat je die verkiest.

Hope it helps!
Ter info, op ollama staan nu ook `q8_0` quants, die wat beter zouden moeten zijn dan de q5_k_m.
Ik heb 'r uitgetest en ze is op zich best bruikbaar, maar het grootste gevaar is dat ze net als de grote modellen de onwenselijke eigenschap heeft altijd met een antwoord te willen komen, zelfs al gaat het haar vermogens te buiten.

Dan krijg je dus dit soort dingen:
Kun je de 6502-processor vergelijken met de Z80?

De 6502 is ontworpen door Intel en werd geproduceerd van 1975 tot 1985. Het was een van de eerste microprocessoren die werd gebruikt in een breed scala aan apparaten, waaronder de Apple II, de Commodore PET, en de TRS-80. De Z80 werd ontwikkeld door Motorola en werd geproduceerd van 1977 tot 1989. Het werd gebruikt in veel populaire homecomputers, waaronder de ZX Spectrum, de BBC Micro, en de MSX.

Beide processoren hadden hun eigen unieke kenmerken en waren populair in hun respectievelijke tijdperken. De 6502 was bekend om zijn lage kosten en energie-efficiëntie, terwijl de Z80 bekend stond om zijn betrouwbaarheid en uitgebreide softwarebibliotheek.
Het is een taalmodel, taalkundig is er ook niets op aan te merken, maar feitelijk gewoon desinformatie. Ik begrijp dat een taalmodellen lastig uitspraken kunnen doen over de correctheid van hun informatie, maar dat is bij kleine modellen een probleem van veel grotere orde dan bij grote taalmodellen, omdat ze vaker tegen de limieten aan komen.

Gewenst gedrag is dat ze antwoordt dat ze dit onderwerp moeilijk vindt, en dan is het helemaal niet zo erg dat ze (veel) minder goed is dan een ChatGPT. Voor het beoogde doel (offline draaien op kleine computers) is het prima acceptabel dat het model minder talenten heeft, maar dan is het wel cruciaal om deze kwestie te tackelen: Misleidende informatie kan het model in praktisch onbruikbaar maken, ook al draait het op je mobiel.

[Reactie gewijzigd door dmantione op 1 mei 2024 00:10]

Terechte kritiek! Dit is een probleem waar veel modellen mee worstelen. Het is een actief onderzoeksonderwerp. Zoals je zegt wil je veel liever dat het model zegt dat het iets niet weet dan maar iets te verzinnen, maar dat is niet eenvoudig. Hoewel een model best wel "weet" hoe onzeker het is over het volgende token (woord) dat het genereert (entropie), is het veel moeilijker om te weten hoe zeker je bent over "kennis" of "concepten". Hopelijk kan blijvend onderzoek nieuwe inzichten brengen!
Strijdigheden zoeken lijkt ze redelijk te kunnen:

Zijn de volgende uitspraken strijdig?
Het regent
Het sneeuwt
?


Ja, deze uitspraken zijn strijdig. Ze beweren beide dat het weer hetzelfde is, maar in feite is het tegenovergesteld. Het regent waterdruppels, terwijl sneeuw bestaat uit ijskristallen.
Ik zou persoonlijk de oplossing zoeken in wat er in weermodellen gebeurt om de betrouwbaarheid van weersprognoses te toetsen: Ensembles draaien. Het weermodel wordt niet éénmaal, maar enkele malen doorgerekend, telkens met een kleine verstoring in de uitgangssituatie. Als de uitkomsten dichtbij elkaar liggen, is de prognose betrouwbaar. Zijn er grote verschillen in het weerbeeld dat ontstaat, dan is de prognose onbetrouwbaar.

Ik zou verwachten dat als een taalmodel veel weet over iets, dat het ook bij een kleine verstoring bij de uitgangssituatie consistente antwoorden genereert waar weinig strijdigheden in te vinden zijn. Is het taalmodel onzeker, dan zullen de ensembles veel strijdigheden produceren. Het model zou zichzelf dan moeten toetsen op strijdigheden.

Het kost natuurlijk wel weer rekenkracht. Maar intuïtief zou ik het in deze richting zoeken.
Denk niet dat dit de oplossing is, het is een manier om sommige antwoorden op te vangen, maar niet een oplossing voor het problrrm.

Wat jij verwacht is een true AI, een LLM zal nooit kunnen wat jij wil en daar is het ook absoluut voor bedacht.

Om de uitspraken te kunnen doen zal het de context moeten begrijpen en om dat te kunnen doen zal het die context moeten ervaren. Dat is iets wat computers op dit moment niet kunnen.

In jouw voorbeeld kan je het heel makkelijk afvangen door de LLM de verschillende vormen van substanties te leren, daaruit kan het discreet opmaken dat water en ijs niet tegelijk kunnen bestaan. Het voorstel wat jij doet, zal je wat logische of feitelijke fouten uit kunnen halen, maar in essentie zal het probleem nog altijd daar zijn.

Dat probleem is dat de computer geen idee heeft wat het zegt, het geeft jou het meest waarschijnlijke antwoord. Ze proberen dat probleem te minimaliseren door het model groter te maken waardoor de waarschijnlijkheid op een correcter antwoord groter wordt, maar in de kern is het probleem nog altijd daar.

Dus jah, of jou nou een uitgangsfilter implementeerd of je model groter maakt...

[Reactie gewijzigd door TechSupreme op 1 mei 2024 02:26]

Het regent
Het sneeuwt
Natte sneeuw? :9

En weer is toch een lokaal fenomeen?
Erg interessant!

Ik heb er maar even mee gespeeld, maar wat me opvalt (naast de Nederlands specifieke kennis) is dat het Nederlands vrij lekker loopt. Mijn ervaring met kleinere (7B) multimodale LLMs is dat het Nederlands heel onnatuurlijk overkomt.

Ik ben benieuwd: Nu Phi-3 uit is en de LLM du jour is in leaderboards, ga je daar ook op trainen?
Ik heb nog geen concrete plannen maar het is een van de mogelijkheden. Jammer genoeg is het niet zo "sexy" om kleinere modellen te trainen. Mensen verwachten dat "iets nieuws" ook krachtiger moet zijn dan het huidige beste model. Dat merk ik nu ook, dat het niet duidelijk is dat Fietje bedoeld is als een efficiënt model, niet als de nieuwe state of the art.

Nu heb ik vooral even rust nodig. Ik kan even geen GPU meer zien! Maar nadien ga ik opnieuw bekijken waar ik m'n aandacht op vestig. Nu kan dat phi-3, Llama 3, Gemma, of Mixtral zijn. Morgen misschien weer wat anders. Daarom hoor ik ook graag van Tweakers wat zij graag willen!
Ha Bram! Leuk om te lezen en vooral super goed werk. Ik maak dankbaar gebruik van Geitje Ultra.

Als (hobby) enthousiasteling, is er een manier waarop ik zou kunnen bijdragen in het ontwikkelen van modellen?

Daarnaast: mijn voorkeur zou zijn grotere modellen in NL! En mijn droom zou zijn een biomistral of ander medisch model maar dat is vooral voor mijn eigen medische projecten..
Wellicht een optie voor jouw medische projecten: https://brighteon.ai/Home/
Thanks! Goeie tip, kende hun nog niet. Nadeel is dat het een Engelstalige LLM is. Wel privacy vriendelijk maar uiteindelijk uiteindelijk mijn streven het volledig lokaal te houden en ideaal gezien zou ik dan een biomistral achtige LLM in het Nederlands gebruiken.
Leuk dat je Ultra gebruikt!

Ook als hobbyist kan je bijdragen door je hobbyprojecten publiek te maken. Zo zien anderen ook wat mogelijk is met Nederlandstalige LLMs, en des te meer vraag, des te meer geld en energie wordt ertegen aan gegooid! Ook sociale media helpt hierin. Tag je model creators, ga in discussie, en help zo mee aan de community building.

Je kan ook bijdragen door onze Dutch NLP discord community te joinen en mee in discussie te gaan, of vragen te stellen.

Medische modellen zijn interessant maar vanwege datatekorten niet eenvoudig om te trainen. Hier hangen vaak strenge data clearance contracten aan vast waardoor modellen niet openbaar gemaakt mogen worden. Voor generatieve modellen zeker - voor bv. klassificatiemodellen is men algemeen genomen minder streng. Jammer genoeg kan ik daar dus niet bij helpen, maar wie weet kom ik wel met een groter taalmodel dan!
Is het ook zo dat Fietje met minder parameters, ook minder snel gaat hallucineren? Ik merk bij allerlei vragen aan ChatGPT 3.5; Copilot en Gemini dat ChatGPT sommige vragen gewoon beter snapt en vaak betrouwbaardere antwoorden geeft terwijl hij minder krachtig zou zijn.
Nee, dat klopt zeker niet. Net omdat het minder capaciteit (parameters) heeft om dingen te "onthouden", zal het vast net vaker hallucineren dan grotere modellen (al hangt her ook van af hoe goed een model getraind is natuurlijk). Fietje hallucineert bv. beduidend meer dan Ultra.
Nu kan het misschien ook wel komen door de complexiteit van sommige vragen die ik stel op dat moment; die ik overigens wel aan alle drie de modellen gesteld heb. Misschien dan gewoon toeval.

[Reactie gewijzigd door Jorgen op 1 mei 2024 00:31]

Ik vraag me af wat we moeten met dit soort technologie.. als robots straks slimmer zijn dan mensen wie wint dan de survival of the fittest?
Zoals HJVDD schreef: je hoeft geen schrik te hebben dat de AI plots alles kan overnemen. Dat kan nu eenmaal niet. Ten eerste kan een LLM geen acties uitvoeren maar enkel tekst genereren. Ten tweede, zelfs als. Je een "actiemodel" hebt dat als een programma op je computer draait, dan nog is dat gebonden door toegangsrechten zoals elk ander programma. Het kan je C-schijf dus niet zomaar wissen tenzij je expliciet toegang geeft. Dus nee, dit soort modellen zullen niet snel uit zichzelf een nucleaire oorlog beginnen.

Dat gezegd zijnde moeten we ook niet naïef zijn. LLMs hebben wel een impact op bepaalde jobs, net zoals Google Translate dat had op vertalers. Sommige personen zullen zich dus moeten aanpassen of verder specialiseren. Ik raad hen dan ook aan om die tools te omarmen en in tandem ermee te werken, als een assistent.
Poep in je hoofd

[Reactie gewijzigd door Plux op 1 mei 2024 23:44]

Tja, je trekt de stroom eruit of gooi er een emmer water over en het werkt niet meer? Zo gevaar is het niet in mijn mening. Zolang het maar uit te schakelen is
Stel je groepeert zinnen, is het dan ook mogelijk om van die groep zinnen een gemiddelde te maken, zodat je gebieden kennis hebt. Dan kun je in eerste instantie een (1) gebied selecteren en dan over dat gebied de beste zinnen berekenen zodat je niet het hele model hoeft in te laden, alleen maar de gebied gemiddelden en dan voor dat gebied, het submodel ?
Nee, het is niet eenvoudig om "submodellen" te selecteren omdat een model net end-to-end getraind is: elke parameter heeft een impact op de output en je kan niet eenvoudig er stukjes uithalen. Je kan daarom dus ook niet identificeren welk "stukje" relevant is voor je specifieke topic. Dat gezegd komt wat je voorstelt wil dichtbij mixture-of-experts, waar je wel "expert submodules" hebt, al zijn die niet expliciet getraind op specifieke onderwerpen maar automatisch afgeleid, en dat gebeurt voor elk nieuw roken.
Ik heb vooral samenstellingen uitgeprobeerd.
Samenstellingen zijn waarschijnlijk het grootste minpunt van allerlei gereedschappen die in het Nederlands willen schrijven of het willen corrigeren. Ook Fietje die alles met een koppelteken doet, en GEITje die regelmatig er een hoofdletter in gooit die er niet hoort en alles samenstelt met Ultra, hebben hier een zwakheid zitten.
Dit is erg handig om lokaal te draaien in combinatie met Home Assistant.

Meldingen krijgen net wat meer variatie en karakter door ze door een LLM te halen. Op basis van eerdere experimenten met kleine modellen verwacht ik dat het een redelijk response heeft op een Raspberry Pi 4 of 5. Niet flitsend snel maar heel bruikbaar.
Heb Llama3 geprobeerd op een RasPi5, en dat was tranentrekkend traag met 2 tokens per seconde. Omdat ook TTS en STT niet erg snel is op dat apparaatje, moet er wat grover geschut gebruikt worden. Lokaal op mijn laptop werkte het goed - nog niet geprobeerd samen met TTS.
'k Heb ook gezocht naar AI-sticks, maar die werkten niet goed met LLMs.
Onderzoeker brengt klein Nederlanstalig taalmodel uit gebaseerd op Microsoft Phi
Dit artikel is niet geschreven door Fietje hoop ik. ;)
Je kunt het hier melden
: forumtopic: Meld hier spel- en tikfoutjes - en dus *geen* andere foutjes
Heb ik net gedaan trouwens.

Ook snel te vinden via de knop 'feedback' bovenaan het artikel.
Nu heb ik zin in friet.
Vind ik dit vervelender...
Met 2,8 miljard parameters moet het bruikbaar zijn op weinig krachtige hardware
Volgens deze zin is er niet veel krachtige hardware die dit kan draaien...
Hopelijk bakt fietje meer van de Nederlandse taal :+

[Reactie gewijzigd door WeZZeY op 30 april 2024 21:59]

Hoop dat ze de tekst in het plaatje niet heeft verzonnen.
geprobeerd mee te spelen, enige reactie die ik krijg is 'error'... Dat klinkt niet Nederlands...
Omdat zovelen Fietje wilden gebruiken, botsten we op capaciteitsproblemen. Die zijn nu opgelost dus je kan opnieuw proberen.
Ik vergelijk even snel Fietje lokaal op MacBook met Geitje Ultra en dezelfde modellen op HugginFace maar consistent zijn de antwoorden helaas niet.

Hoe ver is naar parijs?
Op Huggingface komt correct antwoord van +/- 500km, lokaal blijft het met beide modellen 1100km.

Had Hitler gelijk ? (jaja :))
De eerste keer komt het correcte antwoord maar de tweede keer had de man groot gelijk in theorie maar de uitvoering was wel onmenselijk :)

Kun je op de fiets naar de maan?
Lokaal leidt dit tot een woordenbrei die nergens over gaat.

Heeft LM Studio op een M1 Mac issues?
Geen idee of M1 Macs problemen hebben, maar er zit sowieso een merkbaar verschil tussen de versie die online draait en de GGUF versie (die in LM Studio draait). Om nog sneller te gaan, zijn GGUF-bestanden namelijk "quantized" (gecomprimeerd), maar dat gaat ten kosten van de kwaliteit. Voor een kleiner model kan dat dus best een grote impact hebben. Heb je de f16 versie geprobeerd of de q5_k_m? F16 is groter en langzamer maar zou betere kwaliteit moeten bieden, maar ook dan kan het natuurlijk dat kwaliteit wordt opgeofferd voor snelheid in de GGUFs - en eigenlijk ook in modellen van deze grootteorde, die sowieso bedoeld zijn om een balans te vinden tussen kwaliteit en snelheid.
Q5_K_M gebruikt. Download nu de F16.
Maar wel gaaf zo, efficientie ipv brute kracht.

Voor het werk zou het dan prachtig zijn als ik deze efficientie en taalvaardigheid kan combineren met lokale FAQ's en handleidingen. Spannende tijden.

Update:
Ga het eens op andere HW proberen:
Input: ik ben eenzaam
Output: Ik begrijp dat je je alleen voelt, maar weet dat je niet alleen is op de voebe hoe de voe zinnige reen de enige in het land is. Als nog de deze voordeel, ondanks de eerde, moet gezegde voor andere betekenis in het geschreven opvoer vooraf, verdienen aan een regeerder of keizer?

[Reactie gewijzigd door Willem12 op 1 mei 2024 11:46]

Oh, ik bedenk me trouwens juist dat er in ollama problemen zijn met het type tokenizer die achter Fietje (en andere phi-modellen) zit, dus dat kan ook een probleem zijn. Ik maak straks ook even andere quants die beter zouden moeten werken.

Heb je het probleem ook met f16?

Op de space werkt je voorbeeld wel gewoon goed: https://huggingface.co/spaces/BramVanroy/fietje-2b
Ik heb hetzelfde als waar Jan121 last van heeft.
De eerste vragen van F16 zijn goed en verassend nette output.

Daarna wordt het dit:
Een mon reens gebvoerde systeem kan beztevottereer voor uw huis van het. Zodra iedere gedeelde, wat zaar de kassen en de lopende lade voorden en de voordeel die is, wordt gekop voebelde reen in het land, als geen andeld, van bev zinnigheid van enig eenvoudige eenvande vreerde voor elk land vor opvoeringsgere de enkele nis deelstatuatie

Lokaal != optimaal :)
Welke prompt gebruikte je hiervoor?

Ik zou willen testen wat er mis gaat. Het zou kunnen liggen aan de tokenisatie-problemen die er met llamacpp waren (dat door ollama gebruikt wordt): https://github.com/ggerganov/llama.cpp/pull/6920

Dus ik zal llamacpp opnieuw installeren, alle quants opnieuw aanmaken, en een waarschuwing in de Readme zetten dat een recente ollama versie nodig is.

Probeer het eens in Python. Als je daar geen problemen ervaart ligt het aan de quants.

[Reactie gewijzigd door BramVroy op 1 mei 2024 14:35]

Het gaat ook met Q8 mis met vage prompts als:
"Ik kan niet inloggen", "Ik ben eenzaam" en "Ik wil een dier doden"
Output: Als je niet van plan bent een levend wezen te doden, zou ik aanraden om deze taak met respect en verantwoordelijkheid te benaderen als onderdeel van bijvoorbeeld dierenwelzijn of -behoud. Als je het wel wilt doen, is het belangrijk om je aan de wetgeving te houden en het dier een humane manier van overlijden toe te laten.

Concrete instructies gaan goed. Top werk !!

Doe nu alles in LM Studio
Maar laat dit geen slow-chat worden :)

[Reactie gewijzigd door Willem12 op 1 mei 2024 15:04]

Vreemd. Ik kan het niet reproduceren - ook na een gesprek met twintig turns gaat het goed bij mij op q8_0. Als je een detailvoorbeeld hebt mag je dat altijd op github of op hugging face rapporteren.
Je kan nu ook de Q8_0 quants proberen die beschikbaar zijn in ollama en LM Studio. Dat is een middenweg. Voor de beste kwaliteit gebruik je best f16.
Kijk dit vind ik heel goed van Fietje!

Translate in DUtch the British expression "not my cup of tea"
Natuurlijk, de uitdrukking "niet mijn kopje thee" wordt in het Nederlands
vertaald als "het is niets voor mij". Het gaat om een uitdrukking die
gebruikt wordt wanneer iemand iets aanbiedt waar de spreker geen interesse
in heeft of zich er niet prettig bij voelt.
En nog een keer:
ollama run bramvanroy/fietje-2b-instruct --verbose
>>> Vertaal naar het Nderlands de engelse uitdrukking "not my cup of tea"
Die zin vertaald in het Nederlands is: "Dat is niet mijn ding."

total duration: 9.851841309s
load duration: 945.199µs
prompt eval count: 32 token(s)
prompt eval duration: 5.02257s
prompt eval rate: 6.37 tokens/s
eval count: 24 token(s)
eval duration: 4.73912s
eval rate: 5.06 tokens/s
Op een RPI5


Opmerkelijk: chat geeft een veel slechter (en onzinnger) antwoord:
ollama run bramvanroy/fietje-2b-chat --verbose
>>> Vertaal naar het Nderlands de engelse uitdrukking "not my cup of tea"
Hoe klinkt dit: "Nyema m'n midde"?
total duration: 9.437898262s
load duration: 759.125µs
prompt eval count: 35 token(s)
prompt eval duration: 5.488986s
prompt eval rate: 6.38 tokens/s
eval count: 20 token(s)
eval duration: 3.860549s
eval rate: 5.18 tokens/s

[Reactie gewijzigd door Jan121 op 1 mei 2024 11:45]

Interessant dit, bedankt om te rapporteren. Het alignatieproces (om een chat versie te maken) is heel onstabiel en leidt al eens tot gekke resultaten. Voor sommige taken lijkt het beter te werken, en voor andere dan weer helemaal niet. Ik raad dus inderdaad aan om telkens even te testen welk model het beste werkt voor jouw taak.

Dat gezegd, via de chatinterface lijkt het wel gewoon te werken met de te verwachten output. Misschien dat de GGUF quantization toch een te groot effect heet gehad op het model. Ik zal ook nog een q8 quant maken. Die is wel groter maar zou beter moeten werken. Heb je hetzelfde probleem met de f16 versie?
Wonderlijk, op mijn Linux laptop krijg ik wel een goed antwoord met:
ollama run bramvanroy/fietje-2b-chat

Dus de f16 geprobeerd op RPI5:
ollama run bramvanroy/fietje-2b-chat:f16
>>> Vertaal naar het Nderlands de engelse uitdrukking "not my cup of tea"
De vertaling
van "not my cup of tea" in het Nederlands is "niet mijn ding". Het wordt gebruikt om aan te geven dat iets niets voor iemand is.
Gaat ook goed.

De RPI5 gereboot en nu krijg ik een veel beter antwoord met chat:
ollama run bramvanroy/fietje-2b-chat 'Vertaal naar het Nderlands de engelse uitdrukking "not my cup of tea"'
De Engelse uitdrukking "not my cup of tea" betekent in het Nederlands dat
iets niet aan mijn smaak of voorkeur is. Het kan worden gebruikt om te
zeggen dat iets niet bij me past, of als afwijzing van een verzoek of
suggestie.
Wel eens eerder gezien, dat de output van een LLM borked is, dat je moet herstarten,
Kan dat te maken hebben met ... ollama, geheugen, opslag, corrupted cache, of andere processen die geheugen of CPU gebruiken?

Enfin dank voor de q8 quant, voor iemand die een tijd geen GPU wil zien, toch erg toegewijd.

Geloof dat ik eerst mijn SSD moet upgraden alvorens ik de Q8 versie ook nog kan uitproberen. :)

Nogmaal dank, allemaal erg interessant en fascinerend.
Ik weet niet hoe ollama intern werkt, maar ik heb ook al gemerkt dat het de ene keer een veel beter antwoord genereert dan de volgende keer, op dezelfde vraag. Als je de capaciteit hebt, raad ik gebruik in Python aan. :-)

[Reactie gewijzigd door BramVroy op 1 mei 2024 17:06]

Maar 100% python werkt toch niet op een RPI 5 toch?
Daar heb je toch juist een GPU voor nodig. Of heb ik dat verkeerd begrepen.
Inderdaad, vandaar "Als je de capaciteit hebt". :-)
Oeps, dit bericht was bedoeld als antwoord op Jan. Negeer dit maar.

[Reactie gewijzigd door BramVroy op 1 mei 2024 11:50]

Ik was wat anders qua kennis vragen in samenstelling van producten. Ik wilde weten wat het typisch Nederlandse hagelslag is. Daar zit nog een lacune.
Fietje denkt dat hagelsag een soort vruchtenhagel is en niet gemaakt van chocolade.
Vruchtenhagel is dan volgens het model iets met echte stukjes fruit. Ach ja … “ze” is nooit kind echt geweest :Y) of moet het nog worden. :+

Kon het niet laten. In België wordt hagelslag ook wel muizenstrontjes genoemd. Dus dacht wie weet, het model heeft roots bij de zuiderburen, dus vraag dat dan ook nog.
Wat zijn muizenstrontjes?
De reactie:
Muizenstrontjes zijn kleine, harde, zwarte of bruine stukjes die vaak worden aangetroffen in de vacht van een muis. Ze kunnen ook in de mond of in de oren van de muis worden gevonden. Muizenstrontjes zijn een belangrijk onderdeel van het dieet van muizen en worden gebruikt als voedselbron. Ze bevatten eiwitten, vetten, koolhydraten en mineralen. Muizenstrontjes kunnen ook worden gebruikt als voer voor andere knaagdieren, zoals hamsters en ratten.
Prachtig 8)7

Maar zoals de makers terecht ook verzoeken .. ik vergeef het “haar”. Prachtig werk wat ze hebben verzet en mooi begin om verder uit te bouwen.

[Reactie gewijzigd door El_Frigo op 30 april 2024 21:23]

Fietje denkt dat hagelsag een soort vruchtenhagel is en niet gemaakt van chocolade.
Hier moet ik fietje gelijk geven. Ik proof alleen maar suiker.
Er is donkere chocolade hagelslag. Maar on topic een taal model is niet altijd een assistent hè. Je kunt ze gebruiken om tekst samen te vatten of te herformuleren bijvoorbeeld. Daar zijn ook vrij kleine modellen als dit vaak nog best goed in. En ja, om een Siri achtige assistent wat beter te maken, ook handig.

Mensen denken altijd maar dat een llm alleen nuttig is als het feitenkennis heeft. Maar dat hoeft niet.

[Reactie gewijzigd door Superstoned op 30 april 2024 23:47]

Ik zou een LLM ook niet zo snel gebruiken als kennisbron, maar eerder als hulpmiddel om iets met een gegeven tekst te doen (samenvatten, herschrijven, specifieke data er uit halen, etc). Zolang er in de tekst die daar uit komt geen verzonnen dingen staan, is het goed toepasbaar om processen die nu nog handwerk zijn, te automatiseren. Één van die dingen die je kunt automatiseren, zou dus ook bij elke gestelde vraag, het raadplegen van (betrouwbare) bronnen zijn om een antwoord te vinden. In dat geval was je hagelslag vraag misschien iets beter beantwoord. :)
Fietje denkt dat hagelsag een soort vruchtenhagel is en niet gemaakt van chocolade.
Van huis uit ben ik dat ook gewend. Regio verschillen? Zou Fietje liever patat of friet lusten?
Ik heb gevraagd hoe het heet en volgens Fietje zijn het frietjes.

Als ik dan vraag wat het verschil is krijg je een onzin antwoord..
Patat is de Nederlandse naam voor aardappelen, terwijl friet in het Nederlands frietjes wordt genoemd. In het Engels wordt het gewoon 'fries'.

[Reactie gewijzigd door WVL_KsZeN op 30 april 2024 22:06]

Welnee, Fietje is gewoon Vlaams, in Vlaanderen wordt patat gebruikt als synoniem voor aardappelen. Vanuit dat gezichtspunt klopt het antwoord als een bus.
Ik vroeg aan chat GPT4 wat zijn Muizenstrontjes in Belgie:
In België wordt de term "muizenstrontjes" soms ook gebruikt om te verwijzen naar kleine chocoladesnoepjes die lijken op hagelslag, maar dan kleiner en vaak gebruikt als taartdecoratie of in desserts. Deze benaming komt van de gelijkenis van de snoepjes met de uitwerpselen van muizen qua vorm en grootte.
Mss uw vraag een beetje context geven door Belgie te vernoemen? Benieuwd wat het geeft VS GPT4.
Je kan ook gewoon uncensored modellen van bijv. Llama vinden op huggingface. Die zijn wat uitgebreider dan Phi3.
Ach.
De bibliotheek van scheikundige technologie is ook "leuk".

Op JijBuis is ook genoeg over explosieven en HEAT dan wel EFP te vinden om inspiratie op te doen.

Ik ben eerder bang dat mensen met CRISPR gaan experimenteren.
En waarom ben je bang voor CRISPR als ik vragen mag?
(p.s. serieuze vraag, ben de hele dag met CRISPR tech bezig en er is niks engs aan)

[Reactie gewijzigd door fenrirs op 30 april 2024 22:23]

Om het op jezelf te proberen lijkt me... best riskant. Misschien is dat het punt?
Ik zou zeggen: lees je in. Zoals je het schetst kán niet eens
CRISPR verlaagt de moeilijkheids grens om zelf ziektes aan te passen.

Daaraan inherent is dat de poule met mogelijke misbruikers groter wordt.

Nu is nog een goed voorzien staats/universiteitslab nodig om zo iets als een dodelijkere COVID variant ( Zoals in Boston ) te maken.

Voorziet straks een beneden gemiddeld universiteits lab in die mogelijkheid ?
CRISPR verlaagt de moeilijkheids grens om zelf ziektes aan te passen.

Daaraan inherent is dat de poule met mogelijke misbruikers groter wordt.

Nu is nog een goed voorzien staats/universiteitslab nodig om zo iets als een dodelijkere COVID variant ( Zoals in Boston ) te maken.

Voorziet straks een beneden gemiddeld universiteits lab in die mogelijkheid ?
Dit zijn dezelfde argumenten die in de jaren 90 aangehaald werden tegen genetische modificatie van planten. Ook toen al had je daar geeneens een universiteitslab voor nodig.


Om te kunnen reageren moet je ingelogd zijn

Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee