Med denna handboken vill vi ge en övergripande bild av vad en språkmodell är, introduktion till mekaniken bakom och förhoppningsvis visa på dess stora potential genom att gå igenom några enkla tillämpningar. Framförallt ägnas stor uppmärksamhet åt vad Prompt Engineering är och några nyckelfaktorer för att ro olika textuppgifter i hamn. Tanken är att denna handboken kommer att kunna användas som ett hjälpmedel för att på egen hand lyckas skapa kreativa prompts och förhoppningsvis utveckla och förbättra specifika tillämpningar.

Handboken har tagits fram av Saga Kristjánsdóttir tillsammans med NLU gruppen på AI Sweden inom ramen för det Vinnova finansierade projektet “GPT-SW3: en svensk basmodell för texthantering”. Handboken är en work-in-progress produkt och kan uppdateras under projektets gång. Frågor kan ställas på AI Nordics Discord.



Intro

Natural Language Processing (NLP) är en typ av datavetenskap som ämnar att ge datorer en form av förståelse och kontext till det mänskliga språket. Framför allt handlar det om hur man kan programmera datorer för att bearbeta och analysera stora mängder språkdata. NLP kan till exempel användas för att filtrera och klassificera e-postmeddelanden för hantering av spammejl [1].

Natural language understanding (NLU) är en viktigt gren inom NLP med syfte att lära maskiner hur man tolkar och förstår språk som matas in av människor. Mer specifikt innebär det att lära maskiner vad text (eller tal) betyder, inklusive språkattribut som sentiment, semantik, kontextuella nyanser och avsikter [2].

Språkmodeller, Language Models på engelska, är en central del av NLP fältet och har en hel del olika tillämpningar, såsom maskinöversättning, stavkorrigering mm. Det finns flera typer av språkmodeller där de vanligaste förekommande är BERT samt GPT. GPT (Generative Pre-trained Transformer) modeller är generativa, vilket **innebär att en modell, som GPT-SW3, har tränats för att kunna givet ett inledande stycke, hädanefter input, generera text i liknande stil, hädanefter output. Läs mer om GPT-SW3 här!


Prompt engineering

Prompt engineering är ett nytt växande fält inom artificiell intelligens, särskilt inom NLP, som kan beskrivas som en slags metod för att utforska prompts som genererar önskvärda eller användbara outputs [3]. Vi kommunicerar med GPT-SW3 genom prompts, med en prompt ger vi modellen instruktioner för att slutföra en viss uppgift. Beroende på hur komplex uppgiften eller hur stor modellen är kan man skapa prompts på lite olika sätt.

Zero-shot learning, one shot learning & few-shot learning [4]

Zero-shot learning, innebär att modellen genererar en output givet en naturlig språkbeskrivning av uppgiften:

Översätt från svenska till engelska:

Ost =>

One-shot learning, innebär att modellen genererar en output givet en naturlig språkbeskrivning av uppgiften och ett exempel:

Översatt från svenska till engelska:

Engelska => Hello my name is Ariel

Svenska =>

Few-shot learning, innebär att modellen genererar en output givet en naturlig språkbeskrivning av uppgiften och några fler exempel:

Översätt från svenska till engelska:

Isbjörn => polar bear

Persilja=> parsley

Ost =>