Sparse KV Caches Attention Scaling کو کم کرتے ہیں

معیاری attention ماڈلز طویل تسلسل (sequences) کے ساتھ جدوجہد کرتے ہیں۔ جیسے جیسے متن طویل ہوتا جاتا ہے، میموری اور کمپیوٹ کے اخراجات بہت تیزی سے بڑھتے ہیں۔ یہ چیز context windows کو چند ہزار ٹوکنز تک محدود کر دیتی ہے۔

Sparse KV caches اس صورتحال کو بدل دیتے ہیں۔ یہ quadratic اخراجات کو تقریباً linear اخراجات میں تبدیل کر دیتے ہیں۔ ہر میموری بلاک کو اسکین کرنے کے بجائے، ہر query ڈیٹا کے ایک چھوٹے سے حصے (subset) کو دیکھتی ہے۔

یہ تبدیلی ایک ہی GPU پر بڑے پیمانے کے context windows کو عملی بناتی ہے۔

MiniMax کے مطالعے کے اہم نتائج:

• MSA دس لاکھ ٹوکنز کے context پر فی ٹوکن attention compute کو 28.4x کم کر دیتا ہے۔ • KV میموری کا استعمال 50% تک کم ہو جاتا ہے۔ • Perplexity dense models کے برابر ہی رہتی ہے، جس کا مطلب ہے کہ درستگی (accuracy) میں کوئی کمی نہیں آتی۔ • H800 GPU پر Prefill 14.2x زیادہ تیزی سے چلتا ہے۔ • H800 GPU پر Decoding 7.6x زیادہ تیزی سے چلتی ہے۔

یہ رفتار میں اضافہ ایک نئے Top-k selector اور tensor-core کے بہتر استعمال کی وجہ سے حاصل ہوتا ہے۔

اس میں کچھ سمجھوتوں (trade-offs) پر غور کرنا ضروری ہے۔ یہ نتائج ایک مخصوص 109B-parameter ماڈل سے حاصل کیے گئے ہیں۔ ہمیں ابھی تک یہ معلوم نہیں ہے کہ آیا یہ فوائد تمام ہارڈ ویئر یا ماڈل کی اقسام پر کام کریں گے یا نہیں۔ اس کے علاوہ، یہ طریقہ کار یہ فرض کرتا ہے کہ متعلقہ ٹوکنز ایک مخصوص حد (range) کے اندر رہتے ہیں۔ وہ کام جن کے لیے global attention کی ضرورت ہوتی ہے، انہیں مسائل کا سامنا کرنا پڑ سکتا ہے۔

اگر یہ طریقے بڑے پیمانے پر کامیاب رہتے ہیں، تو آپ معیاری GPUs پر اپنے context windows کو دو یا تین گنا بڑھا سکتے ہیں۔ آپ اضافی ہارڈ ویئر کے بغیر مکمل ریپوزٹریز (repositories) پر کوڈ کا تجزیہ کر سکتے ہیں یا طویل گفتگو کی یادداشت (conversational memories) برقرار رکھ سکتے ہیں۔

ماخذ: https://dev.to/olaughter/sparse-kv-caches-cut-attention-scaling-795

اختیاری لرننگ کمیونٹی: https://t.me/GyaanSetuAi