BlackHalo logo
Published on

TurboFieldfare:在2GB内存的M系列Mac上运行Gemma 4 26B大模型

Authors
  • Name
    gitpusher42
    github.com
TurboFieldfare 在 MacBook 上运行 Gemma 4 大模型的界面截图
头图来源: Picsum

项目概述

TurboFieldfare 是一个专为 Apple Silicon Mac 设计的开源推理引擎,能够以极低的内存占用运行 Google 的 Gemma 4 26B-A4B 大语言模型。该项目由开发者 drumih 创建,在 Hacker News 上获得了超过 700 分的高关注度。

核心技术原理

内存优化策略

TurboFieldfare 的核心创新在于其内存管理方式。Gemma 4 26B-A4B 模型总参数量为 260 亿,完整加载需要约 14.3GB 存储空间。传统推理方式需要将整个模型加载到内存中,这对只有 8GB 内存的 MacBook Air 来说是不可能的。

TurboFieldfare 采用了一种混合策略:

  • 将共享的 1.35GB 核心权重和 FP16 KV 缓存保留在内存中
  • 对于每个 token 所需的专家权重,从 SSD 流式传输
  • 使用 LFU(最不常用)缓存策略,仅缓存最近使用的专家

模型架构适配

Gemma 4 26B-A4B 是一种混合专家模型(MoE),总参数量 260 亿,但每个 token 仅激活约 38.8 亿参数。TurboFieldfare 充分利用了这一特性,通过按需加载专家权重来大幅降低内存需求。

性能表现

实测数据

  • M2 MacBook Air(8GB 内存):解码速度 5.1-6.3 tok/s
  • M5 Pro MacBook(24GB 内存):解码速度 31-35 tok/s

这些数据是参考基准,实际性能会受提示长度、生成长度、页面缓存状态和硬件配置影响。

技术栈

  • 编程语言:Swift 6.2
  • 图形API:Metal 4
  • 运行平台:macOS 26
  • 权重量化:MLX affine 4-bit(group 64),8-bit 路由器

功能特性

多种使用方式

TurboFieldfare 提供了多种使用方式:

  • 原生 Mac 应用(SwiftUI/AppKit)
  • 命令行界面(CLI)
  • OpenAI 兼容的本地服务器

模型安装

首次使用时,应用会从 Hugging Face 流式下载并重新打包模型,整个过程约需 15GB 网络传输。安装器不会在磁盘上生成完整的源检查点,而是直接流式传输所需字节范围并重新打包为 .gturbo 格式。

推理控制

  • 支持温度、Top-K、Top-P 等采样参数
  • 可配置上下文长度和专家缓存槽位
  • 支持停止生成、提前终止
  • 状态栏显示生成进度、解码速度和内存使用

技术细节

推理流程

在每个 Transformer 层中:

  1. Metal 从常驻权重计算注意力和路由器
  2. CPU 使用路由器的 top-8 专家 ID 规划缓存
  3. 通过并行预读调用填充缓存缺失
  4. Metal 在读取操作运行时计算常驻共享专家分支
  5. 合并共享和路由输出

提示预填充

使用最多 128 个 token 的块进行预填充,使一个获取的专家可以服务多行。生成阶段则逐 token 重复路由层循环。

系统要求

  • Apple Silicon Mac(已验证目标为 8GB M2 MacBook Air)
  • macOS 26 及 Metal 4
  • Xcode 26 和 Swift 6.2 或更新版本
  • 约 14.3GB 可用存储空间
  • 首次安装需要网络连接

未来计划

  • 开发 iPhone 和 iPad 应用
  • 在更多 Apple Silicon Mac 上进行基准测试
  • 特别是基础版 16GB M4 Mac mini 和其他 8GB 型号

项目状态

TurboFieldfare 目前专注于文本推理,支持指令微调的 Gemma 4 26B-A4B 检查点。项目包含完整的实验记录,记录了 103 个经过审计的测量结果,涵盖内核、缓存、I/O、预填充和解码等各个方面。

原标题:Show HN: Open-source engine running Gemma 4 26B in 2 GB RAM on any M-series Mac。 HN 原始发布时间:2026年7月29日星期三。当前记录为 726 分、251 条评论。

阅读原文 · 查看 HN 讨论