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” എന്ന വാക്ക് പ്രത്യക്ഷപ്പെടാൻ കാരണമായില്ലെന്ന് ഞങ്ങൾ കണ്ടെത്തി, അതേസമയം 10 പോലുള്ള ഉയർന്ന logit_bias മൂല്യങ്ങൾ പൂർത്തീകരണത്തിൽ “ microwave” എന്ന വാക്ക് വളരെ അധികം തവണ പ്രത്യക്ഷപ്പെടാൻ കാരണമായി.
