attention_grouped — LLMCORE attend op

• Data kinds: tokens × tokens × tokens → tokens

• Call: import fullseye as fs; fs.ledger.attention_grouped(query, key, value, n_heads: 'int', n_kv_heads: 'int', mask=None, window=None) -> 'np.ndarray' (implementation को सीधे call करना हो तो import llmcore; llmcore.attention_grouped(query, key, value, n_heads: 'int', n_kv_heads: 'int', mask=None, window=None) -> 'np.ndarray', registry से लेना हो तो opsllmcore.get("attention_grouped"))

उपयोग

head को समूहित करने वाला attention (GQA) → tokens। n_kv_heads == n_heads पर MHA से, और == 1 पर MQA से बिल्कुल मेल खाता है।

Ainslie et al. 2023। query को n_heads heads में बाँटा जाता है, जबकि key/value के पास केवल n_kv_heads heads होते हैं और उन्हें दोबारा इस्तेमाल किया जाता है। दोनों छोर मौजूदा 2 तरीकों (MHA / MQA) पर ठीक-ठीक आ जाते हैं (दोनों 0.0e+00), इसलिए "बीच का रास्ता" वाले दावे की जाँच छोरों पर cross-check से की जा सकती है।

Args:

query: (T, n_heads·dh) float। हर head के लिए चौड़ाई dh में क्रम से रखा है।

key: (S, n_kv_heads·dh) float।

value: (S, n_kv_heads·dh) float।

n_heads: query के heads की संख्या। n_kv_heads का गुणज होना चाहिए।

n_kv_heads: key/value के heads की संख्या। 1 होने पर MQA, n_heads होने पर MHA।

mask: None / "causal" / "window" / (T, S) का bool array।

window: mask="window" होने पर window की चौड़ाई।

Returns:

tokens (T, n_heads·dh) float: हर head के output को अगल-बगल जोड़ा गया रूप।

उपयोग की विस्तृत guide

• llmcore family guide

संदर्भ (sample data, साहित्य)

• Sample data catalog (DL URL / license) — 2-D के लिए skimage.data (BSD/public) + synthetic, 3-D के लिए real data sources (Stanford/PDS आदि) के DL URL।

• Operators का स्रोत और संदर्भ — इस op family के मूल research/methods के स्रोत।

• Algorithm का मानक स्रोत (लेखक, वर्ष) और उपयोग ऊपर की family usage guide में दिए गए हैं।

चलाए जा सकने वाले उदाहरण (verified samples जो सच में यह op call करते हैं)

• poc_attention_identities — py -3.11 examples/poc_attention_identities.py

वे अगले ops जिनसे type जुड़ता है (tokens को input के रूप में लेते हैं)

rms_norm · rope_rotate · attention_scores · attention_apply · attention_softmax · attention_tiled · attention_linear · kv_cache_decode

इसी category के (attend)

attention_softmax · attention_tiled · attention_linear


*Provenance: llmcore.py — LLMCORE operator registry. यह per-op note tools/opdocs.py md से अपने-आप generate होता है (हाथ से edit न करें)।*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.