Slotstream 是一款可在内存不足的 Mac 上运行 125B 参数大模型(Qwen3.8-Flash-Next)的工具,仅需约 110GB 磁盘空间,支持从 SSD 流式加载,自动适配内存,提供 Ollama 和 OpenAI 兼容 API,实测 48GB 内存下解码速度约 12 tok/s。
正文
Slotstream:在内存不足的Mac上运行千亿参数大模型
Slotstream 是一款专为 Apple Silicon Mac 设计的工具,让你能在内存有限的设备上运行 Qwen3.8-Flash-Next 模型。这个模型拥有 1250 亿参数的混合专家架构,4-bit 量化后占用 104 GB 磁盘空间。Slotstream 从 SSD 流式加载模型,在你分配的内存中运行,仅需一个 Swift 二进制文件,无需 Python 环境,并兼容 Ollama 和 OpenAI 的聊天 API。
性能表现
在 48 GB 内存的 M5 Pro Mac 上: - 热解码速度:约 12 tok/s - 引擎启动时间:约 2 秒(仅加载 3.8 GB 的主干部分) - 峰值内存:32 GB(自动调整,可手动限制) - 磁盘占用:104 GB
系统要求
需要 Apple Silicon 芯片、macOS 14+ 和约 110 GB 可用磁盘空间。磁盘是首要限制因素:无论内存多大,512 GB 的 Mac 是实际最低配置。
不同内存配置的性能
| 你的Mac内存 | Slotstream占用 | 热解码速度 | |------------|---------------|-----------| | 8 GB | 8.1 GB(最低) | ~3 tok/s | | 16 GB | 10 GB | ~4 tok/s | | 24 GB | 16 GB | ~8 tok/s | | 32 GB | 22 GB | ~9 tok/s | | 48 GB及以上 | 33 GB | ~12 tok/s |
安装方法
bash
curl -fsSL https://raw.githubusercontent.com/carloslfu/slotstream/main/install.sh | sh
安装到 ~/.slotstream/bin 并加入 PATH。重复运行可升级,卸载只需删除相关目录和 PATH 配置。
下载模型
模型权重共 103.8 GB,分 24 个文件。首次运行 serve 或 run 命令时会自动下载,也可用 slotstream pull 直接下载。下载前会检查磁盘空间,支持断点续传,所有文件通过 SHA256 校验确保完整性。
实际安装约需 35 分钟。下载速度受 Hugging Face 限制(约 36-57 MB/s),100 Mbps 网络约需 2 小时 20 分钟,25 Mbps 约需 9 小时。
使用方法
快速体验(无需服务器):
bash
slotstream run --prompt "为什么天空是蓝色的?"
启动服务(监听 11434 端口):
bash
slotstream serve
支持 OpenAI 兼容 API 和 Ollama 客户端。
工作原理
模型大部分数据分布在两个位置:68 GB 的路由专家(每层 512 个,每个 token 激活 10 个)和 32 GB 的 n-gram 表。仅 3.8 GB 的密集主干常驻内存。专家通过 pread 读取到固定大小的缓存池中,所有 48 层共享,热点层可从冷层借用缓存槽。
缓存大小影响速度但不影响输出质量。贪婪解码在 4 GB 和 24 GB 缓存下结果完全一致。
当前限制
- 仅支持 Qwen3.8-Flash-Next:4bit 一个模型
- 单进程运行
- 仅测试了 M5 Pro 48GB 配置,小内存配置为估算值
- 不支持工具调用、图像输入、JSON-schema 输出和 logprobs
开发中功能
推测解码(--mtp):模型内置预测下一个 token 的草稿头,首次预测准确率 86%。在缓存充足时可提升 1.5-1.9 倍速度,但需要额外 1.6 GB 缓存空间。
评论
根据评论内容,总结如下:
主要观点与论据:
项目重复与协作呼吁(评论1,评分None):用户指出已有多个类似项目(如
mlx-moe-offload、streamlx等),建议社区协作而非重复造轮子。关键引用:"There are already a handful of repos doing essentially exactly this" 和 "The local-LLM ecosystem really does not need every implementation idea rediscovered five times"。性能与硬件限制(评论7,评分None):用户质疑16GB统一内存能否达到5 tok/sec,并分享自身经验(M3上7-8 tok/sec)。关键引用:"It's hard to believe 16GB unified memory will give you 5 tok/sec" 和 "I am running Qwen3.6-35B-A3B on my 16GB M3 and get 7-8 tokens/sec"。
对本地AI的乐观与担忧(评论6、12,评分None):评论6希望技术进步使32GB设备更实用;评论12强调低成本硬件运行模型的重要性,认为这是技术民主化的关键。关键引用(评论6):"My hope is that the new 32G M6 will be 'useful' locally";评论12:"I love these efforts to get proper models running on lower cost hardware" 和 "there is a substantial risk of the door closing on general computing"。
README质量与用户体验(评论5,评分None):批评README混乱,建议精简并聚焦新用户需求。关键引用:"README could clearly make use of a cleanup" 和 "Remove anything from the README.md that wouldn't be helpful to someone who sees this project with zero context"。
其他关注点:评论2询问能耗;评论3提出新型内存需求;评论9担忧SSD寿命;评论10希望增加上下文窗口;评论11调侃模型命名;评论8询问模型间差异。
平衡性总结: 评论呈现了积极(技术民主化、硬件潜力)与消极(项目重复、性能质疑、文档问题)的混合观点,整体认可度未明确评分,但多数评论聚焦于技术细节与社区协作。