پرش به محتوای اصلی
پرش به محتوای مقاله

اجرای مدل زبانی ۲۸ میلیون پارامتری روی میکروکنترلر ۸ دلاری ESP32

·۴ مرداد ۱۴۰۵۳ دقیقه مطالعه۱ بازدید
لوگوی GitHub و عنوان پروژه ESP32-AI، یک پلتفرم توسعه هوش مصنوعی برای بردهای ESP32.
لوگوی GitHub و عنوان پروژه ESP32-AI، یک پلتفرم توسعه هوش مصنوعی برای بردهای ESP32.
اشتراک‌گذاری
واقعاً چه چیز جدید است؟

استفاده از تکنیک Per-Layer Embeddings برای اجرای مدلی با ۲۸.۹ میلیون پارامتر روی ESP32؛ چیزی که پیش از این حدود ۱۰۰ برابر کوچک‌تر بود.

تصور کنید یک مدل هوش مصنوعی که تا پیش از این به سخت‌افزارهای گران‌قیمت نیاز داشت، اکنون روی قطعه‌ای به قیمت ۸ دلار اجرا شود. این یعنی پایان عصر وابستگی مطلق به ابر برای عملکردهای متنی ساده.

بر اساس مستندات منتشرشده در ۲۵ ژوئیه ۲۰۲۶ توسط توسعه‌دهنده‌ای به نام slvDev، یک مدل زبانی بزرگ (LLM) — مثل کتابخانه‌داری که میلیاردها صفحه را خوانده و حالا با همان لحن جواب می‌دهد — با ۲۸.۹ میلیون پارامتر به‌طور کامل روی میکروکنترلر ESP32-S3 اجرا شده است. این سیستم متن‌ها را با سرعت ۹.۵ توکن در ثانیه مستقیماً روی یک نمایشگر کوچک متصل به تراشه می‌نویسد و برای تولید هر توکن به هیچ سروری متصل نیست.

همان‌طور که در تحلیل‌های پیشین ما درباره‌ی رایانش لبه (Edge Computing) اشاره کردیم، محدودیت اصلی همواره حافظه بوده است. در حالت عادی، اجرای مدل‌ها روی میکروکنترلرها به دلیل محدودیت شدید حافظه SRAM بسیار دشوار است و به مدل‌های بسیار کوچک نیاز دارد. پیش از این، رکورد اجرای مدل‌ها روی سخت‌افزارهای مشابه حدود ۲۶۰ هزار پارامتر بود؛ یعنی مدل جدید slvDev حدود ۱۰۰ برابر بزرگ‌تر از بنچمارک‌های قبلی است. اکثر توسعه‌دهندگان تصور می‌کنند اگر یک مدل در حافظه اصلی تراشه جای نگیرد، اساساً قابل اجرا نیست. این تلاش برای بهینه‌سازی مدل‌های کوچک در راستای رویکردی است که شرکت Liquid AI نیز با عرضه مدل‌های بهینه برای استخراج داده دنبال می‌کند تا کارایی مدل‌های کوچک را در برابر مدل‌های غول‌پیکر به چالش بکشد.

گلوگاه حافظه

معماری میکروکنترلرها محدودیت سخت‌گیرانه‌ای برای اندازه مدل ایجاد می‌کند. تراشه ESP32-S3 تنها ۵۱۲ کیلوبایت حافظه SRAM دارد. طبق گزارش فنی این پروژه، مدل باید برای اجرا در این حافظه سریع جای بگیرد تا عملکرد لازم را داشته باشد، و همین موضوع باعث می‌شد توسعه‌دهندگان تنها به مدل‌های بسیار ریز بسنده کنند.

استراتژی معماری

برای شکستن این سد، slvDev از تکنیکی به نام بردار معنایی لایه‌ای (Per-Layer Embeddings) استفاده کرد. این روش که در مدل‌های Gemma گوگل (به‌طور مشخص نسخه‌های 3n و 4) به کار رفته، جدول بردار معنایی — یعنی همان کارت معرفی عددی برای هر واژه که می‌گوید این کلمه «همسایه‌ی» چه کلمات دیگری است — را به‌جای حافظه سریع RAM، در حافظه کند Flash ذخیره می‌کند.

از آنجایی که بخش بزرگی از پارامترهای یک مدل زبانی در جدول بردار معنایی قرار دارند که مدل آن‌ها را می‌خواند (و نه اینکه روی آن‌ها محاسبه انجام دهد)، سیستم جدول ۲۵ میلیون سطری را در Flash نگه می‌دارد. در هر لحظه تنها چند سطر مورد نیاز برای هر توکن (حدود ۴۵۰ بایت) فراخوانی می‌شود و بخش کوچک «استدلالی» مدل که عملیات واقعی تفکر را انجام می‌دهد، در حافظه سریع باقی می‌ماند.

لوگوی GitHub و نام مخزن esp32-ai برای بردهای ESP32 با قابلیت‌های هوش مصنوعی

مشخصات فنی

  • سخت‌افزار: ESP32-S3 (قیمت ۸ دلار) شامل ۵۱۲ کیلوبایت SRAM، ۸ مگابایت PSRAM و ۱۶ مگابایت Flash.
  • اندازه مدل: مجموعاً ۲۸.۹ میلیون پارامتر؛ ۱۴.۹ مگابایت پس از کوانتایزیشن (Quantization) ۴ بیتی.
  • عملکرد: ۹.۷ توکن در ثانیه در حالت محاسباتی خالص و ۹.۵ توکن در ثانیه در خروجی نهایی (End-to-End).
  • پیکربندی حافظه:
    • SRAM (سریع و کوچک): هسته «تفکر» مدل که در پردازش هر توکن استفاده می‌شود.
    • PSRAM (متوسط): بخش خروجی (Output Head) و حافظه کاری سیستم.
    • FLASH (بزرگ و کند): جدول ۲۵ میلیون پارامتری؛ خواندن حدود ۶ سطر در هر توکن (تقریباً ۴۵۰ بایت).

آموزش و قابلیت‌ها

این مدل بر اساس مجموعه داده TinyStories از مایکروسافت ریسِرچ (توسط رونن الدان و یوانژی لی، arXiv:2305.07759) آموزش دیده است. این داده‌ها شامل داستان‌های کوتاه و مصنوعی هستند که به اندازه کافی ساده‌اند تا یک مدل کوچک بتواند نوشتن منسجم را یاد بگیرد.

به دلیل کوچک بودن هسته استدلال و اینکه ترفند حافظه تنها به جای‌گیری مدل کمک می‌کند (و نه افزایش قدرت تفکر)، این مدل محدودیت‌های خاصی دارد. این مدل در نوشتن داستان‌های ساده و منسجم مهارت دارد، اما نمی‌تواند به سوالات واقعی (Fact-based) پاسخ دهد، کدنویسی کند یا دستورات پیچیده را اجرا نماید.

این آزمایش ثابت کرد که گلوگاه اصلی هوش مصنوعی روی دستگاه‌ها، معماری حافظه است و نه فقط قدرت پردازش خام. با نمونه‌برداری از مدل در قطعات کوچک از حافظه Flash، هزینه و انرژی مورد نیاز برای اجرای مدلی با اندازه به‌مراتب بزرگ‌تر، ناچیز می‌شود. این یعنی استنتاج (Inference) — لحظه‌ای که مدل واقعاً جواب تولید می‌کند — دیگر نیازی به GPU یا حتی گوشی‌های هوشمند ندارد. در آینده، عامل‌های تخصصی و ساده می‌توانند در کلیدهای برق یا حسگرها جای بگیرند و بدون اتصال به ابر، سنتز متن‌های اولیه را انجام دهند. این رویکرد decentralized یا غیرمتمرکز در پردازش، یادآور تلاش‌هایی است که در پروژه Petals برای توزیع مدل‌های عظیم روی GPUهای خانگی دیده شده است، هرچند در اینجا هدف اجرای مدل روی سخت‌افزارهای بسیار محدودتر است.

پروژه slvDev ریشه در llama2.c اثر آندری کارپاثی دارد که ثابت کرد مدل‌های کوچک را می‌توان برای حداکثر بازدهی با زبان ساده C نوشت. کدهای مربوط به فریم‌ور و کوانتایزیشن در مخزن گیت‌هاب slvDev در دسترس است. تمام جزئیات روش کار، تحلیل‌های حذف اجزاء (Ablations) و اندازه‌گیری‌های روی تراشه در فایل RESULTS.md آمده است؛ این فایل همچنین شامل اصلاحات توسعه‌دهنده در شمارش پارامترهاست، زیرا یک باگ اولیه باعث شده بود اعداد بیش از حد واقعی نشان داده شوند.

گام بعدی شما

  • اگر توسعه‌دهنده سخت‌افزار هستید، مستندات RESULTS.md در گیت‌هاب slvDev را برای بررسی روش‌های کوانتایزیشن مطالعه کنید.
  • بررسی کنید آیا کاربردهای خاص شما (مثل حسگرهای صنعتی) می‌تواند با یک مدل زبانی بسیار کوچک و تخصصی جایگزین شود.
  • معماری Per-Layer Embeddings را برای بهینه‌سازی مدل‌های Edge-AI در پروژه‌های خود تست کنید.

اما داستان سخت‌افزاری این تحول حتی شگفت‌انگیزتر است؛ به تحلیل ما درباره‌ی تراشه‌های Blackwell و آینده استنتاج در لبه مراجعه کنید.

چرا این موضوع مهم است؟

این دستاورد با تکیه بر تجربه عملی در بهینه‌سازی حافظه، مرزهای رایانش لبه را جابه‌جا می‌کند. تایید می‌کند که هوش مصنوعی زاینده می‌تواند بدون نیاز به اتصال اینترنتی و سخت‌افزارهای گران‌قیمت، در قلب ارزان‌ترین تراشه‌ها جای بگیرد.

تأثیر برای ایران

با توجه به قیمت پایین سخت‌افزار ESP32 و در دسترس بودن کتابخانه‌های متن‌باز، توسعه‌دهندگان ایرانی می‌توانند بدون نیاز به خرید GPUهای گران‌قیمت یا پرداخت هزینه‌های دلاری API، سیستم‌های هوشمند آفلاین بسازند.

·نگاه ما
تحریریه دات‌هوش

بزرگ‌ترین دستاورد این پروژه تغییر نگاه از «قدرت پردازش» به «مدیریت حافظه» است. slvDev ثابت کرد که با تغییر مکان ذخیره‌سازی وزن‌ها، می‌توان مدل‌هایی را اجرا کرد که پیش از این تصور می‌شد برای این سخت‌افزار غیرممکن هستند. این رویکرد مسیر را برای ایجاد عامل‌های هوشمند مستقل از ابر در تجهیزات IoT باز می‌کند که هزینه استنتاج آن‌ها تقریباً صفر است.

منابع

این گزارش با خط‌لولهٔ خودکار دات‌هوش از منابع معتبر جهانی تدوین و زیر نظر تحریریه منتشر شده است. روش کار ما

گفتگو

پنج‌شنبه‌های هوش‌محور

بسته‌ی هفتگی دات‌هوش

۵ خبر، ۲ ابزار، ۱ پرامپت در هر شماره. به‌زودی راه‌اندازی می‌شود — هر پنج‌شنبه صبح.

خبر کلیدی
ابزار کاربردی
پرامپت حرفه‌ای
تحلیل پژوهش
به‌زودی
زاویه‌ی ایرانی
به‌زودی
تمرین این هفته
به‌زودی

راهنماهای دات‌هوش

راهنماهای کاربردیِ دات‌هوش برای کار با هوش مصنوعی — از همین‌جا شروع کنید:

دات‌هوش

راهنمای فارسی هوش مصنوعی — با نگاه به ایران

اخبار روزانه، معرفی ابزارها و مدل‌ها، و آموزشِ کار با هوش مصنوعی؛ همیشه با این پرسش که از ایران چه چیزی کار می‌کند و چه چیزی نه.