GPT

DanskGPT: Et vanvids-projekt for en enkelt mand


Computer setup, der skal illustrere træning af LLM
Mark Sinclair Fleeton

Journalist

   Læsetid 9 minutter
Array

En dansk sprogmodel. Flere har sagt, at det ikke kan lade sig gøre og mange har sagt, at det ikke kan betale sig. Mads Henrichsen har trænet en. Han kalder den DanskGPT.

Mads Henrichsen har en bachelor i IT og erhvervsøkonomi og en kandidat i data science fra CBS. Han har være ansat hos Ernst & Young og LEO Pharma. LEO Pharma lå ligefor, fordi han havde skrevet speciale i diagnosticering af modermærkekræft ved hjælp af machine learning.  I dag er han ansat i PFA, hvor han arbejder med automatisering på en række områder internt i virksomheden. Selvom han arbejder med AI i hverdagen, så var en stor dansk sprogmodel måske ikke lige noget, han havde tænkt på at lave. Og han havde i hvert fald ikke gjort sig nogen forestillinger om, hvor stort et arbejde, der lå i det.

På det tidspunkt, jeg startede projektet, tror jeg ikke, at jeg vidste, hvor stort et projekt var. Det er lidt et vanvidsprojekt, at man gør det her i en enkelt mand,” siger Mads Henrichsen.

I Sverige har de været 40 mennesker om et tilsvarende projekt, forklarer han og mener i øvrigt, at de har gjort det på en forkert måde. I Sverige valgte man at skabe deres egen foundation model med helt egen arkitektur, der kun er understøttet få steder.

Mads Henrichsens udgangspunkt er, at de amerikanske modeller slet ikke kan fanger nuancerne i det danske sprog.

Der er rigtig mange ting i dansk sprog, der er lidt finurligt, som ikke bliver opfanget af de amerikanske modeller De er jo selvfølgelig også trænet på et godt mængde dansk, men slet ikke i nærheden af mit dataset,” siger han

Gennembruddet

Historien om DanskGPT er næsten historien om de store sprogmodellers gennembrud i den brede offentlighed og man kan starte de store sprogmodellers historie mange steder. Gennembruddet starter med Transformer-arkitekturen. Transformer-arkitekturen revolutionerer måden maskiner lærer sprog på, fordi den giver mulighed for at se på alle ordene i en sætning og forstå sammenhængen.

14. februar 2019: GPT-2 blev lanceret den 14. februar med 1,5 milliarder parametre. Parametrene er en række tal, som afgør hvordan modellen forstår og generer tekst. Altså hvordan den forstår dit spørgsmål og hvilket svar den giver – groft sagt.

11. juni 2020: GPT-3 blev lanceret med 175 milliarder parametre.

30. november 2022: OpenAI begynder at omtale deres senere opdatering af deres GPT-3 model som GPT 3.5 og lancerer samme dag ChatGPT baseret på GPT 3.5.

Det kan jeg lave bedre

December 2022: Mads Henrichsen sidder til en julefrokost og skælder ud på det system, som Karnovs Lovsamling har bygget op. Det er et dårligt system og det tjener for mange penge, mener han.

Karnov har 700 mio. kr. i banken, og de tjener 80 mio. kr. i profit hvert år. Det de gør er, at hente ting der er offentlig tilgængeligt i forvejen og skrive nogle kommentarer til dem,” fortæller Mads Henrichsen.

Han sagde til sin kollega, at han kunne lave en model, der kunne læse kommentarerne og de blev enige om, at det kunne være sjovt at køre. De fik tilladelse til projektet og downloade herefter hele domsdatabasen.

Dommene består af en domstekst og en dom  Så ideen var at man kunne give modellen hele domsteksten, og så kunne den komme med et forslag til en dom, og skrive en domstekst,” forklarer Mads Henrichsen.

Modellen kunne fx bruges til, at hvis den vurderede at man ville blive idømt en bøde på 500.000 kr., så kunne man gå til modparten og foreslå et forlig på 400.000 kr.

December 2022: De havde de ikke adgang til en open source stor sprogmodel, så de trænede en model, der på det tidspunkt hed NanoGPT – en meget lille transformermodel. 

Den kørte så på min bærbare i løbet af et par nætter. Og den var rigtig, rigtig dårlig.

