OpenAI
Šo lapu tulkoja mašīntulks. Skatīt oriģinālo rakstu angļu valodā.

Logit bias izmantošana, lai mainītu tekstvienību varbūtību ar OpenAI API

Uzziniet, kā izmantot parametru logit bias, lai mainītu modeļa izvades

Atjaunināts: 16 hours ago

Logit_bias ir neobligāts parametrs, kas maina varbūtību, ka norādītas tekstvienības parādīsies modeļa ģenerētā izvadē.

Šis parametrs pieņem JSON objektu, kurā tekstvienībām tiek piesaistīta attiecīgā nobīdes vērtība no -100 (kas vairumā gadījumu bloķēs šīs tekstvienības ģenerēšanu) līdz 100 (ekskluzīva tekstvienības izvēle, kas palielina tās ģenerēšanas iespējamību). Mērenas vērtības, piemēram, -1 un 1, mazākā mērā mainīs tekstvienības atlasīšanas varbūtību.

Tā kā parametrs pieņem tekstvienības, nevis tekstu, izmantojiet tekstvienību dalīšanas rīku, lai tekstu pārveidotu par tekstvienību ID. Apskatīsim dažus piemērus.

1. piemērs: noņemiet „time”

Ja izsaucam Completions galapunktu ar uzvedni „Once upon a,”, turpinājums, ļoti iespējams, sāksies ar „ time.”

Vārdam „time” atbilst tekstvienības ID 2435, bet vārdam „ time” (kam sākumā ir atstarpe) atbilst tekstvienības ID 640. Varam tos nodot caur logit_bias ar vērtību -100, lai aizliegtu to parādīšanos turpinājumā, šādi:

completion = client.chat.completions.create( 
model="gpt-3.5-turbo",
messages=[{"role": "system", "content": "Jūs pabeidzat lietotāja teikumus."},
"role": "user", "content": "Once upon a"} ]
logit_bias={2435:-100, 640:-100}
)

Tagad uzvedne „Once upon a“ ģenerē turpinājumu „midnight dreary, while I pondered, weak and weary.“

Ievērojiet, ka vārds „time“ nekur nav atrodams, jo ar logit_bias esam faktiski aizlieguši šo tekstvienību.

2. piemērs. Virziet ģenerēšanu ar mērķtiecīgi izvēlētām logit bias vērtībām

Apskatīsim vēl vienu piemēru, izmantojot recepšu ģeneratora uzvedni.

Daudzās receptēs ieteikts izmantot katlus, bet pieņemsim, ka mums katla nav. Mēs nevēlamies, lai mūsu ģenerētajā turpinājumā parādītos vārds „pot“. Vārdam „Pot“ atbilst tekstvienība ar ID 1787, tāpēc varam nepieļaut tā ģenerēšanu, iestatot logit_bias, kā parādīts tālāk.

logit_bias={1787:-100}

Tagad mūsu turpinājumā tā vietā varētu būt vārds „saucepan”. Lieliski!

3. piemērs. Palieliniet vārda parādīšanās iespējamību

Pieņemsim, ka vēlamies palielināt kāda vārda parādīšanās varbūtību.

Piemēram, varbūt uzturam vietni ar receptēm ēdieniem, ko var pagatavot mikroviļņu krāsnī, tāpēc vēlamies, lai receptē noteikti būtu vārds „microwave“. Vārdam Microwave atbilst tekstvienība ar ID 27000. Varam palielināt šīs tekstvienības parādīšanās varbūtību, iestatot pozitīvu logit_bias vērtību, kā parādīts tālāk:

logit_bias={27000:5}

Tagad mūsu turpinājumā, visticamāk, būs iekļauts vārds „microwave“.

Mēs iestatījām logit_bias uz 5, jo konstatējām, ka, iestatot logit_bias uz 1, vārds „microwave“ bieži netika iekļauts turpinājumā, savukārt ar lielākām logit_bias vērtībām, piemēram, 10, vārds „ microwave“ turpinājumā parādījās pārāk bieži.

Vai šis raksts bija noderīgs?