Multi Query Attention (MQA) and Grouped Query Attention (GQA) explained !!
| Istilah | Arti |
|---|---|
| KV cache | Tempat penyimpanan key dan value dari token yang sudah diproses agar tidak dihitung ulang saat model menghasilkan token berikutnya, dengan imbalan memori tambahan. |
| multi-query attention | Teknik attention yang memakai satu key dan value bersama untuk semua head, sehingga memori KV cache sangat hemat tetapi kualitas konteks bisa menurun. |
| grouped query attention | Teknik yang membagi query ke beberapa grup dan berbagi key serta value hanya di dalam grup, sebagai jalan tengah antara hemat memori dan kualitas. |
| attention heads | Bagian-bagian paralel dalam lapisan attention yang masing-masing menangkap sudut pandang atau makna kata yang berbeda dari sebuah kalimat. |
| multi-head attention | Mekanisme standar pada model bahasa di mana beberapa head bekerja paralel dengan key dan value masing-masing, sehingga butuh KV cache terpisah per head. |
| memory requirement | Besarnya memori yang dibutuhkan untuk menyimpan KV cache, yang menurut video tumbuh seiring jumlah lapisan decoder, jumlah head, dan panjang urutan. |
| shared key | Key tunggal yang dipakai bersama oleh banyak query, gagasan inti yang membuat MQA dan GQA mampu mengurangi jumlah data yang disimpan. |
| groups | Kelompok query dalam GQA yang berbagi key dan value yang sama, misalnya dua grup dari empat head pada contoh GQA2 di video. |
| value | Vektor berisi informasi tiap token yang diambil oleh attention sesuai bobot dari pencocokan query dan key, lalu disimpan di KV cache bersama key. |
| GQA | Singkatan grouped query attention, yang dengan satu grup setara MQA dan dengan grup sebanyak jumlah head setara multi-head attention. |
Video dari kanal Under The Hood ini melanjutkan pembahasan KV cache dan menjelaskan dua teknik untuk menekan kebutuhan memorinya, yaitu multi-query attention (MQA) dan grouped query attention (GQA). KV cache mempercepat inference karena key dan value dari token sebelumnya tidak perlu dihitung ulang, tetapi imbalannya adalah pemakaian memori tambahan. Pada model bahasa modern yang memakai multi-head attention, setiap attention head menyimpan KV cache sendiri, dan model besar punya banyak decoder block yang masing-masing berisi banyak head. Akibatnya, kebutuhan memori tumbuh seiring jumlah lapisan, jumlah head, dan panjang urutan teks. Video ini penting bagi penonton yang ingin memahami kenapa model besar bisa dijalankan lebih hemat, sekaligus apa untung rugi dari setiap pendekatan yang kini banyak dipakai.
Contoh yang dipakai adalah satu lapisan attention dengan empat head, yang pada multi-head attention memerlukan empat memori KV cache terpisah. MQA memakai satu key dan value bersama untuk semua query di lapisan itu, sehingga hanya satu pasang yang disimpan dan memori turun drastis. Kelemahannya, representasi konteks menjadi kurang kaya karena tiap head tidak lagi menangkap sudut pandang yang berbeda, dan tim riset Google mencatat MQA bisa menurunkan kualitas. GQA menjadi jalan tengah: query dibagi ke beberapa grup dan key serta value hanya dibagi di dalam grup. Dengan empat head dan dua grup, konfigurasinya disebut GQA2. GQA dengan satu grup sama dengan MQA, sedangkan GQA dengan jumlah grup sama dengan jumlah head sama dengan multi-head attention. Kesimpulannya, GQA menyeimbangkan performa model dan penghematan memori KV cache.
Kata kunci
- KV cache
- multi-query attention
- grouped query attention
- memory requirement
- Menjelaskan bagaimana multi-query attention (MQA) dan grouped query attention (GQA) memperkecil memori KV cache yang tumbuh sebanding dengan jumlah attention heads.
- Memahami MQA yang memakai satu key dan value bersama untuk semua query, dan GQA yang membagi query menjadi grup yang berbagi key dan value, beserta trade-off keduanya.
- Menutup dengan keseimbangan performa model dan kebutuhan memori, serta tautan makalah untuk metodologi lengkap.
Tulis catatan pribadimu untuk video ini. Catatan tersimpan di akunmu dan bisa dibuka dari perangkat mana pun.
