Needle 2: مدل ۴۵ میلیون پارامتری برای دستگاههای ارزون
خلاصهٔ کاملتر
تیم Cactus Compute میگه شرطبندیشون روی اینه که لبهٔ واقعی شبکه، مک و پیسی نیست: بیش از ۲۱ میلیارد دستگاه IoT در برابر حدود ۱.۵ میلیارد پیسی وجود داره و تو بازارهای نوظهور اکثر گوشیها زیر ۲۰۰ دلارن. به گفتهٔ اونا حدود چهار تا از هر پنج دستگاه لبه زیر ۲۰۰ دلار قیمت داره، و Needle 2 دقیقاً همین سختافزار رو هدف گرفته — بدون GPU، بدون NPU و با چند صد مگابایت رم.
ایدهٔ اصلی اینه که روشن کردن یه چراغ به مدل غولپیکر نیاز نداره. هر دستگاهی تواناییهاش رو به شکل تابع با پارامترهای تایپشده بیرون میده، پس کار سخت فقط نگاشت یه جملهٔ نامرتب به همون توابعه؛ نه دانش عمومی میخواد نه تولید متن آزاد. همین فرمولبندی کوچیکتره که به گفتهٔ سازندهها ۴۵ میلیون پارامتر رو کافی میکنه. خروجی هم با یه گرامر سطح-بایت که از خود اسکیما کامپایل میشه مقید میشه و «فراخوانی خالی» نقش رد کردن درخواست رو بازی میکنه.
معماری هم سراغ ترفندهای کمهزینه رفته: MLP هادامارد بهجای پروجکشنهای چگال از تبدیل والش با قطرهای یادگرفتنی استفاده میکنه، دانش جهان از دل شبکه به جدولهای n-gram هششده منتقل شده، و توجه روی یه پنجرهٔ لغزان ۲۵۶ توکنی کار میکنه تا کش KV هرچقدر هم مکالمه طولانی بشه رشد نکنه. نتیجهش سقف قطعی ۲۸ مگابایت رمه که حتی میکروکنترلرهایی مثل ESP32-P4 رو هم به بازی میآره.
نکتهٔ مهم اینه که کوانتیزیشن بعد از آموزش انجام نشده؛ مدل از همون پیشآموزش با Cactus Quants روی وزنها، فعالسازیها و کش KV آموزش دیده، پس همون مدل ۲ بیتی که مستقر میشه دقیقاً همونیه که آموزش دیده. موتور اجراش هم یه باینری C++ بدون وابستگیه که موقع بالا اومدن CPU رو میشناسه و کرنل مناسب رو خودش انتخاب میکنه؛ وزنها هیچوقت تو رم باز نمیشن و گرامر باعث میشه روی توکنهای ساختاری تا ۹۸ درصد پروجکشن واژگان رد بشه.
تو ارزیابی، Needle 2 روی پنج بنچمارک عمومی فراخوانی تابع سنجیده شده و تیم دو تا ناترازی رو صادقانه گفته: رقبا با دقت f16 اجرا شدن که به نفع اوناست، ولی در عوض مدلهای عمومیان و Needle فقط برای tool calling تربیت شده که به نفع خودشه. روی فراخوانیهای سادهٔ پایتون تو BFCL تا یه واحد به FunctionGemma — مدلی شش برابر بزرگتر — نزدیک شده و نرخ خروجی خوشساخت رو ۹۳.۴ درصد نگه داشته.
Pebble، از پیشگامهای صنعت پوشیدنی، همین حالا Needle رو بهصورت محلی تو اپ Index 01 اجرا میکنه تا فرمانهای صوتی بدون اینترنت هم جواب بدن. مدل و کدش روی Hugging Face و GitHub منتشر شده و میشه روی مک یا پیسی، تو چند دقیقه تا چند ساعت، برای واژگان ابزار محصول خودت فاینتیونش کرد.
نکات کلیدی:
- ۴۵ میلیون پارامتر، فایل ۱۴ مگابایتی و سقف ۲۸ مگابایت رم در هر نشست
- بالای ۸۰۰ توکن در ثانیه prefill و بالای ۵۰۰ توکن decode روی رزبریپای ۵
- کوانتیزیشن ۲ بیتی از ابتدای آموزش، نه بعدش
- تمرکز فقط روی فراخوانی تابع و خروجی ساختاریافته، نه چت
- امتیاز اطمینان یادگرفتنی برای تصمیم به اجرای محلی یا ارجاع به ابر




