
树莓派Zero改造成本地运行大语言模型的设备
越南开发者Binh Pham近日成功将树莓派Zero改造成一个能够本地运行大语言模型的USB驱动器,而不需要任何额外的设备。这个项目的核心在于llama.cpp和llamafile的支持,两者结合了指令集和一系列轻量级软件包,旨在提供一种离线的轻量级聊天机器人体验。
然而,由于树莓派Zero已经问世八年,并且硬件性能有限,将llama.cpp移植到该设备并非易事。Pham首先将其连接到USB接口,并为它3D打印了一个外壳。在解决了硬件问题后,项目又因树莓派Zero W的512MB内存限制而变得更加复杂。
问题的根源在于树莓派Zero采用的是ARMv6架构。为了克服这一障碍,Pham不得不对llama.cpp的ARMv8指令集进行转换,并移除所有基于现代硬件优化或注释。
成功修改了llama.cpp源代码后,Pham将注意力转向软件的运行和用户体验的优化。他构建了一个基于文本文件输入的大语言模型实现,这些文本文件作为主要提示,而大语言模型会根据这些提示生成故事,并以完整的输出文件形式返回。
为了测试性能,Pham设置了64个token的限制,并对多个模型进行了基准测试。其中,Tiny15M模型每个token处理速度为223毫秒,而较大的Lamini-T5-Flan-77M模型每个token处理速度为2.5秒,SmolLM2-136M模型每个token处理速度为2.2秒。
尽管这个项目具有创新性,但在实际应用中,使用老旧的轻量级硬件运行大语言模型并不具备太多实用价值。相比之下,在树莓派5上运行更复杂的模型如Deepseek可能会是更好的选择。
本文属于原创文章,如若转载,请注明来源:树莓派Zero改造成本地运行大语言模型https://diy.zol.com.cn/950/9507427.html