LLM VRAM ज़रूरत कैलकुलेटर क्या है?
यह टूल यह अनुमान लगाने में मदद करता है कि किसी लार्ज लैंग्वेज मॉडल (LLM) को इनफरेंस के लिए लोड करके चलाने में आपको कितनी GPU वीडियो मेमोरी (VRAM) की ज़रूरत पड़ेगी। मेमोरी की मात्रा सबसे ज़्यादा दो बातों पर निर्भर करती है — मॉडल में पैरामीटर की संख्या, और हर वेट (weight) को स्टोर करने के लिए इस्तेमाल किया जाने वाला न्यूमेरिक प्रिसिज़न। एक सेफ्टी/ओवरहेड फैक्टर भी जोड़ा जाता है, जो KV कैश, एक्टिवेशन और CUDA कॉन्टेक्स्ट जैसी चीज़ों के लिए होता है — ये केवल वेट्स से ज़्यादा मेमोरी खाते हैं।
इसका इस्तेमाल कैसे करें
मॉडल का आकार अरब (बिलियन) पैरामीटर में डालें — जैसे 7B मॉडल के लिए 7, या Llama-3 70B के लिए 70। फिर प्रिसिज़न चुनें: FP32 हर वेट के लिए 4 बाइट लेता है, FP16/BF16 के लिए 2 बाइट, INT8 के लिए 1 बाइट, और INT4 क्वांटाइज़ेशन के लिए 0.5 बाइट। आखिर में ओवरहेड फैक्टर तय करें — छोटे कॉन्टेक्स्ट वाले इनफरेंस के लिए 1.2 (यानी 20% का बफर) एक ठीक-ठाक डिफ़ॉल्ट है; लंबे कॉन्टेक्स्ट या बैचिंग के लिए इसे बढ़ा दें।
फॉर्मूला समझें
$$\text{VRAM (GB)} = \text{Params (B)} \times \text{Bytes/Param} \times \text{Overhead}$$ चूँकि 1 अरब बाइट ≈ 1 GB होता है, इसलिए अरब में दिए गए पैरामीटर को प्रति पैरामीटर बाइट से गुणा करने पर सीधे गीगाबाइट मिल जाते हैं। इसके बाद ओवरहेड फैक्टर इस आँकड़े को बढ़ाकर रनटाइम के दौरान लगने वाली मेमोरी को भी कवर कर लेता है।
उदाहरण के साथ हिसाब
FP16 में चल रहे 7B मॉडल के लिए, 1.2 ओवरहेड फैक्टर के साथ: $$7 \times 2 \times 1.2 = 16.8 \text{ GB}$$ यह 24 GB वाले कार्ड में आराम से फिट हो जाता है। वही मॉडल INT4 में: $$7 \times 0.5 \times 1.2 = 4.2 \text{ GB}$$ जो किसी 8 GB GPU पर भी आसानी से चल सकता है।
अक्सर पूछे जाने वाले सवाल
असल इस्तेमाल वेट्स की तुलना में ज़्यादा क्यों होता है? KV कैश कॉन्टेक्स्ट की लंबाई और बैच साइज़ के साथ बढ़ता है, और फ्रेमवर्क एक्टिवेशन व बफर के लिए अलग से मेमोरी रिज़र्व रखता है — इसी का अंदाज़ा ओवरहेड फैक्टर लगाता है।
क्या इसमें ट्रेनिंग भी शामिल है? नहीं। ट्रेनिंग को ऑप्टिमाइज़र स्टेट और ग्रेडिएंट के लिए लगभग 3–4 गुना ज़्यादा मेमोरी चाहिए होती है; यह अनुमान सिर्फ़ इनफरेंस के लिए है।
मुझे कौन-सा ओवरहेड इस्तेमाल करना चाहिए? छोटे प्रॉम्प्ट के लिए ~1.2, और लंबे कॉन्टेक्स्ट या भारी बैचिंग के लिए 1.5–2.0+ रखें।