我在ESP32 Dev Kit V1上运行了完整的LLM模型(仅用81KB内存)
摘要
一位开发者成功在ESP32 Dev Kit V1上运行了量化至INT4的520万参数MoE LLM,仅使用81KB SRAM,通过从闪存流式加载专家,实现了约每秒5个token的速度。
是的,你没听错:没有API,没有PSRAM,没有标题党,就是一个纯LLM模型在512KB SRAM上运行。该模型大约是520万参数的MoE,有16个专家,量化至INT4。引擎基本上是从Flash流式加载专家到SRAM,每个token只运行一个专家,仅占用约81KB,剩下215KB用于KV缓存和下一版本的改进。我使用了6层、4个注意力头和128个嵌入token——我知道非常小,但仍在提升容量。完整模型量化后的权重约为3.1MB(这也是瓶颈,导致我无法直接增大模型尺寸)。而TPS(每秒token数)一点也不差,事实上非常好,在ESP32 Dev Kit V1上大约有5 TPS。我还添加了一个数学工具(Math Harness),让它能解简单方程,因为模型太小无法自行求解;还加入了Attention Sink,让上下文窗口对于这个仅用81KB内存运行的模型来说更可用。就其尺寸而言,回答质量相当不错。GitHub在此:https://github.com/ahmedbarakat207/espllm 如果你想看看的话:p https://preview.redd.it/k2x5654u0aih1.png?width=640&format=png&auto=webp&s=1bbc700a93aa4a01f8e17b9103613ec0ff8f94d1
相似文章
在8美元微控制器上运行2890万参数的大语言模型
一位开发者演示了如何在仅8美元的ESP32-S3微控制器上运行一个2890万参数的语言模型,利用Google的逐层嵌入技术将大部分参数存储在闪存中,实现了设备端每秒约9.5个token的文本生成速度。
我从头开发了自己的量化大语言模型,使用300亿个token进行训练,部署大小仅为60 MB [R]
一位开发者从头创建了一个250M参数的量化大语言模型,使用300亿个token进行训练,可在CPU上以60 MB部署,并采用了一种新颖的基于磁盘的长上下文系统,支持最多1亿个token。
难以置信!我使用llama.cpp中的mmap函数,将Qwen3.8-Flash-Next IQ3_XSS放入16G+64G RAM中,速度仍达到26t/s。
用户成功使用llama.cpp中的mmap函数,将Qwen3.8-Flash-Next IQ3_XSS模型放入16GB+64GB RAM中,达到26 tokens/秒的速度,这超过了更大的非MOE 30B模型。
Echo Dot 2 能以不错的速度运行 28M 参数 LLM
一位开发者展示了如何使用 llama.cpp 在 Amazon Echo Dot 2 上本地运行 28M 参数 LLM,生成速度约 4 tokens/s,通过提示缓存实现约 2.3 秒延迟,从而支持简单的离线语音命令。
小型LLM基准测试:Jetson Orin Nano Super 8GB - 四种功率模式 × 八种模型
一项对8个小型LLM(参数规模从1.35亿到约10亿)在售价250美元的Jetson Orin Nano Super上进行的深入基准测试,涵盖四种功率模式,发现25W是帕累托最优模式,其中SmolLM2-135M达到165.1 tok/s,效率最高。