OpenAI
Denne siden ble maskinoversatt. Se den opprinnelige engelske artikkelen.

Bruke logit bias til å endre token-sannsynlighet med OpenAI API

Lær hvordan du bruker parameteren logit bias til å endre modellutdata

Oppdatert: 13 days ago

Logit_bias er en valgfri parameter som endrer sannsynligheten for at angitte tokener vises i utdata generert av en modell.

Denne parameteren godtar et JSON-objekt som tilordner tokener til en tilknyttet bias-verdi fra -100 (som i de fleste tilfeller hindrer at den tokenen genereres) til 100 (eksklusiv valg av tokenen, som gjør det mer sannsynlig at den genereres). Moderate verdier som -1 og 1 endrer sannsynligheten for at en token blir valgt, i mindre grad.

Siden parameteren tar inn tokener, ikke tekst, bør du bruke et tokeniseringsverktøy til å konvertere tekst til token-ID-er. La oss gå gjennom noen eksempler.

Eksempel 1: Fjern «time»

Hvis vi kaller Completions-endepunktet med prompten «Once upon a», vil fullføringen svært sannsynlig starte med « time».

Ordet «time» tokeniseres til ID-en 2435, og ordet « time» (som har et mellomrom i starten) tokeniseres til ID-en 640. Vi kan sende disse gjennom logit_bias med -100 for å forhindre 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 utestengt den tokenen ved hjelp av logit_bias.

Eksempel 2: Gi retning med målrettede logit bias-verdier

La oss gå gjennom et annet eksempel, ved hjelp av en prompt for en oppskriftsgenerator.

Mange oppskrifter foreslår å bruke gryter, men anta at vi ikke har en gryte. Vi vil forhindre at ordet pot genereres som en del av fullføringen vår. «Pot» tokeniseres til 1787, så vi kan fjerne det fra genereringen vår ved å angi logit_bias som nedenfor.

logit_bias={1787:-100}

Nå kan fullføringen vår inkludere ordet «saucepan» i stedet. Perfekt!

Eksempel 3: Øk sjansen for at et ord dukker opp

Anta at vi vil øke sannsynligheten for at et ord dukker opp.

For eksempel kan det hende vi driver et nettsted som tilbyr oppskrifter du kan lage med en microwave, så vi vil være sikre på at ordet «microwave» vises i oppskriften. Microwave tokeniseres til ID 27000. Vi kan øke sannsynligheten for at denne tokenen dukker opp ved å angi 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, siden vi fant ut at det å 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.

Var denne artikkelen nyttig?