Modellen var på 50 tokens svarende til ca. 25 ord op til 25 ord klarede den sig fint, men derefter gik det op i hallucinationer.

Februar 2023: Meta AI præsenterer LLaMA-1-modellen med henholdsvis 7, 13, 33 og 65 milliarder parametre.

Marts 2023: Stanford University kommer med deres Alpaca Model baseret på LLaMA-1, der kører på langt mindre kapacitetskrævende hardware.

Hvis bare vi havde den model på dansk

Karnov-systemet var ikke en fantastisk succes, men udviklingen gik stærkt på det her tidspunkt og i februar 2023 kommer den første LLaMA-model fra Meta AI, der er open source. LLaMA-1 er en completion model, der egentligt bare skriver videre på en tekst, man giver den. Den kan ikke svare på spørgsmål, som ChatGPT kan. Det kan Stanford Universitys Alpaca-model til gængæld.

Det er så der, jeg tænker, at det kunne være sjovt, hvis vi bare havde samme model på dansk,” siger Mads Henrichsen.

Modellens dataset består af 51.000 rækker med spørgsmål og svar og Mads Henrichsen tænker, at så må han jo bare oversætte dem. Han finder en den bedste model på Hugging Face til machine translation og en uge efter er den klar. 

De er ikke super gode. Den kan godt nogenlunde forstå hvad jeg siger, men det er lidt som at snakke med de der spam e-mails, man får fra en eller anden prins fra Nigeria.  Måske lidt bedre,” griner Mads Henrichsen.

Han vælger at tage LLaMA-1 modellen med 7 milliarder parametre og træner sin model med 1 % af det, for at den ikke skal blive for tung at køre. Men den er stadigt ikke helt god, selvom han beskriver den som at tale med en Google-translate robot. Det skulle gøres ordentligt.

18. juli 2023: Meta AI præsenterer LLaMA-2-modellen med henholdsvis 7, 13 og 70 milliarder parametre.

Når man skal gøre noget ordentligt, så skal man gøre det rigtig ordentligt. I Danmark har vi et dataset der hedder Gigaworld,  som består af en milliard danske ord.  Det havde jeg besluttet mig for, at det måtte jeg genskabe, men bare gøre det endnu større,” siger Mads Henrichsen.

Derfor satte han i gang med at scrape internettet og i dag er hans datasæt oppe på 3 milliarder ord. I mellemtiden var LLaMA-2 dukket op med en Apache-2 licens, der vil sige, at den må bruges kommercielt og Mads Henrichsen bestemte sig for, at tiden var kommet.

Stor ståhej for DanskGPT

Han gik derfor i gang med en full fine tune, altså at træne modellen på alle parametre i stedet for blot 1 %. Grundlæggende ved at stille modellen spørgsmål og få svar og derefter lade begge indgå i træningssættet. 

Det er en iterativ proces, hvor man hele tiden træner nye modeller til at give bedre svar på det du spørger om og selv generere de her spørgsmål, man kan stille dem osv. Til sidst står man med et ret stort instruction dataset,” siger Mads Henrichsen.

Det betyder på almindeligt dansk, at du kan stille modellen et spørgsmål, men du kan ikke stille et opfølgende spørgsmål.

5. september 2023: På Danish Data Science Community’s meetup den 14. september kunne Mads Henrichsen præsentere sin DanskGPT-model og det skabte en del omtale og han fik efterfølgende henvendelser fra både medier og virksomheder, der så muligheder i modellen.

Mads Henrichsen har allerede taget hul på næste skridt. For to uger siden skrivende stund begyndte han at sætte en chatmodel ned over.

Det vil sige, at jeg omformaterede hele mit instruction dataset og genererede modellen, så den reagerede på samme måde, som hvis du chatter med ChatGPT. Det vil sige, hvor du forventer, at den ved, hvad du har spurgt om før. Og det er det, den er i gang med at træne nu,” siger Mads Henrichsen.

Han regner med at chat-udgaven af DanskGPT er trænet færdig om en uges tid fra jeg skriver dette. Det hører med til historien, at Mads Henrichsen selv har betalt for hele processen. Da han holdt oplægget den 5. september, havde han brugt omkring 96.820 kr. på projektet.

0 notes
664 views

Write a comment...

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *