在8美元微控制器上运行2890万参数大语言模型
开发者slvDev成功在售价8美元的ESP32微控制器上运行了一个2890万参数的大语言模型。这证明了在极低成本、低功耗硬件上部署LLM的可行性,有望推动边缘AI应用的发展。
开发者slvDev成功在售价8美元的ESP32微控制器上运行了一个2890万参数的大语言模型。这证明了在极低成本、低功耗硬件上部署LLM的可行性,有望推动边缘AI应用的发展。
SynthePulse Insight · AI 深度解读
版本 1 · 1 个来源
开发者slvDev成功将28.9M参数的语言模型部署在ESP32-S3微控制器上,利用Google的Per-Layer Embeddings技术将大部分参数存储在闪存中,实现了约9.5 tokens/s的生成速度。这一成果将此前同类芯片上模型参数量的上限提升了约100倍。
微控制器的SRAM通常只有512KB,而传统方法要求整个模型常驻SRAM,这限制了模型规模。slvDev的解决方案是将大部分参数(25M)存储在闪存中,仅将推理核心保留在SRAM中。每次token生成时,只从闪存读取约450字节的嵌入向量,而非加载整个模型。
这一设计借鉴了Google Gemma 3n和Gemma 4中的Per-Layer Embeddings概念,但首次将其应用于微控制器而非手机或GPU。开发者表示,据他所知,此前无人尝试在如此小的芯片上实现这一方案。
模型在ESP32-S3上实现了约9.5 tokens/s的生成速度,纯计算速度达到9.7 tokens/s。所有推理均在设备本地完成,无需网络连接。
然而,模型的能力受限于其小型推理核心。它仅基于TinyStories数据集训练,能够生成简短、连贯的故事,但无法回答问题、编写代码或执行指令。开发者明确指出,这一限制源于模型的小型推理部分,内存优化并未改变其能力上限。
此前在类似芯片上运行的最大语言模型仅有26万参数,而新模型参数规模提升了约100倍。开发者公开了完整的训练、量化和部署代码,以及详细的实验结果(包括参数计数错误的修正过程),供社区复现和验证。
项目代码托管在GitHub,包含固件、训练脚本和测量数据。开发者特别指出,早期参数计数存在错误,导致数字被夸大,修正后的结果已在仓库中更新。
本文基于开发者slvDev在GitHub上公开的项目文档和实验结果。所有技术细节和性能数据均来自项目README和RESULTS.md文件。开发者主动披露了参数计数错误及修正过程,增加了可信度。但模型能力限制(仅能生成简单故事)是设计使然,并非性能缺陷。
通过将嵌入表存储在闪存中,28.9M参数的语言模型得以在8美元的微控制器上运行,推理速度约9.5 tokens/s。这一方法将微控制器上LLM的参数规模提升了两个数量级,但模型能力受限于小型推理核心,仅适用于简单文本生成任务。
主报道
主报道来源