📘 Temperature, Top-k, Top-p Sampling Explained
🔰 परिचय
LLMs जैसे GPT जब किसी इनपुट का उत्तर देते हैं, तो वो कोई “fixed output” नहीं बनाते — बल्कि संभावनाओं के आधार पर अगला शब्द चुनते हैं।
इस निर्णय प्रक्रिया को नियंत्रित करने के लिए तीन प्रमुख टूल्स का उपयोग होता है:
-
Temperature
-
Top-k Sampling
-
Top-p Sampling (Nucleus Sampling)
इनका मुख्य उद्देश्य है:
➤ Output की विविधता (diversity) और
➤ सटीकता (coherence) के बीच संतुलन बनाना।
🔢 Language Model Sampling का मूल सिद्धांत
हर टोकन (word या subword) के लिए मॉडल संभाव्यता स्कोर देता है:
“इसके बाद कौन सा टोकन सबसे संभावित है?”
उदाहरण:
Input: The cat sat on the
Top token predictions:
1. mat → 0.65
2. roof → 0.15
3. chair → 0.08
4. bed → 0.04
5. table → 0.02
अब Temperature और Sampling methods यह तय करते हैं कि कौन सा टोकन चुना जाए।
🌡️ Temperature: Output की Randomness को नियंत्रित करना
Temperature एक स्केलिंग फैक्टर है (0–1–2+), जो टोकन की संभाव्यता वितरण को “sharpen” या “flatten” करता है।
कैसे काम करता है:
-
Low temperature (e.g., 0.2):
→ केवल सबसे probable टोकन चुना जाएगा।
→ Output ज़्यादा deterministic और predictable होता है। -
High temperature (e.g., 1.0+):
→ Randomness अधिक।
→ Output में creativity बढ़ती है लेकिन coherence घट सकती है।
उदाहरण तुलना:
Temperature | Output |
---|---|
0.2 | “The cat sat on the mat.” |
1.0 | “The cat sat on the piano.” |
1.5 | “The cat hovered above broccoli.” |
🎯 Practical use: Temperature = 0.7 या 0.8 balanced मानी जाती है।
🎯 Top-k Sampling: Fixed Choices में Randomness
Top-k Sampling में model केवल k सबसे संभावित टोकनों को ही consider करता है, और उन्हीं में से एक randomly चुनता है।
उदाहरण:
यदि k = 5 हो, तो मॉडल केवल top 5 संभावनाओं में से चयन करेगा, बाकी सभी को ignore कर देगा।
लाभ:
-
Extreme randomness को control करता है
-
Controlled creativity देता है
तुलना:
k Value | Behavior |
---|---|
k = 1 | Deterministic (Greedy) |
k = 5 | Controlled variation |
k = 50 | High diversity |
🎯 Top-p Sampling (Nucleus Sampling): Cumulative Probability Based
Top-p Sampling एक और refined तकनीक है जिसमें cumulative probability (p) के आधार पर टोकन चुने जाते हैं।
उदाहरण:
यदि p = 0.9 है, तो मॉडल टॉप टोकनों का ऐसा सेट चुनेगा जिनकी कुल संभावना ≥ 90% हो — और फिर उन्हीं में से रैंडमली चुनाव करेगा।
यह dynamic k जैसा है — हर इनपुट पर अलग-अलग टोकन काउंट चुन सकता है।
तुलना:
p Value | व्यवहार |
---|---|
p = 0.5 | केवल highly probable टोकन |
p = 0.9 | विविध लेकिन संभावित उत्तर |
p = 1.0 | लगभग सभी टोकन consider होते हैं |
🔍 Side-by-Side Comparison
Technique | आधार | Output Diversity | Control |
---|---|---|---|
Temperature | Scaling logits | Medium | Global randomness |
Top-k | Fixed top-k tokens | Medium-High | Hard cutoff |
Top-p | Cumulative probability | Adaptive | Soft cutoff |
🧪 संयुक्त प्रयोग (Combined Usage)
यह तीनों तकनीकें एक साथ भी प्रयोग की जा सकती हैं:
{
"temperature": 0.8,
"top_k": 40,
"top_p": 0.95
}
👉 इससे output ना ही बहुत random होगा, ना बहुत rigid — बल्कि balanced रहेगा।
💼 उपयोग केस अनुसार सेटिंग्स
उपयोग | Recommended Setting |
---|---|
Creative Writing | Temperature 1.0, Top-p 0.95 |
Technical Answers | Temperature 0.3–0.5, Top-k 10 |
Coding | Temperature 0.2–0.5, Top-p 0.8 |
Summarization | Temperature 0.3, Top-k 20 |
⚠️ ध्यान देने योग्य बातें
-
Temperature = 0 देने पर मॉडल हमेशा highest probability टोकन ही चुनेगा (Greedy decoding)
-
Sampling को पूरी तरह बंद करना हो तो Beam Search या Deterministic decoding का उपयोग करें
-
उच्च randomness से hallucination बढ़ सकती है
🧠 Key Takeaways
-
Temperature और sampling settings LLM के आउटपुट को कंट्रोल करने के सबसे प्रभावी साधन हैं।
-
Low temperature = High confidence, Low creativity
-
High temperature = High diversity, Low reliability
-
Top-k और Top-p sampling randomness को smart boundaries में नियंत्रित करते हैं
-
इनका सही कॉम्बिनेशन आपके prompt outputs की गुणवत्ता को गहराई से प्रभावित करता है।