Swiftlet让80B大模型在Mac上仅占4.3GB内存
「Swiftlet是一个Swift+Metal运行时,专为Qwen3-Next和Qwen3.5/3.6等MoE模型设计,通过将专家权重流式存储在SSD上,大幅降低内存占用。在M5 Mac上,Qwen3-Next-80B-A3B的4-bit版本峰值内存仅4.3GB,解码速度4.5-5 tok/s;35B版本甚至能在iPhone 17上原生运行,内存约2.5GB。项目已开源,支持端到端运行,提供库、命令行、服务器和iOS应用四种形态。」
一个名为Swiftlet的Swift+Metal运行时正在重新定义大模型的运行边界。它专门针对Qwen3-Next和Qwen3.5/3.6这一族MoE混合模型设计,核心思路十分巧妙:只让模型的小型稠密核心常驻内存,而真正庞大的路由专家权重则存放在SSD中,仅在需要时按需求流式取出。这一设计让超大模型在消费级硬件上运行成为可能。
效果直接体现在数字上。在M5 Mac上,Qwen3.6-35B-A3B的4-bit版本磁盘占用18GB,但峰值内存仅需2.6GB,解码速度达到7到11 tok/s;更令人惊讶的是Qwen3-Next-80B-A3B的4-bit版本,磁盘占用42GB,峰值内存却压缩到4.3GB,速度维持在4.5到5 tok/s。更值得关注的是,35B版本如今能在iPhone 17上运行,内存占用约2.5GB,速度约1 tok/s——据开发者所知,这是该量级模型首次在手机上原生运行,全程无需服务器参与。
项目已经端到端可用,两个模型都能输出经过验证的正确结果。开发者坦言了一个代价:每个token实际只激活约3B参数,因此这些模型在对话和写作时表现出大模型的水平,但在事实记忆上仍像小模型。这种权衡对于追求低资源部署的场景来说,无疑是可接受的。
拆开它的工作原理,关键在于调度的精细度。每一层会将每个token路由到512个专家中的10个(80B版)或256个专家中的8个(35B版)。Swiftlet将稠密权重——包括注意力、DeltaNet投影、路由器、共享专家和嵌入向量——牢牢固定在内存中,4-bit下约1.3GB(35B)或2.5GB(80B)。成千上万个路由专家则被重新打包成固定步长的数据块,装进.qpack容器,取一个专家只需对SSD做一次pread,不使用mmap,也不会搅动页缓存。热门专家缓存在有限大小的池子里,采用LFU加近期性策略淘汰;实测命中率在43%到70%之间,而缓存大小对速度几乎无影响,因为Apple的SSD足以消化未命中带来的开销。
整个前向传播运行在Metal上,使用运行时编译的着色器,因此构建时无需Metal工具链,同一套代码可直接部署到iOS。更有趣的是,75%的层采用Gated DeltaNet线性注意力,带有固定大小的循环状态,这意味着无论上下文多长,都不会产生不断膨胀的KV缓存——长文本对话的隐藏负担被悄悄卸载。
Swiftlet不仅是一个命令行玩具,它为自己设计了四种身份。作为库,SwiftletCore可以嵌入任意macOS或iOS应用,提供带流式增量输出和对话缓存的聊天能力;作为命令行工具,swiftlet chat和swiftlet generate负责本地运行和基准测试,swiftlet-repack能从MLX检查点直接构建容器,还支持从Hugging Face断点续传下载;作为服务器,swiftlet-server在回环地址上提供OpenAI兼容的chat-completions接口,任何兼容OpenAI的聊天界面都能接入本地模型;作为应用,iOS端的Priv AI将SwiftletCore嵌入为流式模型引擎,普通用户点击下载即可聊天。
在正确性方面,每一层前向传播都与mlx-lm参考实现逐层对拍,覆盖f32和int4量化形式,增量解码也与整序列结果比对,Metal内核更是针对精确CPU参考反复验证,容器还能与源检查点做字节级校验——专家从缓存还是磁盘读取,给出的回答完全一致。
它的灵感脉络也很清晰:TurboFieldfare先在Mac上验证了给Gemma做专家流式的可行性,Swiftlet借鉴了其中若干公开设计经验,比如用pread将专家流式读入有界槽位池、采用LFU加近期性淘汰、固定步长打包让一次读取即一次fetch。但其余部分基本从零写起,约一万行Swift和Metal代码,硬啃下了架构完全不同的Qwen混合体系:Gated DeltaNet线性注意力、门控GQA,以及带共享专家的高稀疏MoE。它甚至在Metal中实现了MLX风格的int4/int8分组量化计算,用字节寻址内核和64位偏移撑起数GB的分片。
想上手机,要求并不苛刻:Apple Silicon、macOS 14+或iOS 17+,再加上足够的SSD空间(35B需18GB,80B需42GB)。iPhone端目前可在App Store的Priv AI应用里开启Experimental Models下载,该功能随新版本发布,尚在审核通道中,想立刻体验也可从源码自构建。整个项目以Apache 2.0许可释出,模型权重单独下载并遵循各自条款。
来源:Heooo AI工具导航