فلیش توجہ
فلیش اٹینشن ٹرانسفارمرز کے اندر توجہ کے مرحلے کی گنتی کرنے کا ایک ہوشیار طریقہ ہے اور یادداشت کو سست کرنے کے لیے دیوہیکل توجہ میٹرکس لکھے بغیر۔
جائزہ
It makes long-context models far faster and more memory-efficient without changing their math.
گہرا غوطہ
معیاری توجہ ہر ٹوکن کا دوسرے ٹوکن سے موازنہ کرتی ہے، ایک N-by-N سکور میٹرکس تیار کرتا ہے جو ترتیب کی لمبائی کے ساتھ چوکور طور پر بڑھتا ہے۔ آسانی سے، وہ میٹرکس GPU ہائی بینڈوتھ میموری (HBM) سے لکھا اور پڑھا جاتا ہے، اور وہ شٹلنگ - ضرب نہیں - اصل رکاوٹ ہے۔ 2022 میں ٹرائی ڈاؤ اور ساتھیوں کے ذریعے متعارف کرایا گیا فلیش اٹینشن کمپیوٹیشن کو دوبارہ ترتیب دیتا ہے تاکہ میٹرکس کبھی بھی مکمل طور پر محفوظ نہ ہو۔ یہ چھوٹی ٹائلوں میں سوالات، کلیدوں اور قدروں پر کارروائی کرتا ہے جو تیز آن-چِپ SRAM میں فٹ ہوتے ہیں، جزوی نتائج کا حساب لگاتا ہے، اور آن لائن رننگ-softmax ٹرِک کا استعمال کرتے ہوئے انہیں ایک ساتھ سلائی کرتا ہے۔ آؤٹ پٹ ریاضی کے لحاظ سے عام توجہ سے مماثل ہے لیکن لکیری میموری کا استعمال کرتا ہے اور کئی گنا تیزی سے چلتا ہے، خاص طور پر طویل ترتیب پر۔
تکنیکی بصیرت
اہم چال ٹائلنگ کے علاوہ ایک آن لائن سافٹ میکس ہے۔ سافٹ میکس کو عام طور پر اپنے ڈینومینیٹر کی گنتی کرنے کے لیے اسکور کی پوری قطار کی ضرورت ہوتی ہے، لیکن فلیش اٹینشن زیادہ سے زیادہ اور چلتی رقم کو برقرار رکھتا ہے کیونکہ یہ ہر ٹائل کو اسٹریم کرتا ہے، پہلے کے جزوی آؤٹ پٹ کو دوبارہ اسکیل کرتا ہے تاکہ حتمی نتیجہ بالکل درست ہو۔ چونکہ انٹرمیڈیٹ اسکور SRAM میں رہتے ہیں (HBM سے تیز رفتار کے آرڈرز)، الگورتھم IO سے آگاہ ہے: یہ خام ریاضی کی کارروائیوں کے بجائے میموری پڑھنے اور لکھنے کو کم کرتا ہے۔
اسٹریٹجک اثر
لاگت اور بجٹ
فن تعمیر کے فیصلے سالوں تک کارکردگی اور آپریٹنگ لاگت کو آگے بڑھاتے ہیں۔
واضح فیصلے
تکنیکی تعلیم ٹیموں کو صحیح اسٹیک منتخب کرنے میں مدد کرتی ہے، نہ صرف جدید ترین۔
کوالٹی کنٹرول
انجینئرنگ کے بہتر انتخاب پیداوار میں قابل اعتماد واقعات کو کم کرتے ہیں۔
فلیش توجہ کا مستقبل
Flash Attention-2 اور FlashAttention-3 کام کی تقسیم کو بہتر بنا کر اور کم درستگی والے FP8 راستوں کا استحصال کرتے ہوئے H100 جیسے نئے GPUs سے مزید تھرو پٹ نچوڑنے کے ساتھ، ایک ڈیفالٹ بلڈنگ بلاک بن گیا ہے۔ ہارڈ ویئر کے ساتھ جاری مشترکہ ڈیزائن، ٹریننگ اور انفرنس فریم ورک میں سخت انضمام، اور ویرینٹ، سلائیڈنگ ونڈو، اور بہت طویل سیاق و سباق کی توجہ کے لیے ٹیون کی توقع کریں۔ جیسا کہ سیاق و سباق کی ونڈوز لاکھوں ٹوکنز کی طرف پھیلی ہوئی ہیں، اس طرح کے IO سے آگاہ کرنل میموری اور رفتار کو عملی طور پر برقرار رکھنے کے لیے ضروری ہیں۔
حقیقی دنیا کا نفاذ
کم میموری لاگت پر طویل سیاق و سباق والی ونڈوز کے ساتھ لاما اور جی پی ٹی کلاس سسٹم جیسے بڑے لینگویج ماڈلز کو تربیت دینا۔
پری فل اسٹیج کو تیز کر کے چیٹ اسسٹنٹس کو تیزی سے پیش کرنا جہاں ایک لمبا پرامپٹ پہلے پڑھا جاتا ہے۔
دستاویز کے تجزیہ کے ٹولز کو فعال کرنا جو ایک ہی GPU پر طویل ترتیب کی توجہ کو ممکن بنا کر پوری کتابوں یا کوڈ بیس کو ہضم کرتے ہیں۔
پاورنگ ویژن اور آڈیو ٹرانسفارمرز جہاں ہائی ریزولوشن ان پٹس بہت لمبے ٹوکن تسلسل بناتے ہیں۔
خطرات اور گارڈریلز
ایک بینچ مارک کو بہتر بنانا نظام کی وسیع تر کمزوریوں کو چھپا سکتا ہے۔
بنیادی ڈھانچے اور دیکھ بھال کے اخراجات کو اکثر کم سمجھا جاتا ہے۔
سیکورٹی اور مشاہداتی فرق بڑھ سکتا ہے کیونکہ نظام زیادہ پیچیدہ ہو جاتا ہے۔
نفاذ کا روڈ میپ
نفاذ سے پہلے تاخیر، معیار اور لاگت کے اہداف کی وضاحت کریں۔
حقیقت پسندانہ بوجھ اور ڈیٹا کی شرائط کے تحت بینچ مارک۔
غلطیوں، بڑھے ہوئے، اور صارف کے اثرات کے لیے آلے کی نگرانی۔
اسکیلنگ سے پہلے رول بیک اور واقعہ کے ردعمل کے راستے تیار کریں۔
دریافت کرتے رہیں
Free newsletter
Get the daily AI briefing
Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.
One email each weekday. Unsubscribe in one click. We never sell or share your address.
Test yourself
Take the Flash Attention quiz
Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.
Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation
اگلا گائیڈ
توجہ رول آؤٹ اور سر کی کٹائی
اکثر پوچھے گئے سوالات
What is Flash Attention?
فلیش اٹینشن ٹرانسفارمرز کے اندر توجہ کے مرحلے کی گنتی کرنے کا ایک ہوشیار طریقہ ہے اور یادداشت کو سست کرنے کے لیے دیوہیکل توجہ میٹرکس لکھے بغیر۔ یہ طویل سیاق و سباق کے ماڈلز کو ان کی ریاضی کو تبدیل کیے بغیر کہیں زیادہ تیز اور زیادہ میموری کو موثر بناتا ہے۔
فلیش توجہ کا ہدف کون سی اہم رکاوٹ ہے؟
فلیش کی توجہ IO سے آگاہ ہے: یہ تیز آن چپ SRAM اور سست ہائی بینڈوتھ میموری کے درمیان شٹل کردہ ڈیٹا کو کم کرتا ہے، جو کہ خود ریاضی کے بجائے اصل رکاوٹ ہے۔
فلیش اٹینشن مکمل N-by-N توجہ میٹرکس کو ذخیرہ کرنے سے کیسے بچتا ہے؟
یہ کمپیوٹیشن کو ٹائل کرتا ہے لہذا ہر بلاک تیز رفتار SRAM میں فٹ ہو جاتا ہے، HBM میں مکمل میٹرکس کو مکمل کیے بغیر جزوی آؤٹ پٹ کمپیوٹنگ اور جمع کرتا ہے۔
کونسی تکنیک فلیش اٹینشن کو ایک ساتھ پوری قطار کو دیکھے بغیر سافٹ میکس کو درست طریقے سے حساب کرنے دیتی ہے؟
آن لائن سافٹ میکس ٹائلوں کو سٹریم کرتے ہوئے زیادہ سے زیادہ اور چلانے والے ڈینومینیٹر کو برقرار رکھتا ہے، پہلے کے جزوی آؤٹ پٹس کو دوبارہ اسکیل کرتا ہے تاکہ حتمی نارملائزیشن بالکل درست ہو۔
فلیش دھیان طویل ترتیب کے ساتھ سب سے زیادہ مدد کیوں کرتا ہے؟
سادہ توجہ کا میٹرکس میموری میں N-squared کے طور پر اسکیل کرتا ہے، لہذا اس کے مکمل اسٹوریج سے گریز کرنے سے سب سے بڑی بچت بالکل اسی وقت ہوتی ہے جب ترتیب طویل ہو۔
فلیش اٹینشن کا 'IO-Aware' ڈیزائن کس چیز کو کم کرنے کو ترجیح دیتا ہے؟
IO-Aware کا مطلب ہے کہ الگورتھم کو میموری کے درجہ بندی میں ڈیٹا منتقل کرنے کی لاگت کے ارد گرد ڈیزائن کیا گیا ہے، ریاضی کی کارروائیوں کے بجائے HBM ٹریفک کو کم سے کم کرتا ہے۔