Logit_bias-ը կամընտիր պարամետր է, որը փոփոխում է նշված թոքենների՝ մոդելի ստեղծած ելքում հայտնվելու հավանականությունը։
Այս պարամետրը ընդունում է JSON օբյեկտ, որը թոքենները կապում է համապատասխան շեղման արժեքի հետ՝ -100-ից (որը մեծ մասամբ կարգելափակի այդ թոքենի գեներացումը) մինչև 100 (թոքենի բացառիկ ընտրություն, ինչը ավելի հավանական է դարձնում դրա գեներացումը)։ Միջին արժեքները, օրինակ՝ -1-ը և 1-ը, ավելի փոքր չափով կփոխեն թոքենի ընտրվելու հավանականությունը։
Քանի որ պարամետրը ընդունում է թոքեններ, ոչ թե տեքստ, տեքստը թոքենների ID-ների փոխարկելու համար հարկ կլինի օգտագործել թոքենիզատոր գործիք։ Եկեք անցնենք մի քանի օրինակների։
Օրինակ 1. հեռացնել «time» բառը
Եթե Completions վերջնակետը կանչենք «Once upon a,» հարցումով, լրացումը շատ հավանական է, որ կսկսվի « time»-ով։
«time» բառը թոքենիզացվում է որպես ID 2435, իսկ « time» բառը (որը սկզբում բացատ ունի)՝ որպես ID 640։ Կարող ենք դրանք փոխանցել logit_bias-ին -100 արժեքով, որպեսզի արգելենք դրանց հայտնվելը լրացման մեջ, այսպես՝
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}
)Այժմ «Once upon a» հարցումը ստեղծում է «midnight dreary, while I pondered, weak and weary.» լրացումը։
Նկատի ունեցեք, որ «time» բառը ոչ մի տեղ չկա, քանի որ մենք փաստորեն արգելել ենք այդ թոքենը՝ օգտագործելով logit_bias։
Օրինակ 2. ուղղորդել logit bias-ի նպատակային արժեքներով
Եկեք դիտարկենք ևս մեկ օրինակ՝ օգտագործելով բաղադրատոմսերի գեներատորի հարցում։
Շատ բաղադրատոմսեր առաջարկում են օգտագործել կաթսաներ, բայց ենթադրենք՝ մենք կաթսա չունենք։ Մենք կցանկանանք բացառել «pot» բառի գեներացումը մեր լրացման կազմում։ «Pot»-ը թոքենիզացվում է որպես 1787, ուստի կարող ենք այն հեռացնել մեր գեներացումից՝ սահմանելով մեր logit_bias-ը ստորև ներկայացվածի պես։
logit_bias={1787:-100}Այժմ մեր լրացումը դրա փոխարեն կարող է ներառել «saucepan» բառը։ Հիանալի է։
Օրինակ 3. մեծացնել բառի հայտնվելու հավանականությունը
Ենթադրենք՝ ուզում ենք մեծացնել որևէ բառի հայտնվելու հավանականությունը։
Օրինակ՝ գուցե մենք վարում ենք կայք, որն առաջարկում է բաղադրատոմսեր, որոնք կարելի է պատրաստել միկրոալիքային վառարանով, ուստի ուզում ենք վստահ լինել, որ բաղադրատոմսում հայտնվում է «microwave» բառը։ Microwave-ը թոքենիզացվում է որպես ID 27000։ Կարող ենք մեծացնել այս թոքենի հայտնվելու հավանականությունը՝ սահմանելով դրական logit_bias, այսպես՝
logit_bias={27000:5}Այժմ մեր լրացումն ավելի հավանական է, որ ներառի «microwave» բառը։
Մենք logit_bias-ը սահմանեցինք 5, քանի որ պարզեցինք, որ logit_bias-ը 1 սահմանելը հաճախ չէր հանգեցնում նրան, որ «microwave» բառը հայտնվի լրացման մեջ, մինչդեռ logit_bias-ի ավելի բարձր արժեքները, օրինակ՝ 10-ը, հանգեցնում էին նրան, որ « microwave» բառը չափազանց հաճախ հայտնվի լրացման մեջ։
