Few-shot prompting
At vise en sprogmodel en håndfuld løste eksempler i selve forespørgslen, så den efterligner mønstret i det nye tilfælde.
Kladde - dette opslag er endnu ikke gennemgået.
Formelt
En måde at styre en stor sprogmodel på ved at placere flere par af input og svar i prompten før det egentlige input; modellen opfanger opgaven fra eksemplerne under inferensen uden ændringer i sine vægte.
Forklaret enkelt
Som at vise en ny kassemedarbejder tre udfyldte kvitteringer, før de skal skrive den fjerde - de kopierer opsætningen uden undervisning.
I praksis
En kundeserviceleder i en dansk webshop sætter fem gamle returbeskeder, hver efterfulgt af sin årsagskode, over hver ny besked, og assistenten svarer med blot en kode i samme stil.
Hvorfor det betyder noget
Det lader et team få en ny opgave til at virke på få minutter uden finjustering, men eksemplerne optager plads i kontekstvinduet, og modellen kan efterligne deres særheder for tæt.
Teknisk uddybning
Brown m.fl. (2020) brugte GPT-3-artiklen til at fastlægge det ordforråd, der stadig bruges: zero-shot (kun opgavebeskrivelse), one-shot (ét eksempel) og few-shot (så mange eksempler, der kan være i kontekstvinduet, typisk 10 til 100 i deres opsætning med 2.048 tokens), alle uden gradientopdateringer, og de kaldte den bagvedliggende evne in-context learning. Deres hovedresultat var, at few-shot-ydeevnen voksede langt stejlere med modelstørrelsen end zero-shot-ydeevnen, deraf titlen "Language Models are Few-Shot Learners".
Det, modellen lærer af eksemplerne, er snævrere, end det ser ud. Min m.fl. (2022) fandt, at når de korrekte etiketter i eksemplerne blev erstattet med tilfældige, faldt præcisionen knap på mange klassifikationsopgaver; eksemplerne formidler primært etiketrummet, inputfordelingen og outputformatet snarere end selve koblingen mellem input og etiket. Ydeevnen er også følsom over for overfladiske valg. Zhao m.fl. (2021, "Calibrate Before Use") dokumenterede majority-label bias (at foretrække den etiket, der er hyppigst blandt eksemplerne), recency bias (at foretrække det sidste eksempels etiket) og common-token bias, og Lu m.fl. (2022) viste, at blot at ændre rækkefølgen af de samme eksempler kunne flytte præcisionen fra tæt på det bedste til tæt på tilfældigt gæt. Sclar m.fl. (2023) fandt forskelle på op til 76 procentpoint i præcision alene på grund af formatering.
God praksis følger af disse fund: Vælg varierede, repræsentative eksempler, der dækker grænsetilfælde, balancér etiketterne, randomisér eller test rækkefølgen, hold formateringen identisk med det rigtige input, og afgræns eksemplerne tydeligt (fx i mærkede blokke), så modellen ikke forveksler dem med det aktuelle input. Dynamisk few-shot vælger eksemplerne pr. kald ud fra embedding-lighed med inputtet, et lille søgetrin. Med instruktionstilpassede chatmodeller er eksempler ofte mest effektive til at fastlægge format, tone og vanskelige grænsetilfælde, mens instruktionen bærer selve opgavedefinitionen. Med ræsonnementsmodeller kan gevinsten være mindre, og foreskrivende eksempler kan begrænse modellens egen fremgangsmåde.
De vigtigste afvejninger over for alternativerne er pris og læk. Hvert eksempel betales ved hvert kald og optager plads i kontekstvinduet, selvom en stabil eksempelblok i starten af prompten kan leveres fra en prompt-cache. Eksempler kopieret fra produktionsdata kan lægge personoplysninger ind i hvert kald og i udbyderens logs, og modellen kan gengive detaljer fra dem ordret. Når en opgave kræver hundredvis af eksempler, køres i stor volumen eller kræver en ensartet adfærd, som prompting ikke kan levere, bliver finjustering på de samme eksempler det bedre valg.
Hvad du bør lære først
Alt det, dette bygger på - grundlaget først.
- Token
- →Transformer
- →Stor sprogmodel (LLM)
- →Prompt
- →Few-shot prompting
Relationer
- En slags
- Prompt engineering
- Forudsætter
- Prompt
- Forveksl ikke med
- Zero-shot prompting
- Alternativ til
- Finjustering (fine-tuning)
- Bruges sammen med
- Tankekæde (chain-of-thought)
Kilder og videre læsning
Lærebøger
- Jurafsky & Martin, Speech and Language Processing (3rd ed. draft), chapter on large language models
Hvor dataene kommer fra
Dette opslag er skrevet af en AI ud fra kilderne ovenfor og er endnu ikke gennemgået af et menneske. Brug det som udgangspunkt, og tjek alt vigtigt mod kilderne.
Se gennemgangskøenForeslå en rettelse på GitHubDette begreb som JSON
Test dig selv
Indlæser…