0% read

用 CoreML 在 iPhone 上跑 Gemma 4(2026 完整教程)

2026/04/10

CoreML-LLM 刚发布了 v0.2.0,数据炸裂。Gemma 4 E2B 直接跑在 iPhone 的 Neural Engine 上——11 tok/s 解码速度、250MB 内存占用、2W 功耗。这是目前在 iPhone 上跑 Gemma 4 最高效的方式,没有之一。

X/Twitter 上讨论得火热,原因很简单:这些数字太离谱了。下面详细讲讲这是什么、怎么做到的、怎么上手。

CoreML-LLM 是什么?

CoreML-LLM 是一个开源框架,把大语言模型转换成 Apple 的 CoreML 格式,直接跑在 Neural Engine 上——iPhone 里那颗专门用来做 AI 计算的芯片。跟 GPU 推理不同,Neural Engine 是专门为矩阵运算设计的,所以功耗和内存都低得多。

v0.2.0 版本加了 Gemma 4 E2B 的完整支持,社区的测试数据已经说明一切。

大家在讨论的跑分数据

CoreML-LLM v0.2.0 + Gemma 4 E2B 在 iPhone 上的实测表现:

指标结果
预填充(33 tokens)188ms(比 CPU 快 15.8 倍)
解码速度11 tok/s
上下文窗口2048 tokens
内存占用~250MB
功耗~2W

对比一下通过 AI Edge Gallery 或 MediaPipe 跑 Gemma 4 E2B 的标准方案——通常需要 3GB 内存,电池掉得明显。CoreML-LLM 的内存占用大约低了 12 倍,功耗是「小口喝」而不是「大口灌」。

想了解更多手机端部署方案,看我们的移动端部署指南

这些数字是怎么做到的?

CoreML-LLM 不是把模型往 Neural Engine 上一扔就完事。有四个关键的技术优化:

滑动窗口注意力(Sliding Window Attention)

不用对整个上下文做完整的自注意力,而是用滑动窗口——每层只关注最近的固定窗口内的 token。不管序列多长(上限 2048),内存占用始终恒定,跟 Neural Engine 的固定大小张量操作完美契合。

INT4 调色板量化 + mmap

权重用 Apple 的调色板技术(palettization)量化到 INT4——本质上是查表量化,每个权重是一个小码本的索引。模型文件通过 mmap 内存映射加载,而不是整个读进内存,所以你看到的是 250MB 而不是完整模型大小。只有正在用的内存页才会被加载到物理内存。

无状态 KV 缓存

传统 KV 缓存会随序列长度增长,吃内存。CoreML-LLM 用无状态方式管理,KV 缓存是固定大小的 CoreML 张量,避免了动态内存分配,保持 Neural Engine 流水线的干净。

批量预填充(Batched Prefill)

188ms 的预填充时间(33 个 token)来自于把整个 prompt 作为一次批量操作处理,而不是逐 token 处理。比顺序处理快 15.8 倍,初始响应几乎感觉不到延迟。

哪些 iPhone 能用?

需要 A16 芯片或更新——也就是 iPhone 14 Pro 及以上

设备芯片Neural Engine是否兼容
iPhone 14 Pro / Pro MaxA16 Bionic16 核可以
iPhone 15 / 15 PlusA16 Bionic16 核可以
iPhone 15 Pro / Pro MaxA17 Pro16 核可以
iPhone 16 / 16 PlusA1816 核可以
iPhone 16 Pro / Pro MaxA18 Pro16 核可以(最快)
iPhone 14 / 14 PlusA15 Bionic16 核不行
iPhone 13 及更老A15 或更老不行

A16 的 Neural Engine 才有 INT4 调色板操作需要的指令集。更老的芯片虽然也有 Neural Engine,但不支持 CoreML-LLM 使用的特定量化格式。

想知道跑更大模型需要什么硬件?看硬件需求指南

手把手安装教程

前置条件

  • 装了 Xcode 15.4+ 的 Mac
  • iPhone 14 Pro 或更新,系统 iOS 17+
  • iPhone 上大约 2GB 可用空间
  • Mac 上装有 Python 3.10+(用于模型转换)

第一步:安装 CoreML-LLM

# 克隆仓库
git clone https://github.com/nicklimmm/coreml-llm.git
cd coreml-llm

