Multi-Query Attention与Grouped Query Attention对比
Multi-Query Attention(MQA)和Grouped Query Attention(GQA)是LLM推理加速的关键技术。请解释它们的设计原理、与标准MHA的差异,以及为什么能加速推理。GQA如何折中MHA和MQA?
回答
孤独的心
标准MHA中每个注意力头有独立的K、V投影,导致KV-Cache占用大。MQA:所有查询头共享同一组K、V(仅Q有多个头,K/V只有一头),KV-Cache减少为1/h,但精度可能下降。GQA(LLaMA 2-70B/3使用):将查询头分组,每组共享一组K/V(如32个Q头分为8组,每组4个头共享K/V)。GQA是MHA和MQA的中庸——相比MHA减少KV-Cache和带宽需求,相比MQA保留更多表达能力。推理加速原因:解码阶段瓶颈是读取KV-Cache的内存带宽,减少KV头数直接降低了每次生成需要读取的数据量,显著提升吞吐量。