स्टेप 11 · मॉडर्न आर्किटेक्चर अपग्रेड्स
2019 के ट्रांसफ़ॉर्मर और 2026 के ट्रांसफ़ॉर्मर में क्या फर्क है। छह बदलाव—हर एक छोटा, लेकिन मिलकर बहुत बड़ा असर डालते हैं।
60 सेकंड में
स्टेप 11 · मॉडर्न आर्किटेक्चर अपग्रेड्स
2019 के ट्रांसफ़ॉर्मर और 2026 के ट्रांसफ़ॉर्मर में क्या फर्क है। छह बदलाव—हर एक छोटा, लेकिन मिलकर बहुत बड़ा असर डालते हैं।
| बदलाव | किसकी जगह ली | क्यों |
|---|---|---|
| RoPE | सीखे गए (Learned) पोज़िशन एम्बेडिंग्स | रिलेटिव दूरी, बेहतर एक्सट्रापोलेशन |
| RMSNorm | LayerNorm | सस्ता, क्वालिटी में कोई नपा-तुला नुकसान नहीं |
| SwiGLU | ReLU/GELU MLP | प्रति पैरामीटर बेहतर क्वालिटी |
| कोई बायस (bias) नहीं | हर जगह बायस टर्म्स | कम पैरामीटर्स, ज़्यादा स्टेबल |
| GQA | Multi-head attention | इनफ़रेंस के समय बहुत छोटा KV cache |
| MoE | Dense फ़ीड-फ़ॉरवर्ड | प्रति टोकन समान कंप्यूट में ज़्यादा पैरामीटर्स |
ग्रुप्ड-क्वेरी अटेंशन: इनफ़रेंस का बड़ा फ़ायदा
class GQA(nn.Module):
def __init__(self, d_model, n_head, n_kv_head):
super().__init__()
self.n_head, self.n_kv = n_head, n_kv_head
self.d_head = d_model // n_head
self.rep = n_head // n_kv_head # query heads per kv head
self.q = nn.Linear(d_model, n_head * self.d_head, bias=False)
self.kv = nn.Linear(d_model, 2 * n_kv_head * self.d_head, bias=False)
self.proj = nn.Linear(d_model, d_model, bias=False)
def forward(self, x):
B, T, C = x.shape
q = self.q(x).view(B, T, self.n_head, self.d_head).transpose(1, 2)
k, v = self.kv(x).view(B, T, 2, self.n_kv, self.d_head).unbind(2)
k = k.transpose(1, 2).repeat_interleave(self.rep, dim=1)
v = v.transpose(1, 2).repeat_interleave(self.rep, dim=1)
y = F.scaled_dot_product_attention(q, k, v, is_causal=True)
return self.proj(y.transpose(1, 2).reshape(B, T, C))मिक्सचर ऑफ़ एक्सपर्ट्स: ज़्यादा दिमाग, वही ख़र्च
- प्रति टोकन समान कंप्यूट के लिए कहीं ज़्यादा नॉलेज कैपेसिटी।
- दिए गए लॉस तक तेज़ी से ट्रेनिंग।
- एक्सपर्ट्स ख़ास चीज़ों में माहिर हो जाते हैं, जिन्हें कभी-कभी आसानी से समझा भी जा सकता है।
- सभी पैरामीटर्स मेमोरी में होने चाहिए, यहाँ तक कि इनएक्टिव वाले भी — सर्विंग के लिए बहुत ज़्यादा VRAM चाहिए।
- लोड बैलेंसिंग पेचीदा है; ऑक्ज़ीलरी लॉस के बिना कुछ ही एक्सपर्ट्स के पास सारा काम चला जाता है।
- डिस्ट्रीब्यूट, फाइन-ट्यून और क्वांटाइज़ करना ज़्यादा मुश्किल है।
- लेटेंसी में ज़्यादा उतार-चढ़ाव (वेरिएंस)।
2026 के लिए एक समझदारी भरी डिफ़ॉल्ट कॉन्फ़िगरेशन
config = dict(
norm="rmsnorm", norm_position="pre",
position="rope", rope_theta=500000, # large theta for long context
ffn="swiglu", ffn_mult=8/3,
attention="gqa", n_head=32, n_kv_head=8,
bias=False,
tie_embeddings=True, # for models under ~2B
vocab_size=128256,
dtype="bfloat16",
)और देखें और पढ़ें
लैब
GQA लागू किया गया, और पहले व बाद में KV cache मापा गया।
समस्या
प्रैक्टिस लैब
कोड में बदलाव करें और इसे रन करें। Python आपके ब्राउज़र में चलता है — हमारे सर्वर पर कुछ नहीं भेजा जाता।
कोई आउटपुट नहीं। वैल्यूज़ देखने के लिए print(...) जोड़ें।
आपका काम तब पूरा होगा जब
कठिन सवाल
उत्तर देखने से पहले ख़ुद जवाब देने की कोशिश करें। अगर आप इनके जवाब दे सकते हैं, तो आप पाठ समझ गए हैं।
Q1आपके टारगेट बैच साइज़ और कॉन्टेक्स्ट पर आपका KV cache 40GB है। हर उपाय और उसकी कीमत की लिस्ट बनाएँ।दिखाएं
अक्सर पूछे जाने वाले सवाल
क्या मुझे MoE इस्तेमाल करना चाहिए?
केवल तभी जब आप अच्छे-खासे बड़े पैमाने पर ट्रेनिंग कर रहे हों और आपके पास सर्विंग मेमोरी हो। लगभग 10B एक्टिव पैरामीटर्स से कम की किसी भी चीज़ के लिए, डेंस मॉडल सरल है और आमतौर पर बेहतर इंजीनियरिंग विकल्प है।
क्या GQA से क्वालिटी पर असर पड़ता है?
बहुत हल्का, और प्रैक्टिस में यह लगभग मुफ़्त जैसा ही है। 4:1 या 8:1 का सामान्य क्वेरी-टू-KV हेड्स रेशियो बहुत बड़े सर्विंग फ़ायदे के बदले क्वालिटी में बहुत मामूली कमी दिखाता है। मल्टी-क्वेरी अटेंशन — यानी एक KV हेड — इससे भी आगे जाता है और उसमें क्वालिटी का थोड़ा और नुकसान होता है।
rope_theta क्या है और इसे क्यों बढ़ाया जाता है?
यह रोटेशन की बेस फ़्रीक्वेंसी सेट करता है। एक बड़ी वैल्यू पोज़िशन्स पर एंगल्स को ज़्यादा धीरे-धीरे फैलाती है, जिससे लंबे कॉन्टेक्स्ट का एक्सटेंशन बेहतर काम करता है। लंबे कॉन्टेक्स्ट को टारगेट करने वाले मॉडल्स आमतौर पर ओरिजिनल 10k के बजाय 500k या उससे ज़्यादा का इस्तेमाल करते हैं।
क्या ट्रांसफ़ॉर्मर्स के कोई असली विकल्प हैं?
Mamba जैसे स्टेट-स्पेस मॉडल्स लीनियर-टाइम इनफ़रेंस के साथ कुछ स्केल्स पर सचमुच बेहतरीन टक्कर देते हैं, और हाइब्रिड डिज़ाइन्स दोनों को बारी-बारी से जोड़ते हैं। प्रोडक्शन में अभी भी अटेंशन का ही बोलबाला है, लेकिन यह सबसे दिलचस्प एक्टिव रिसर्च एरिया है।
पाठ का टेस्ट
5 सवाल। पास होने और इस पाठ को पूरा करने के लिए 3 सही होने चाहिए (60%)।