Logit_bias er en valgfri parameter som endrer sannsynligheten for at angitte token vises i utdata generert av en modell.
Denne parameteren godtar et JSON-objekt som tilordner token til en tilknyttet bias-verdi fra -100 (som i de fleste tilfeller vil blokkere at tokenet blir generert) til 100 (eksklusivt valg av tokenet, noe som gjør det mer sannsynlig at det blir generert). Moderate verdier som -1 og 1 vil endre sannsynligheten for at et token blir valgt i mindre grad.
Siden parameteren bruker token, ikke tekst, bør du bruke et tokenizer-verktøy for å konvertere tekst til token-ID-er. La oss gå gjennom noen eksempler.
Eksempel 1: Fjern «time»
Hvis vi kaller endepunktet Completions med prompten «Once upon a,», er det svært sannsynlig at fullføringen kommer til å starte med « time.»
Ordet «time» tokeniseres til ID 2435, og ordet « time» (som har et mellomrom i starten) tokeniseres til ID 640. Vi kan sende disse gjennom logit_bias med -100 for å hindre at de vises i fullføringen, slik:
completion = client.chat.completions.create(
model="gpt-3.5-turbo",
messages=[{"role": "system", "content": "Du fullfører brukerens setninger."},
"role": "user", "content": "Once upon a"} ]
logit_bias={2435:-100, 640:-100}
)Nå genererer prompten «Once upon a» fullføringen «midnight dreary, while I pondered, weak and weary.»
Legg merke til at ordet «time» ikke finnes noe sted, fordi vi effektivt har blokkert det tokenet ved å bruke logit_bias.
Eksempel 2: Gi retning med målrettede logit bias-verdier
La oss gå gjennom et annet eksempel med en prompt for oppskriftsgenerator.
Mange oppskrifter foreslår å bruke gryter, men anta at vi ikke har en gryte. Da vil vi fjerne ordet pot fra å bli generert som en del av fullføringen vår. «Pot» tokeniseres til 1787, så vi kan fjerne det fra genereringen vår ved å sette logit_bias som nedenfor.
logit_bias={1787:-100}Nå kan fullføringen vår i stedet inneholde ordet «saucepan». Perfekt!
Eksempel 3: Øk sjansen for at et ord vises
Anta at vi ønsker å øke sannsynligheten for at et ord vises.
Vi driver for eksempel kanskje et nettsted som tilbyr oppskrifter du kan lage med en mikrobølgeovn, så vi vil være sikre på at ordet «microwave» vises i oppskriften. Microwave tokeniseres til ID 27000. Vi kan øke sannsynligheten for at dette tokenet vises ved å sette en positiv logit_bias, slik:
logit_bias={27000:5}Nå er det mer sannsynlig at fullføringen vår inkluderer ordet «microwave».
Vi satte logit_bias til 5, fordi vi fant ut at å sette logit_bias til 1 ofte ikke førte til at ordet «microwave» dukket opp i fullføringen, mens høyere logit_bias-verdier som 10 førte til at ordet « microwave» dukket opp i fullføringen for ofte.