# 安装 Python 依赖
pip install -r requirements.txt

第二步:下载并转换模型

# 下载 Gemma 4 E2B 并转换成 CoreML 格式
python convert.py \
  --model google/gemma-4-e2b-it \
  --output gemma4-e2b.mlpackage \
  --quantize int4-palettized \
  --context-length 2048

这一步根据你 Mac 的配置,大约需要 10-20 分钟。转换过程会自动处理量化、调色板化和 Neural Engine 优化。

第三步:构建 iOS 应用

# 打开 Xcode 项目
open CoreMLLLM.xcodeproj
  1. 在 Xcode 中选择你的 iPhone 作为目标设备。
  2. gemma4-e2b.mlpackage 拖进项目的 Resources 文件夹。
  3. 在 Signing & Capabilities 里设置你的开发者团队。
  4. Build and Run(Cmd+R)。

第四步:首次运行

首次启动需要一两分钟,CoreML 在为你的 Neural Engine 编译模型。之后会缓存下来,后续启动很快。

试个简单的 prompt:

用两句话解释什么是 Neural Engine。

你应该能看到 token 以大约每秒 11 个的速度流出来。把手机切到飞行模式——还是能用。这就是重点。

第五步:验证性能

应用内置了跑分模式。点设置图标,选「Run Benchmark」,可以看到你设备的实际预填充和解码速度。跟本文的数据对比一下,确认一切正常。

目前在 iPhone 上跑 Gemma 4 主要有两种方式,对比如下:

特性CoreML-LLM v0.2.0AI Edge Gallery
上手难度中等(需要 Mac + Xcode)简单(App Store 直接下)
解码速度11 tok/s5-15 tok/s
内存占用~250MB~3GB
功耗~2W~5-8W
Neural Engine 原生部分(主要用 GPU)
集成到自己的 App可以(开源)不行(独立应用)
模型支持仅 Gemma 4 E2BE2B + E4B
多模态暂不支持有限支持

选 CoreML-LLM: 追求最大效率、想集成到自己的 App、或者想最大限度省电。

选 AI Edge Gallery: 就想快速试试 Gemma 4、不想折腾开发环境、或者需要 E4B 模型。关于 AI Edge Gallery 的详细教程,看我们的 iPhone 指南

目前的限制

只支持 E2B。 CoreML-LLM v0.2.0 支持 Gemma 4 E2B,更大的 E4B、12B、26B 还没适配。E4B 在计划中,但没有时间表。

还没有多模态。 Gemma 4 E2B 完整版本支持文本、图像和音频,但 CoreML-LLM 目前只支持文本推理。多模态支持在 v0.3 的路线图里。

2048 上下文窗口。 滑动窗口注意力保持了低内存,但限制了模型能一次处理的文本量。长文档需要分块输入。

安装需要 Mac。 模型转换和 App 构建都需要 macOS 上的 Xcode,目前没有 Windows 或 Linux 的方案。

质量上限是 E2B 水平。 这是个 20 亿参数的模型。做快速任务很好用——摘要、翻译、简单问答、基础代码生成——但别指望 GPT-4 级别的推理能力。详细的质量对比看我们的 E2B vs E4B 对比

为什么这件事很重要

250MB 内存、2W 功耗。意味着 Gemma 4 可以跟你其他 App 同时运行,不会把手机搞崩。意味着你可以连续用几个小时,电量不会断崖式下跌。意味着端侧 AI 不再只是个「demo」,而是你真的可以放进生产 App 里的功能。

Neural Engine 在 iPhone 里已经存在好几年了,主要用来跑相机处理和键盘预测。CoreML-LLM 展示了当你真正把一个语言模型对着它优化的时候,会发生什么。

下一步

端侧 AI 实用化刚迈出一大步。CoreML-LLM v0.2.0 + Gemma 4 E2B 是目前在 iPhone 上跑大语言模型最高效的方式——v0.3 多模态支持已经在路上了。

gemma4 — interact

Stop reading. Start building.

~/gemma4 $ Get hands-on with the models discussed in this guide. No deployment, no friction, 100% free playground.

Launch Playground />
Gemma 4 AI

Gemma 4 AI

相关教程

用 CoreML 在 iPhone 上跑 Gemma 4(2026 完整教程) | 博客