Logit_bias एक वैकल्पिक पैरामीटर है, जो किसी मॉडल द्वारा जनरेट किए गए आउटपुट में निर्दिष्ट टोकन के आने की संभावना को बदलता है.
यह पैरामीटर एक JSON ऑब्जेक्ट स्वीकार करता है, जो टोकन को -100 (जो अधिकतर मामलों में उस टोकन को जनरेट होने से रोक देगा) से 100 (टोकन का विशिष्ट चयन, जिससे उसके जनरेट होने की संभावना अधिक हो जाती है) तक के संबंधित बायस मान से मैप करता है. मध्यम मान, जैसे -1 और 1, किसी टोकन के चुने जाने की संभावना को कम स्तर पर बदलेंगे.
क्योंकि पैरामीटर टेक्स्ट नहीं, टोकन लेता है, इसलिए टेक्स्ट को टोकन आईडी में बदलने के लिए आपको टोकनाइज़र टूल का उपयोग करना होगा. आइए कुछ उदाहरणों से समझते हैं.
उदाहरण 1: “time” हटाएँ
अगर हम Completions एंडपॉइंट को “Once upon a,” प्रॉम्प्ट के साथ कॉल करें, तो कम्प्लीशन के “ time.” से शुरू होने की बहुत संभावना है.
शब्द “time” टोकनाइज़ होकर आईडी 2435 बनता है और शब्द “ time” (जिसके शुरू में एक स्पेस है) टोकनाइज़ होकर आईडी 640 बनता है. इन्हें -100 के साथ logit_bias में पास करके हम इन्हें कम्प्लीशन में आने से रोक सकते हैं, जैसे:
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 नहीं है. हम चाहेंगे कि हमारे कम्प्लीशन के हिस्से के रूप में शब्द “pot” जनरेट न हो. “Pot” टोकनाइज़ होकर 1787 बनता है, इसलिए नीचे की तरह logit_bias सेट करके हम इसे अपनी जनरेशन से हटा सकते हैं.
logit_bias={1787:-100}अब, इसके बजाय हमारे कम्प्लीशन में शब्द “saucepan” शामिल हो सकता है. बिल्कुल सही.
उदाहरण 3: किसी शब्द के आने की संभावना बढ़ाएँ
मान लें कि हम किसी शब्द के आने की संभावना बढ़ाना चाहते हैं.
उदाहरण के लिए, शायद हम एक ऐसी साइट चला रहे हैं जो ऐसी रेसिपी देती है जिन्हें आप microwave से बना सकते हैं, इसलिए हम सुनिश्चित करना चाहते हैं कि रेसिपी में शब्द “microwave” आए. Microwave टोकनाइज़ होकर आईडी 27000 बनता है. हम सकारात्मक logit_bias सेट करके इस टोकन के आने की संभावना बढ़ा सकते हैं, जैसे:
logit_bias={27000:5}अब, हमारे कम्प्लीशन में शब्द “microwave” शामिल होने की संभावना अधिक है.
हमने logit_bias को 5 पर सेट किया, क्योंकि हमने पाया कि logit_bias को 1 पर सेट करने से अक्सर कम्प्लीशन में शब्द “microwave” नहीं आता था, जबकि 10 जैसे उच्च logit_bias मानों से कम्प्लीशन में शब्द “ microwave” बहुत बार आने लगा.
