Bonsai 2: مدل ۲۷ میلیاردی تو ۸ گیگ
خلاصهٔ کاملتر
Prism ML مدلی به اسم Bonsai 2 27B منتشر کرده که نسخهٔ فشردهٔ Qwen3.8-27B هست. کوانتیزیشن (یعنی کم کردن دقت عددی وزنها تا مدل کوچیکتر شه) معمولاً از ۱۶ بیت به ۸ یا ۴ بیت میره؛ اینجا هر وزن فقط یکی از سه مقدار -۱، ۰ یا +۱ میتونه باشه. برای هر گروه ۱۲۸تایی هم یه ضریب مقیاس ۱۶ بیتی ذخیره میشه، که در کل حدود ۱.۷۲ بیت به ازای هر وزن درمیاد، مقابل ۱۶ بیت FP16.
این ۱.۷۲ بیت کف تئوریه و فرمت نهایی روش سرباره اضافه میکنه. بستهٔ GGUF با پکینگ PTQ1_0 که تریتها (همون وزنهای سهحالتی) رو فشرده ذخیره میکنه به ۱.۷۵ بیت میرسه. پکینگ PQ2_0 که هر تریت رو تو یه خونهٔ ۲ بیتی میذاره تا بازکردنش ارزونتر باشه ۲.۱۳ بیت میشه. نسخهٔ MLX که مجبوره برای هر گروه هم مقیاس و هم بایاس نگه داره میرسه به ۲.۲۵ بیت، یعنی مدل زبانی ۷.۶۷ گیگابایت و همراه با vision tower ۸.۶۰ گیگابایت.
نکتهٔ اصلی طراحی یه چرخش بلوکی هادامارد هست، یعنی یه تبدیل متعامد که خودش اطلاعاتی از دست نمیده ولی مقادیر رو یکنواختتر پخش میکنه. این چرخش تو بلوکهای ۱۰۲۴تایی و قبل از تبدیل به سه حالت روی ماتریس وزن اعمال میشه. فایدش اینه که یه وزن پرت تنهایی ضریب مقیاس کل گروه رو تعیین نمیکنه. به گفتهٔ نویسنده همین یکی از دلیلهای اصلیه که مدل اون سقوط کیفیت همیشگی زیر ۴ بیت رو نداره.
طبق کارت مدل، Bonsai 2 تو میانگین ۱۴ بنچمارک حالت thinking نمرهٔ ۸۴.۷۸ گرفته، یعنی ۹۸.۲ درصد نسخهٔ FP16. همون مدل پایه با کوانتیزیشن معمولی IQ2_XXS فقط ۷۲.۵۹ میگیره، با اینکه جای بیشتری هم میبره. ریاضی با ۹۶.۵۷ و کدنویسی با ۸۹.۴۲ تقریباً همتراز دقت کامله، اما tool calling agentic (یعنی مدل خودش ابزار بیرونی رو صدا بزنه) با ۷۴.۹۲ ضعیفترین بخشه، چون خطای کوچیک تو زنجیرهٔ طولانی تصمیم روی هم جمع میشه.
روی سختافزار، Prism ML میگه لپتاپ M5 Max حدود ۴۷ توکن در ثانیه تولید و ۷۶۵ توکن در ثانیه پردازش پرامپت داره، روی بکاند Metal تو llama.cpp. روی M5 Pro سرعت خوندن وزنها حدود ۲۰۴ گیگابایت در ثانیه اندازهگیری شده، که نشون میده گلوگاه پهنای باند حافظهست نه محاسبه. RTX 5090 با PQ2_0 حدود ۱۳۰ توکن در ثانیه میده، ولی کارتهای نسل Ada مثل ۴۰۹۰ با PTQ1_0 بهتر جواب میدن چون ۱۷ درصد داده کمتری جابهجا میکنه.
هزینهٔ واقعی این فشردهسازی ابزاره: مدل کرنل سفارشی میخواد. لودر معمولی MLX تبدیل لازم روی activationها رو اعمال نمیکنه و فایل رو بدون هیچ اروری بار میکنه ولی خروجی غلط میده؛ نسخهٔ GGUF هم به یه بیلد فورکشدهٔ llama.cpp نیاز داره. یعنی باید دقیقاً همون نسخهٔ رانتایمی که Prism ML مستند کرده رو پین کنی. برای آزمایش مشکلی نیست، برای پروداکشن یه وابستگی نگهداری اضافهست. لایسنسش هم Apache 2.0 هست.
نکات کلیدی:
- هر وزن فقط -۱، ۰ یا +۱ با یه مقیاس ۱۶ بیتی مشترک برای هر ۱۲۸ وزن، حدود ۱.۷۲ بیت به ازای هر وزن
- مدل زبانی از حدود ۵۴ گیگابایت FP16 به ۵.۹۵ گیگ (GGUF PTQ1_0) یا ۷.۶۷ گیگ (MLX) رسیده
- میانگین ۸۴.۷۸ تو ۱۴ بنچمارک، یعنی ۹۸.۲ درصد FP16، مقابل ۷۲.۵۹ برای IQ2_XXS
- ریاضی ۹۶.۵۷، کدنویسی ۸۹.۴۲، tool calling agentic ۷۴.۹۲
- روی M5 Max حدود ۴۷ توکن در ثانیه، روی RTX 5090 حدود ۱۳۰ توکن در ثانیه
- بدون کرنل سفارشی خروجی غلطه و هیچ اروری هم نمیده؛ لایسنس Apache 2.0




