macOS 26 Tahoe 内置了一个 3B 参数的语言模型,Apple 叫它 Foundation Model。这玩意儿平时藏在系统里给 Writing Tools、Siri 这些功能用,但其实你可以把它拉出来,包装成一个 OpenAI 兼容的 API,然后接到任何支持 OpenAI 格式的工具里去。
完全本地运行,不走网络,不要钱。
前提条件#
你需要 macOS 26 Tahoe(现在已经是 26.3 正式版了)和一台 Apple Silicon 的 Mac。Intel Mac 不行,因为 Apple Intelligence 只支持 M 系列芯片。
安装#
有个开源项目叫 maclocal-api,做的事情很简单:调用 Apple 的 FoundationModels framework,然后在本地起一个 HTTP 服务器,暴露 /v1/chat/completions 这些标准端点。
git clone https://github.com/scouzi1966/maclocal-api
cd maclocal-api
swift build -c release编译需要一点时间,因为依赖了 Vapor 框架,会拉一堆 Swift 包下来。我这边大概两分钟编译完。
编译完之后,二进制文件在 .build/release/afm。
启动服务#
./.build/release/afm --port 9999 --hostname 0.0.0.0会看到一个很花哨的 ASCII art logo,然后服务就起来了。默认监听 9999 端口。
如果想后台运行:
nohup ./.build/release/afm --port 9999 --hostname 0.0.0.0 > /tmp/afm.log 2>&1 &使用#
API 完全兼容 OpenAI 格式,所以你可以直接用 OpenAI 的 SDK:
from openai import OpenAI
client = OpenAI(
api_key="not-needed",
base_url="http://localhost:9999/v1"
)
response = client.chat.completions.create(
model="foundation",
messages=[{"role": "user", "content": "你好"}]
)
print(response.choices[0].message.content)或者 curl:
curl http://localhost:9999/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model": "foundation", "messages": [{"role": "user", "content": "Hello"}]}'支持 streaming,加 "stream": true 就行。
实测能力#
我跑了一圈测试,结论是:能用,但别期望太高。
能做的事:
中英翻译没问题。我让它把「今天天气真好」翻成英文,输出 “Today, the weather is really good.",挺自然的。
写代码也行。让它写个斐波那契函数,Python 代码结构清晰,还带注释和使用示例。
简单推理可以。「小明比小红大3岁,小红今年10岁,小明几岁?」答「13岁」,没毛病。
System prompt 能遵循。我让它扮演一只猫,它真的回复「喵喵喵喵」。
摘要、改写这些 Writing Tools 本来就在用的功能,自然也没问题。
做不了的事:
没有 function calling / tool use。这是个纯文本模型,不能调工具。
复杂推理会翻车。毕竟只有 3B 参数,比不上 Claude 或 GPT-4。
不能生成图片。Apple 的图片生成是另一套东西(Image Playground),这个 API 没暴露。
Vision 是假的。maclocal-api 有个 afm vision 命令,但那只是调用 Apple 的 OCR framework 提取文字,不是真正的多模态理解。
资源占用#
这是最惊喜的部分。
afm 服务器本身只占 33MB 内存,CPU 空闲时 0%,请求时 0.7% 左右。
为什么这么轻?因为模型推理不是这个进程干的。Apple 的 Foundation Model 由系统服务 IntelligencePlatformComputeService 托管,这个服务本来就一直在后台跑(给 Writing Tools 用),所以你启动 afm 几乎没有额外开销。
换句话说,模型早就加载好了,afm 只是个薄薄的 API 包装层。
适用场景#
这东西适合什么?
本地隐私场景。数据完全不出机器,如果你在处理敏感内容,这个方案比任何云端 API 都安全。
简单任务的免费替代。翻译、摘要、简单问答,用这个就够了,省点 API 费用。
离线环境。飞机上、没网的时候,照样能用。
不适合什么?
复杂的 AI agent 流程。没有 tool calling,没法做复杂编排。
需要高质量输出的场景。3B 模型的天花板在那里,别指望它写出惊艳的文案。
和 Ollama 的区别#
你可能会问,这和 Ollama 有什么区别?
Ollama 需要你自己下载模型,占几个 G 到几十 G 的硬盘空间。Apple Foundation Model 是系统自带的,不占额外空间。
Ollama 的模型你可以换,想跑 Llama 3 就跑 Llama 3,想跑 Qwen 就跑 Qwen。Apple 这个只有一个 3B 的 foundation 模型,没得选。
性能上,Apple 的模型针对自家芯片做过优化,推理速度很快。但 3B 参数的能力上限摆在那里,如果你用 Ollama 跑个 70B 的模型,效果肯定比这个好。
所以这两个不是替代关系,更像是互补。轻量任务用 Apple 的,重活用 Ollama 跑大模型。
小结#
Apple 在 macOS 26 里埋了一个免费的本地 LLM,虽然能力有限,但胜在零成本、零配置、零隐私顾虑。如果你是 Mac 用户,值得花五分钟装一下,至少可以拿来做 OCR 和简单的文本处理。
GitHub 地址:https://github.com/scouzi1966/maclocal-api

