惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

A
About on SuperTechFans
Y
Y Combinator Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Microsoft Security Blog
Microsoft Security Blog
aimingoo的专栏
aimingoo的专栏
I
InfoQ
C
Check Point Blog
IT之家
IT之家
MyScale Blog
MyScale Blog
Apple Machine Learning Research
Apple Machine Learning Research
Vercel News
Vercel News
Last Week in AI
Last Week in AI
GbyAI
GbyAI
P
Proofpoint News Feed
量子位
Stack Overflow Blog
Stack Overflow Blog
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
阮一峰的网络日志
阮一峰的网络日志
人人都是产品经理
人人都是产品经理
B
Blog
T
The Blog of Author Tim Ferriss
H
Help Net Security
云风的 BLOG
云风的 BLOG

博客园 - iTech

AI Agent 写完代码谁来测?这个开源沙箱把 CI/CD 和多 Agent 协作全包了 7万星的AI交易框架:让大模型模拟投行多空辩论,自动做交易决策 71000颗星的AI交易团队:让大模型模拟投行分工,自动做交易决策 13400颗星的开源项目:输入一句话,AI全自动帮你做短视频 102颗星的沙盒:当AI学会自己写代码、跑测试、做部署 AI 技术日报 - 2026-05-08 29k 星的 PageIndex:不用向量数据库,靠推理就能做 RAG 每天花两小时刷信息?这个开源项目帮你全自动搞定 读源码像读小说?试了 DeepWiki 和 Zread,我再也不想裸读 GitHub 了 Matt Pocock 开源的这套 .claude 技能,为什么让工程师集体上头? Cursor Team Kit:Cursor 官方团队在用的 17 个 AI 工作流 AI 技术日报 - 2026-05-07 AI 技术日报 - 2026-05-06 AI 技术日报 - 2026-05-05 Anthropic CEO 说 12 个月内程序员要失业,我扒完他的底牌,发现事情没那么简单 把工程师的肌肉记忆装进 Claude Code,这个 4300 Star 的项目我后悔没早用 AI 技术日报 - 2026-05-04 AI 技术日报 - 2026-05-03 AI 技术日报 - 2026-05-02 六大 Agent 框架横评:谁支持 Skills?谁能自动创建 Agent?MCP 呢? Wechatsync:一个 Chrome 插件,一键把文章同步到 31 个平台 LangChain 开源了 Open SWE:Stripe、Ramp、Coinbase 内部都在造的编程 Agent Cockpit:把 Claude Code 从终端里搬出来,装进浏览器 Cursor 把自家的 AI Agent 开放了:写几行 TypeScript 就能调 Cursor 干活 AI 技术日报 - 2026-05-01 AI 写代码每次结果都不一样?Archon 用 YAML 工作流把 AI 编程变成流水线 AI 写代码比你快了,但你还是得学编程——只不过学法得换 腾讯的龙虾特工队:4 个 AI Agent 同日更新,全家桶正式成型 Agno 不做更聪明的 Agent,它要把所有 Agent 框架包进同一个操作系统 Hermes Agent 终于有了像样的 Web 界面,而且还支持远程访问
MacBook Air 跑大模型实测:Ollama、llama.cpp、LM Studio 谁...
iTech · 2026-04-24 · via 博客园 - iTech

MacBook Air 跑大模型实测:Ollama、llama.cpp、LM Studio 谁才是本地推理之王?

上周在咖啡店,隔壁桌两个开发者在争论本地跑大模型的事。一个说 Ollama 无脑装就行,另一个非说 llama.cpp 性能最强。我插了句"都用过",结果被拉过去聊了半小时。

确实,现在 MacBook Air 的统一内存架构让本地跑 LLM 变得现实了。但工具选错了,体验天差地别。我用 MacBook Air M3(16GB)跑了大半年的本地模型,Ollama、llama.cpp、LM Studio 都深度用过,今天把踩过的坑和真实数据分享出来。

本文提纲

  1. 为什么 MacBook Air 跑大模型是认真的
  2. 三大选手快速上手
  3. 横向对比:谁在什么场景下最强
  4. 被低估的 5 个替代方案
  5. 我的选择和踩坑建议

一、为什么 MacBook Air 跑大模型是认真的

先说结论:Apple Silicon 的统一内存(Unified Memory)是本地推理的天然优势。

传统架构里 GPU 有自己的显存,模型得塞进显存才能跑。但 Apple Silicon 的 M1/M2/M3 芯片用的是统一内存——CPU 和 GPU 共享同一块内存。这意味着你的 16GB MacBook Air,GPU 可以直接访问全部 16GB。

实际能跑多大的模型?以 Q4_K_M 量化(4-bit,质量损失很小)为例:

模型 参数量 量化后大小 8GB 内存 16GB 内存 24GB 内存
Qwen2.5-1.5B 1.5B ~1GB ✅ 丝滑 ✅ 丝滑 ✅ 丝滑
Gemma-3-4B 4B ~3GB ✅ 流畅 ✅ 流畅 ✅ 流畅
Llama-3.1-8B 8B ~5GB ⚠️ 勉强 ✅ 流畅 ✅ 流畅
Qwen2.5-14B 14B ~9GB ✅ 可以跑 ✅ 流畅
Llama-3.1-70B 70B ~40GB

