این مقاله رو از ResearchAudio میخوندم دربارهی Kimi K3، مدلی که شرکت چینی Moonshot AI این هفته منتشر کرد و یک بحث قدیمی رو تموم کرد، اینکه یک مدل open نهایتا چقدر میتونه بزرگ بشه. جوابش شد ۲.۸ تریلیون پارامتر. اینجا چند نکتهی جالبش رو مینویسم.
🔻 عدد بزرگ تیتر خبره، ولی داستان اصلی جای دیگهست. کل هنر این مدل اینه که با ۲.۸ تریلیون پارامتر ساخته شده، اما موقع کار کردن طوری رفتار میکنه که انگار یکدهم این اندازهست. تقریبا همهی تصمیمهای طراحیش به یک دشمن مشترک حمله میکنن، پهنای باند حافظه.
🗂 در یک نگاه، ۲.۸ تریلیون پارامتر کل هست، ولی فقط ۱۰۴ میلیارد برای هر توکن فعال میشه. ۸۹۶ expert داره، ولی برای هر توکن فقط ۱۶ تاشون بیدار میشن و ۲ تا همیشه روشنن. پنجرهی متنی یک میلیون توکن. قیمت ۳ دلار برای هر میلیون توکن ورودی و ۱۵ دلار خروجی. همچنین open weight هست، نه open source.
💬 سه لایه از هر چهار لایه، اصلا attention نیستن بخش گرون سرویسدهی به متن طولانی، محاسبه نیست، اون KV cache هست، یعنی رونوشت کامل هر توکنی که مدل تا حالا دیده. توی یک میلیون توکن، همین رونوشت کل هزینهی GPU میشه. جواب Moonshot چیزیه به اسم KDA که به جای نگهداشتن کل رونوشت، یک حافظهی ثابت داره و تصمیم میگیره چی رو پاک کنه و چی رو نگه داره. نتیجه اینکه از ۹۳ لایه، ۶۹ تاش linear attention با حافظهی ثابته و فقط ۲۴ تا full attention واقعی دارن برای وقتایی که مدل به یادآوری دقیق نیاز داره.
📊 اقتصادِ ۸۹۶ متخصص
تقریبا همهی اون ۲.۸ تریلیون پارامتر توی لایههای mixture of experts زندگی میکنن. برای هر توکن، یک router از بین ۸۹۶ متخصص، ۱۶ تا رو انتخاب میکنه و ۲ تا هم همیشه فعالن. جمعش میشه ۱۰۴ میلیارد پارامتر فعال، یعنی فقط ۳.۷٪ مدل. اون ۹۶.۳٪ باقیمونده سرد توی حافظه منتظر میمونه تا توکنی بیاد که بهش نیاز داشته باشه.
📑 چطور ۲.۸ تریلیون پارامتر توی ۱.۵ ترابایت جا میشه؟
با دقت استاندارد ۱۶ بیتی، وزنهای این مدل حدود ۵.۶ ترابایت جا میخواستن. ولی فایلهای Hugging Face فقط ۱.۵۶ ترابایتن. ترفند اینه که مدل رو بعد از آموزش فشرده نکردن، بلکه از همون اول با آگاهی از کوانتیزیشن و وزنهای ۴ بیتی آموزش دادن. یعنی مدل یاد گرفته توی ۴ بیت زندگی کنه، نه اینکه بعدا بهش تحمیل بشه. البته این یعنی هزینهی هاست کردنش کمتر شده، نه اینکه بتونید رو pc اجراش کنید، هنوز یک کلاستر با ۶۴ شتابدهنده و حدود ۵ ترابایت حافظه میخواد.
🔹 نکتهی لایسنس
برخلاف K2 که تقریبا MIT بود، K3 یک لایسنس سفارشی open weight داره با دو تا تله، اگر از ۱۰۰ میلیون کاربر ماهانه یا ۲۰ میلیون دلار درآمد ماهانه رد بشی، باید Moonshot رو بهوضوح ذکر کنی، و اگه دسترسی به K3 رو بهعنوان سرویس بفروشی و از ۲۰ میلیون دلار عبور کنی، باید توافق جداگانه ببندی.
و خلاصه که هیچکدوم از ایدههای K3 بهتنهایی جدید نیست، linear attention بود، mixture of experts بود، آموزش ۴ بیتی هم بود. کاری که Moonshot کرد اولین اثباتِ اینه که هر سهتای اینها با هم و در مقیاس ۲.۸ تریلیون پارامتر جون سالم بهدر میبرن، اون هم با فاصلهی کمی از بهترین مدلهای بسته و کسری از هزینهی سرویسدهی. چیزی که باید منتظرش بود Moonshot نیست، اینه که آزمایشگاههای بسته آیا سر قیمت جواب میدن یا نه.
🔗 https://researchaudio.io/p/the-largest-open-model-ever-runs-on-3-7-percent-of-itself
✈️ @Mirage_Notes