开发者 jola 分享了自己在M4 MacBook Pro(24GB 内存)上运行本地大语言模型的完整实践经验。在经历了多次模型选型、量化配置和前端适配的试错后,他最终搭建出了一套「不需要联网、能在笔记本上流畅运行」的本地 AI 工作流——核心模型是Qwen 3.5-9B(Q4_K_S 量化版),在 LM Studio 中跑出了约40 tokens/秒的生成速度,同时支持思维链(thinking)和工具调用(tool use)。
![]()
M4 MacBook Pro本地运行大模型
选型之路:不是「能装下」就能用
本地部署大模型的第一道坎是选型。jola 尝试过多种方案:Ollama、llama.cpp、LM Studio,各自有不同的模型兼容性和配置 quirks。模型方面,他先后测试了 Qwen 3.6 Q3、GPT-OSS 20B、Devstral Small 24B 以及 Gemma 4B——前几个虽然理论上能在 24GB 内存中加载,但实际运行中「基本不可用」;Gemma 4B 能跑,但在工具调用场景下表现糟糕。
真正让他满意的是Qwen 3.5-9B @ Q4_K_S。这个量化版本在压缩后仍能保留足够的推理能力,同时留出足够内存给日常运行的 Electron 应用和其他开发工具。更关键的是,它支持128K 的上下文窗口,对于代码分析和文档阅读场景非常实用。
配置细节:Thinking 模式与代码优化参数
在 LM Studio 中,jola 为代码和精确任务场景推荐了一组参数配置:
- temperature=0.6
- top_p=0.95
- top_k=20
- min_p=0.0
- presence_penalty=0.0
- repetition_penalty=1.0
启用 thinking 模式还需要在 Prompt Template 底部手动添加{%- set enable_thinking = true %}。这些细节说明,本地模型的「可用性」不仅取决于硬件和模型本身,前端推理引擎的配置同样关键。
前端接入:Pi 与 OpenCode
模型跑起来后,jola 将其接入了两个开发向 AI 前端:
Pi的配置相对简洁,通过~/.pi/agent/models.json指向 LM Studio 的本地 OpenAI-compatible API(http://localhost:1234/v1),并在 settings 中开启hideThinkingBlock来隐藏思维链的干扰输出。
OpenCode的配置则更加明确,指定了 131072 的上下文长度和 32768 的最大输出 token 数,同时开启 tools 支持。
jola 的个人感受是 Pi 更轻快,但配置过程容易让人陷入「调参陷阱」——花太多时间打磨工具设置,反而挤占了实际开发的时间。
与 SOTA 模型的差距:不是替代品,是另一种工作方式
jola 非常坦诚地指出了本地模型与云端 SOTA 模型的差距:Qwen 3.5-9B(Q4)无法独立完成复杂的多步骤任务,容易分心、陷入循环、误解需求。如果你期望像使用 Claude 或 GPT-4 那样「一句话生成整个应用」,本地模型会让你失望。
但 jola 发现了一个意想不到的好处:本地模型迫使你保持更高的参与度。与 SOTA 模型合作时,开发者很容易不自觉地将所有认知负担外包给 AI;而本地模型需要更明确的指令、更细致的引导,反而让开发者始终处于思考和规划的核心位置。它更像一个「研究助理、橡皮鸭、以及拥有即时回忆能力的编程语言专家」,而不是一个能替你思考的「全栈外包」。
对于拥有 24GB 内存的 M 系列 MacBook 用户来说,这套方案提供了一个切实可行的「离线 AI 助手」选项。它不需要订阅费、不依赖网络、不将数据发送到第三方服务器——代价是你必须接受它的能力上限,并愿意付出更多的交互精力。在大模型越来越「黑箱化」和「云端化」的今天,这种「可控但有限」的本地方案,或许代表了一种值得保留的替代路径。
参考来源:jola.dev - Running local models on an M4:https://jola.dev/posts/running-local-models-on-m4
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.