Metal 框架直接调用 GPU,不需要 CUDA,不需要 NVIDIA 显卡。M3 芯片跑 Llama-3.1-8B Q4 量化,能到 30-45 tok/s,日常对话完全够用。

所以问题不是"能不能跑",而是"用什么工具跑"。

二、三大选手快速上手

2.1 Ollama:五分钟从零到对话

Ollama 的理念就是让你不用动脑子。

# 安装(Mac 就这一行)
brew install ollama

# 启动服务
ollama serve

# 拉模型并对话(二合一)
ollama run llama3.1

没了。真的没了。

Ollama 自动处理量化选择、模型下载、GPU 加速。默认拉的就是适合你机器的量化版本。它还内置了 OpenAI 兼容的 API Server:

# 启动后自动开 API
curl http://localhost:11434/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{
    "model": "llama3.1",
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

这意味着你可以把 Ollama 当作本地 OpenAI API,直接对接各种工具:Open WebUI、Continue(VS Code 插件)、Cursor、甚至是自己写的脚本。

模型管理也很方便:

ollama list          # 列出已下载的模型
ollama rm llama3.1   # 删除模型释放空间
ollama pull qwen2.5  # 只下载不运行

亮点:自定义 Modelfile(类似 Dockerfile),可以基于已有模型创建带 system prompt 的专用版本。

不足:底层量化选项有限,不能精细选择 Q4_K_M 还是 Q5_K_S。高级调参空间小,context length、temperature 这些得通过 API 或 Modelfile 调。

2.2 llama.cpp:硬核玩家的瑞士军刀

llama.cpp 是纯 C/C++ 写的推理引擎,几乎所有本地推理工具的底层都是它(包括 Ollama)。

# 安装
brew install llama.cpp

# 最简单的对话
llama-cli -m models/llama-3.1-8b-q4_k_m.gguf -ngl 99

# 启动 API Server(OpenAI 兼容)
llama-server -m models/llama-3.1-8b-q4_k_m.gguf \
  --host 0.0.0.0 \
  --port 8080 \
  -ngl 99 \
  -c 4096

-ngl 99 表示把所有层都 offload 到 GPU(Metal),这是性能的关键参数。

llama.cpp 的优势在于精细控制:

# 完全定制化的推理
llama-cli \
  -m models/qwen2.5-14b-q5_k_m.gguf \
  -ngl 99 \              # GPU 层数
  -c 8192 \              # context 长度
  -b 512 \               # batch size
  -t 8 \                 # CPU 线程数
  --temp 0.7 \           # 温度
  --top-p 0.9 \          # top-p 采样
  --repeat-penalty 1.1   # 重复惩罚

亮点:性能天花板最高。直接 GGUF 文件,量化格式随便选(Q2_K 到 Q8_0)。支持 grammar 约束输出(强制输出 JSON)。内存管理精细,能压榨出最后一滴性能。

不足:命令行操作门槛高,模型得自己从 HuggingFace 找 GGUF 下载。没有模型管理,纯手工。

2.3 LM Studio:好看的 GUI 不一定是花瓶

LM Studio 是一个桌面应用,主打"像用 ChatGPT 一样用本地模型"。

安装就是标准的 Mac dmg 拖拽。打开后:

  1. 搜索栏输入模型名(比如 "llama 3.1")
  2. 看到一堆量化版本,选一个下载
  3. 加载,开始聊天

它内置了 HuggingFace 的 GGUF 模型搜索和下载,不用自己去翻网页。聊天界面支持多轮对话、system prompt、参数调节。还有个本地 API Server 功能,同样兼容 OpenAI 格式。

亮点:模型发现体验最好。直接在 app 里搜索、预览、下载,能看到每个量化版本的大小和推荐配置。GUI 里调参数比命令行直观很多。还支持 vision 模型(LLaVA 等)。

不足:闭源软件,免费但不开源。相比 Ollama 占用更多系统资源。模型管理不如 Ollama 的命令行方便批量操作。自定义程度不如 llama.cpp。

三、横向对比:谁在什么场景下最强

我把三个工具在 MacBook Air M3 16GB 上的实测数据整理了一下:

性能对比(Llama-3.1-8B Q4_K_M)

指标 Ollama llama.cpp LM Studio
首 token 延迟 ~1.2s ~0.8s ~1.5s
生成速度 (tok/s) 35-40 38-45 33-38
内存占用 ~6.5GB ~5.2GB ~7.8GB
GPU 利用率 最高
冷启动时间 ~3s ~2s ~5s

llama.cpp 性能确实最好,但差距不大。Ollama 和 LM Studio 的底层其实都是 llama.cpp,只是多了一层封装带来一点开销。

功能对比

