राम राम मित्रों! क्या आपने कभी ChatGPT या किसी AI Chatbot से एक ही सवाल बार-बार पूछा है? क्या आपको हर बार बिल्कुल एक जैसा जवाब मिला? शायद नहीं! थोड़ा हैरान करने वाला लगता है न? जैसे कि AI का अपना मूड हो। जवाब में कुछ न कुछ तो अंतर मिलता ही है और इसी को Nondeterminism कहा गया है। पर क्या ये सही है? और अगर नहीं, तो इसे ठीक किया जा सकता है या नहीं?
LLMs की इसी समस्या को सुलझाने की कोशिश की हैं मीरा मुराती (OpenAI की पूर्व CTO) ने। उनकी नई कंपनी 'Thinking Machines' ने अपने पहले रिसर्च ब्लॉग "Defeating Nondeterminism in LLM Inference" में exactly इसी समस्या पर से पर्दा उठाया है। आज हम आपको साधारण भाषा में समझाएंगे कि आखिर यह 'Non-Determinism' समस्या है क्या, इसका हल क्या है, और यह हम सभी के लिए क्यों मायने रखता है।
वोट करें: क्या AI का एक ही जवाब देना ज़रूरी है?
इससे पहले कि हम आगे बढ़ें, आप अपनी राय दें:
'Non-Determinism' या 'अनिश्चितता' आखिर है क्या?
Temperature 0(जीरो) पर भी क्यों नहीं रुकती ये Non-Determinism?
फिलहाल इसके लिए GPU और Maths को दोषी ठहराया जाता था!
- फ्लोटिंग पॉइंट मैथ्स: कंप्यूटर decimals के साथ पूरी तरह सटीक Calculation नहीं कर पाते। थोड़ा-बहुत Round Off होता रहता है। जैसे (a + b) + c, a + (b + c) के बराबर नहीं होता।
- GPU Concurrency: GPU हज़ारों Calculations एक साथ करता है। कोई Calculation पहले खत्म होता है, कोई बाद में। इस क्रम के अनिश्चित होने से जवाब भी अनिश्चित हो जाता है।
Thinking Machines ने 'बैच साइज़' (Batch Size) को माना मुख्य अपराधी
- प्रॉम्प्ट = एक गाड़ी जो टोल प्लाजा से गुजरना चाहती है।
- बैच साइज़ = टोल प्लाजा पर एक साथ आने वाली गाड़ियों की संख्या (ट्रैफिक का density)।
- GPU Cores = टोल प्लाजा पर उपलब्ध लेन (Lanes) की संख्या।
क्या होता है?
- कम ट्रैफिक (छोटा Batch Size): अगर सिर्फ 2-3 गाड़ियाँ हैं, तो टोल ऑपरेटर सारी लेन खोलने की जहमत नहीं उठाएगा। वो सभी गाड़ियों को एक ही लेन में लगा देगा। गाड़ियाँ एक के बाद एक क्रम से process होंगी।
- भारी ट्रैफिक (बड़ा Batch Size): अगर 50 गाड़ियाँ एक साथ आ जाती हैं, तो टोल ऑपरेटर सारी लेन खोल देगा। अब गाड़ियाँ अलग-अलग लेन में distributed हो जाएँगी। हर लेन का अपना अलग operator है और अपनी speed है। कोई operator fast है, कोई slow। कोई गाड़ी पहले process हो जाएगी, कोई बाद में।
समस्या कहाँ है?
Thinking Machines का समाधान:
फिर समाधान क्या है? 'बैच-इनवेरिएंट Kernels'
- फिक्स्ड वर्कस्टेशन्स (Fixed Workstations) - RMSNorm के लिए: चाहे लाइन पर एक कार हो या सौ, हर वर्कस्टेशन (जहाँ एक specific पार्ट लगता है) पर काम करने वाला रोबोट हमेशा एक ही तरीके से, एक ही क्रम में, और एक ही number of turns के साथ पेंच कसेगा। वो अपना तरीका कभी नहीं बदलेगा।
- फिक्स्ड असेंबली ऑर्डर (Fixed Assembly Order) - Matrix Multiplication के लिए: कार बनाने का क्रम हमेशा एक जैसा रहेगा। पहले चेसिस, फिर इंजन, फिर बॉडी... इसी क्रम में। भले ही कार का model कुछ भी हो, बुनियादी ऑर्डर वही रहेगा। यह सुनिश्चित करता है कि गणनाओं (calculations) का क्रम कभी न बदले।
- फिक्स्ड क्वालिटी चेकपॉइंट (Fixed Quality Checkpoints) - Attention के लिए: जब कार का एक हिस्सा बन कर तैयार होता है, उसे "टेस्ट" करने का पॉइंट और तरीका हमेशा एक जैसा रहेगा। हर सेक्शन की जाँच एक निश्चित जगह पर और एक निश्चित तरीके से होगी, भले ही पूरी लाइन की स्पीड कुछ भी हो। यह AI के 'Attention' मैकेनिज्म में होने वाले variations को खत्म करता है।
क्या ये तरीका काम करता है? रिजल्ट्स ने किया हैरान!
- बिना समाधान के: एक ही प्रॉम्प्ट ("Tell me about Richard Feynman") को 1000 बार चलाया। Temperature 0 होने के बावजूद, 80 अलग-अलग जवाब मिले! सबसे Common जवाब सिर्फ 78 बार आया।
- समाधान (बैच-इनवेरिएंट कर्नेल) लगाने के बाद: वही प्रॉम्प्ट 1000 बार चलाया। और हर बार... बिल्कुल एक जैसा, शब्द-दर-शब्द, जवाब मिला! 1000/1000 बार।
सिक्के का दूसरा पहलू: Speed बनाम Certainty
- मेडिकल, लीगल, फाइनेंशियल AI Apps के लिए? बिल्कुल! यहाँ सही और Consistent जवाब ज़रूरी है, Speed नहीं।
- क्रिएटिव राइटिंग, स्टोरीटेलिंग के लिए? बिल्कुल नहीं! यहाँ Variety और Creativity ज़्यादा ज़रूरी है।
निष्कर्ष: तो क्या ये रिसर्च AI की दुनिया का Game-Changer है?
- AI की अनिश्चितता एक "Technical Glitch" है, कोई Magic Feature नहीं।
- इसे ठीक किया जा सकता है।
- इससे Debugging, Auditing, और Benchmarking आसान हो जाएगी। AI पर भरोसा बढ़ेगा।
- हालाँकि, इसकी एक Cost है, इसलिए यह हर जगह इस्तेमाल नहीं होगा।

0 टिप्पणियाँ