OpenAI
Tämä sivu on konekäännetty. Katso alkuperäinen englanninkielinen artikkeli.

Logit biasin käyttö tokenin todennäköisyyden muuttamiseen OpenAI API:ssa

Opi käyttämään logit bias -parametria mallin tulosteiden muokkaamiseen

Päivitetty: 15 hours ago

Logit_bias on valinnainen parametri, joka muuttaa määritettyjen tokenien todennäköisyyttä esiintyä mallin luomassa tulosteessa.

Tämä parametri hyväksyy JSON-objektin, joka yhdistää tokenit niihin liittyvään bias-arvoon välillä -100 (mikä useimmissa tapauksissa estää kyseisen tokenin luomisen) ja 100 (tokenin yksinomainen valinta, mikä tekee sen luomisesta todennäköisempää). Kohtuulliset arvot, kuten -1 ja 1, muuttavat tokenin valinnan todennäköisyyttä vähäisemmässä määrin.

Koska parametri käyttää tokeneita eikä tekstiä, kannattaa käyttää tokenisointityökalua tekstin muuntamiseen tokenien ID-tunnuksiksi. Käydään läpi muutama esimerkki.

Esimerkki 1: Poista ”time”

Jos kutsumme Completions-endpointia kehotteella ”Once upon a,”, täydennys alkaa hyvin todennäköisesti merkkijonolla ” time.”

Sana ”time” tokenisoituu tunnukseksi 2435, ja sana ” time” (jossa on alussa välilyönti) tokenisoituu tunnukseksi 640. Voimme välittää nämä logit_bias-parametrin kautta arvolla -100 estääksemme niiden näkymisen täydennyksessä näin:

completion = client.chat.completions.create( 
model="gpt-3.5-turbo",
messages=[{"role": "system", "content": "You finish user's sentences."},
"role": "user", "content": "Once upon a"} ]
logit_bias={2435:-100, 640:-100}
)

Nyt kehote ”Once upon a” tuottaa täydennyksen ”midnight dreary, while I pondered, weak and weary.”

Huomaa, että sanaa ”time” ei löydy mistään, koska olemme käytännössä estäneet kyseisen tokenin logit_bias-parametrilla.

Esimerkki 2: Ohjaa kohdennetuilla logit bias -arvoilla

Käydään läpi toinen esimerkki käyttäen reseptigeneraattorin kehotetta.

Monissa resepteissä ehdotetaan kattiloiden käyttöä, mutta oletetaan, ettei meillä ole kattilaa. Haluamme estää sanan pot luomisen osana täydennystämme. ”Pot” tokenisoituu tunnukseksi 1787, joten voimme poistaa sen generoinnistamme asettamalla logit_bias-arvon alla esitetyllä tavalla.

logit_bias={1787:-100}

Nyt täydennyksemme saattaa sen sijaan sisältää sanan ”saucepan”. Täydellistä!

Esimerkki 3: Lisää sanan esiintymisen todennäköisyyttä

Oletetaan, että haluamme lisätä sanan esiintymisen todennäköisyyttä.

Esimerkiksi ehkä ylläpidämme sivustoa, joka tarjoaa reseptejä, joita voi valmistaa mikroaaltouunilla, joten haluamme varmistaa, että sana ”microwave” esiintyy reseptissä. Microwave tokenisoituu ID-tunnukseksi 27000. Voimme lisätä tämän tokenin esiintymisen todennäköisyyttä asettamalla positiivisen logit_bias-arvon näin:

logit_bias={27000:5}

Nyt täydennyksemme sisältää todennäköisemmin sanan ”microwave”.

Asetimme logit_bias-arvoksi 5, koska havaitsimme, että logit_bias-arvon asettaminen arvoon 1 ei usein saanut sanaa ”microwave” näkymään täydennyksessä, kun taas suuremmat logit_bias-arvot, kuten 10, johtivat siihen, että sana ” microwave” esiintyi täydennyksessä liian usein.

Oliko tästä artikkelista apua?