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 को अगल-बगल जोड़ा गया रूप।
• 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 में दिए गए हैं।
• poc_attention_identities — py -3.11 examples/poc_attention_identities.py
tokens को input के रूप में लेते हैं)rms_norm · rope_rotate · attention_scores · attention_apply · attention_softmax · attention_tiled · attention_linear · kv_cache_decode
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.