Qwenputer: یه CPU کامل که داخل وزنهای یه مدل زبانی کامپایل شده
خلاصهٔ کاملتر
Qwenputer یه پروژهی آزمایشی از Divyansh Agrawal هست: مدل Qwen 3.5 4B که یه پردازندهی 32 بیتی RISC-V داخل وزنهاش کامپایل شده. نویسنده تأکید میکنه که این نه plugin هست، نه tool و نه sandbox. CPU کاملاً داخل forward pass مدل اجرا میشه و میتونه کد C و MicroPython رو بدون هیچ runtime بیرونی اجرا کنه.
پایهی کار، لایههای Gated DeltaNet هست. Qwen 3.5 تو سه تا از هر چهار لایهی attention از GDN استفاده میکنه، یعنی یه RNN خطی که هر head یه ماتریس state بهعنوان حافظه داره. نویسنده نشون داده که اگه gate (عددی که میزان فراموشی رو تعیین میکنه) و قدرت نوشتن (beta) رو روی ۱ بذاری و کلیدها one-hot باشن، هر نوشتن دقیقاً یه سطر رو عوض میکنه. یعنی GDN میشه یه RAM دقیق و آدرسدار.
مزیتش اینه که اندازهی state ثابت میمونه، هر چقدر هم مکالمه طولانی بشه؛ برخلاف KV cache تو attention معمولی. به گفتهی نویسنده، ایدهی حافظه بودن delta rule قبلاً تو مقالهی Schlag و همکارانش (۲۰۲۱) مطرح شده بود. چیز جدید، دقیق و آدرسدار کردنش تو یه مدل واقعیه.
هیچ آموزشی در کار نیست و یه کامپایلر همهی وزنها رو مستقیم تنظیم میکنه. CPU رو به شکل یه مدار از قدمهای کوچیک توصیف میکنی و کامپایلر هر قدم رو به headهای attention، واحدهای feed-forward و headهای DeltaNet تبدیل میکنه. هر دستور CPU چند token تولید میکنه (آدرس، مقدار و یه token پایان)، پس وقتی مدل این tokenها رو میسازه، CPU داره اجرا میشه.
این CPU از نوع RV32IM با افزونهی Zba هست و ۱۱ لایه جلوی ۳۲ لایهی Qwen اضافه میکنه. تستهای رسمی riscv-tests رو پاس میکنه و ۱۸ میلیون دستور رو بیخطا اجرا کرده. Qwen از طریق همون فرمت tool call که باهاش آشناست بهش دستور میده، ولی هیچ ابزار بیرونی صدا زده نمیشه. وزنهای اصلی Qwen هم دست نخوردن.
نتیجهها: تو تستهای DeepMind مثل mul_big، دقت از ۵۵٪ مدل پایه به ۹۷.۵٪ رسیده و تو NUPA از ۴۸.۶٪ به ۱۰۰٪، تقریباً همسطح وقتی که به Qwen ابزار Python بدی. نویسنده یه filesystem آزمایشی هم ساخته که تا ۵۱۲ فایل (حدود ۵۳ هزار token) رو تو state نگه میداره. محدودیتها: checkpoint حدود ۱۸.۸ گیگ شده، یه driver به اسم RvChat لازم داره و کنده، حدود ۳,۲۰۰ token CPU در ثانیه روی L4.
نکات کلیدی:
- پایه: Qwen 3.5 4B با یه CPU از نوع RV32IM که ۱۱ لایه اضافه میکنه
- لایههای Gated DeltaNet با gate و beta برابر ۱ و کلید one-hot نقش RAM دقیق رو دارن
- هیچ آموزشی لازم نیست؛ کامپایلر وزنها رو مستقیم تنظیم میکنه
- دقت NUPA از ۴۸.۶٪ به ۱۰۰٪ رسید
- checkpoint حدود ۱۸.۸ گیگ و روی یه GPU با ۲۴ گیگ حافظه اجرا میشه
- filesystem آزمایشی تا ۵۱۲ فایل رو بین مکالمهها نگه میداره