功能 Ollama llama.cpp LM Studio
安装难度 ⭐ 极简 ⭐⭐ 中等 ⭐ 极简
模型管理 ✅ 自动 ❌ 手动 ✅ GUI 搜索
OpenAI API ✅ 内置 ✅ 内置 ✅ 内置
量化选择 ⭐⭐ 有限 ⭐⭐⭐ 完整 ⭐⭐⭐ 完整
GPU 加速 ✅ Metal ✅ Metal ✅ Metal
多模型并行 ⚠️ 需手动 ✅ 多实例 ❌ 单模型
自定义 Modelfile
Grammar 约束输出
Vision 模型
开源 ✅ MIT ✅ MIT ❌ 闭源
社区生态 ⭐⭐⭐ 最大 ⭐⭐⭐ 最底 ⭐⭐ 一般
Embedding 模型

场景推荐

选 Ollama 如果你

  • 刚开始接触本地推理,想 5 分钟跑起来
  • 需要本地 API 对接其他工具(Open WebUI、Continue 等)
  • 希望一行命令管理模型,不想折腾 GGUF 文件
  • 做原型开发和日常对话

选 llama.cpp 如果你

  • 追求极致性能,每一 tok/s 都要榨出来
  • 需要精细控制量化格式、context 长度等参数
  • 做 benchmark 或性能测试
  • 需要部署为轻量 API Server(内存占用最低)
  • 需要 grammar 约束输出(比如强制 JSON)

选 LM Studio 如果你

  • 不喜欢命令行,偏好图形界面
  • 想快速发现和试玩新模型
  • 日常聊天为主,不做开发集成
  • 想在 GUI 里直观调参数看效果

四、被低估的 5 个替代方案

除了这三驾马车,还有几个工具值得关注:

4.1 GPT4All

开源桌面应用,主打"不需要联网的 ChatGPT"。支持 CPU 推理(不强制 GPU),老款 Intel Mac 也能跑。内置 RAG 功能,可以直接上传 PDF 和文档让模型基于本地文件回答问题。

适合场景:老款 Mac 用户,或者主要需求是文档问答。

4.2 Jan.ai

开源的本地 AI 助手,界面类似 ChatGPT。支持 Ollama 作为后端,也有自己的推理引擎。设计理念是"数据完全本地",连聊天记录都存在本地。

适合场景:注重隐私,想要开箱即用的 ChatGPT 替代品。

4.3 Chatbox

一个轻量级的多模型客户端,可以连接 Ollama、LM Studio、OpenAI API 等多种后端。本身不负责推理,只提供统一的聊天界面。

适合场景:你已经在用 Ollama 或 llama.cpp 跑 API,想要一个好看的聊天界面。

4.4 Cherry Studio

类似的桌面客户端,但功能更丰富。支持多模型对比(同一个 prompt 同时发给多个模型看回答),内置 prompt 模板市场。

适合场景:需要对比不同模型效果的评测和开发场景。

4.5 Msty

一个比较新的本地推理工具,把 Ollama 的简单性和 LM Studio 的 GUI 体验结合在一起。开箱即用,还支持远程 API 混合调用(本地模型 + 云端 API 无缝切换)。

适合场景:想在一个工具里同时使用本地模型和云端 API。

五、我的选择和踩坑建议

说说我自己的方案:Ollama 为主 + llama.cpp 做性能测试

日常开发用 Ollama 跑 API Server,对接 Continue 写代码、Open WebUI 做对话。需要测性能或精细调参时切到 llama.cpp。

几个实际踩过的坑:

内存比你想的紧张。16GB 看着不少,但 macOS 自己要吃 4-5GB,跑个浏览器和 VS Code 又占 2-3GB。留给模型的实际只有 7-8GB。14B 模型能跑但会触发 swap,速度掉到 5-10 tok/s。别贪大,8B 模型体验最好。

量化选 Q4_K_M 就对了。Q2_Q3 质量损失明显(尤其中文),Q6_Q8 质量提升有限但体积翻倍。Q4_K_M 是性价比之王,Q5_K_M 是质量优先的选择。别用 Q8,除非你不在乎速度。

Context length 是隐形杀手。context 开到 8K,内存占用直接翻倍。日常对话 4K 足够,长文档才需要开大。

散热和降频。MacBook Air 没有风扇。长时间推理(比如处理长文档),芯片会降频,速度从 40 tok/s 掉到 15-20 tok/s。这是物理限制,换哪个工具都一样。

模型选择比工具选择更重要。同样 8B 参数,Qwen2.5 的中文能力远超 Llama-3.1。如果主要用中文,首推 Qwen2.5-7B 或 Qwen2.5-14B。英文为主就 Llama-3.1-8B。代码就 DeepSeek-Coder-V2-Lite。

工具之争没那么重要,Ollama 三分钟装好跑起来,比纠结"哪个性能高 5%"有意义得多。先用起来,再慢慢调优。


作者: itech001
来源: 公众号:AI人工智能时代
主页: https://www.theaiera.cn,每日分享最前沿的AI新闻和技术。

本文首发于 AI人工智能时代,转载请注明出处。