技术深度解析
'LLM in a Flash'架构代表了我们为大型神经网络构想内存方式的范式转变。传统的推理要求整个模型——权重、激活值和优化器状态——都驻留在快速的易失性内存(DRAM)中。对于一个3970亿参数、16位精度的模型,这需要大约794 GB的RAM,远超任何消费级设备的能力。此次突破将存储层次结构不再视为二元对立(RAM vs. 磁盘),而是一个连续体,闪存充当了RAM的高延迟、高带宽、低成本扩展。
核心技术是自适应层流式加载与推测预取。系统并非加载整个模型,而是将模型划分成其组成的层或块(例如Qwen中的Transformer块)。在对第*n*个词元进行推理时,系统并行执行三个操作:1)在RAM中计算当前层,2)将下一层的权重从闪存预取到RAM缓冲区,3)基于对计算路径的轻量级预测,推测性地开始将*再下一层*的数据提取到二级缓冲区。这需要对模型的执行图和闪存的特性有细致的理解。
关键在于闪存感知的数据布局优化。NAND闪存以页(例如16KB)为单位读取数据,以块为单位擦除。模型权重在磁盘上的重组并非采用标准的PyTorch格式,而是一种闪存最优的分片模式。频繁共同访问的层的权重被连续放置,以最小化读取放大。来自数据库系统的技术,如为模型参数建立B树索引,被借鉴过来,以实现对任何特定层权重的快速随机访问,而无需扫描无关数据。
窗口化与缓存策略至关重要。RAM中的最近最少使用(LRU)缓存保存最近使用过的层,而一个更大的、包含接下来可能用到的层的'工作集'则由更复杂的马尔可夫链预取预测器管理,该预测器基于典型的推理轨迹进行训练。开源项目`llama.cpp`已开始在其`gguf`格式中试验类似想法,允许部分加载模型,尽管尚未达到苹果所提系统那样复杂的预取水平。另一个相关的代码库是来自TVM社区的`MLC-LLM`,它专注于为多样化的硬件后端编译LLM,并可能集成闪存即内存技术。
性能取决于闪存带宽、RAM大小和计算速度之间的平衡。让我们审视一个理论性能概况:
| 硬件配置 | RAM容量 | 闪存顺序读取带宽 | 397B模型估计延迟(首词元) | 估计吞吐量(词元/秒) |
|---|---|---|---|---|
| 高端智能手机(A17 Pro) | 8GB LPDDR5 | 3.5 GB/s | ~4.5秒 | 2-3 t/s |
| 未来AI平板(M4,16GB) | 16GB LPDDR5X | 7.0 GB/s | ~2.2秒 | 5-7 t/s |
| 笔记本电脑(M3 Max,48GB) | 48GB LPDDR5 | 6.8 GB/s | ~1.8秒 | 8-12 t/s |
| 传统云服务器(A100,满载) | 80GB HBM2e | ~2 TB/s(来自GPU显存) | <0.1秒 | 100+ t/s |
数据要点: 表格揭示了根本性的权衡:与内存中的云GPU相比,基于本地闪存的推理引入了显著的延迟(首词元需要数秒),但对于许多交互式应用而言,其吞吐量已达到可用水平。关键指标是闪存带宽——将其翻倍几乎能使首词元延迟减半,这使得未来的存储升级对于这一范式至关重要。
关键参与者与案例研究
这一进展处于大公司研究、开源模型提供商和独立工程社区的交叉点。
苹果是概念创始者。其2023年12月由M. H. Tang和R. A. Rutenbar等研究人员撰写的论文《LLM in a Flash》奠定了理论基础。苹果的独特地位源于其垂直整合:它设计自己的芯片(A系列、M系列),控制其操作系统(iOS/iPadOS),并生产具有统一内存架构和高性能NVMe存储的设备。这使得深度的软硬件协同设计成为可能,这是Android碎片化生态系统难以立即匹敌的。苹果的战略似乎是在为未来iOS版本中的设备端AI构建基础技术,可能作为“Apple Intelligence”服务的核心功能。
阿里巴巴的通义千问团队提供了验证这一概念的模型。Qwen2.5-32B-Instruct模型是一个320亿参数的版本;报道中提到的3970亿参数可能指的是理论上的扩展规模,或是与整个参数家族的混淆。尽管如此,通义千问在Apache 2.0许可下的开源发布,凭借其强大的多语言性能和稳健的工具使用能力,使其成为理想的试验场。该团队对开放权重的承诺,使得这种部署实验成为可能,这对于GPT-4或Gemini等闭源模型是无法实现的。
独立开发者与开源社区是实践的推动者。正是这些独立工程师和研究者对苹果论文进行了逆向工程和概念验证实现,将理论转化为可运行的代码。像`llama.cpp`和`MLC-LLM`这样的项目展示了开源社区在适应和扩展这些前沿思想方面的敏捷性。这种自下而上的创新通常能更快地探索实际应用的边界,并为更广泛的硬件生态提供解决方案,而不仅仅是苹果自家的设备。