مدلهای MoE خیلی جذابتر از مدلهای Dense هستند بنظرم چون میتونی یک مدل خیلی بزرگتر رو روی یک GPU خیلی کوچکتر با سرعت بالا اجرا کنی مثل :
https://telegram.me/per3onnel/263
یک سری افراد نشستند و همین کار رو برای GLM.5-2 با فشرده سازی و اپیتیمایز کردن بسیار انجام دادند بطوری که طبق ادعا خودشون مدل 774 میلیارد پارامتری رو روی سیستم با 25GB رم و بدون نیاز به GPU اجرا کردند (همه چیز روی C نوشته شده)
بطور خیلی ساده کاری که میکنه اینه که یک backbone اصلی رو توی رم نگه میداره و باقی رو روی SSD - اگر یادتون باشه توی اون پستها من توضیح دادم که MoE میشه بخش اصلی که نیاز به پردازش داره رو روی VRAM نگهداشت و باقی موارد رو روی RAM حالا این افراد یک قدم جلوتر رفتند و بخش زیادی رو روی SSD نگهداری میکنند؛ برعکس llamacpp که از memory mapping استفاده میکنه این کتابخونه صبر میکنه تا مدل تصمیم بگیره برای پرامپت دقیقا کدوم expert هارو نیاز داره و بعد همونارو روی SSD بخونه
البته دنبال بهترین سرعتها نباشید 0.1tok/sec چیزی هست که نویسنده گزارش داده روی لپتاپ خودش
اما این روش بنظرم خیلی جواب خواهد بود من ۳ سال قبل گفتم که روی یک پروژه قدیمیتر (الان حساب کنیم شاید ۷-۸ سال قبل) از Redis برای نگهداری embedding هام استفاده میکردم
https://telegram.me/pytens/1087
حالا فرض کنید یک نفر همچین کاری رو بکنه :
VRAM - RAM - SSD
هرچند بنظرم تا استاندارد شدن این روش شاید راه طولانی رو در پیش نداشته باشیم حتی؛ سالهاست که CPU ها دارند اینکار رو میکنند
L1, L2, L3, RAM, SSD
برای بررسی دقیقتر به گیتهاب پروژه سر بزنید :
Colibri Github