Mac Studio 本地模型搭建避坑

11 阅读2分钟

背景

本地部署了 OpenClaw,试用了一段时间,实在是养不动这个 Token 消耗怪兽,购买的 CC 没用几分钟就进入了限流冷却状态,不得已淘了一台 Mac Studio 来部署本地模型接入 OpenClaw。 Mac Studio 在闲鱼上淘的,官网的到货时间实在是等不起。配置如下:

  • Mac Studio M4
  • 内存:128G
  • 存储:1T

工具选型

本地模型工具,常见的有两个

  • ollama
  • lm studio

两者差别不大,看个人喜好,我选择了 lm studio

搭建过程

总体过程很简单,三步:

  1. 现在安装lm studio(官网下载即可)
  2. 在 lm studio 中搜索模型下载
  3. 启动模型

有坑的是模型选择和lm studio 运行参数的配置

模型选择

我的工作场景包含如下几个Agent

  • 产品经理:产品定义,工作计划安排
  • 架构师:架构方案设计
  • 开发:coding

产品经理/架构师 需要具备复杂问题拆解,深度思考能力,要支持长 context length。 开发 对 code 特调过。 最终经过比较选择了 Qwen3 系列的模型:

  • Qwen3 next 80b q4 (45G)
  • Qwen3 coder 30b q4(17G)

两个模型都选在 MLX 格式,这种格式针对 apple 芯片进行过优化,整体运行性能更高。 模型选择特别需要注意模型大小,基础模型大小不宜超过设备内存 50%。

基础模型估算:模型文件大小 + 2G

模型文件命名说明

Qwen2.5-72b-instruct-gguf-q4_k_m

字段说明
Qwen2.5系列名
72b参数量
instrunct训练属性,base/foundation 基础模型;instruct/chat/it 指令微调;coder 针对编程优化;math 针对数学优化;vision/VL 多模态
gguf存储格式,gguf 通用;mlx apple silion;satetensors 原始权重;exl2 nvidia 优化
q4_k_m量化精度,数字越大精度越高

工具参数设置

lm studio 采用单进程架构,多个模型都加载在一个进程中。mac 对于单进程内存占用默认上限通常在 总内存70% 左右。我们需要放开这个限制使模型可以使用更多的内存。 lm studio 加载 MLX 格式模型使,可以通过下面几个环境变量控制相关的内存分配&使用:

  • MLX_MAX_RECENT_CACHE_GB:限制最近使用的 kv_cache 大小
  • MLX_MAX_MEM_RATIO:限制进程可占用的物理内存占比,建议 0.7-0.8之间
  • MLX_MALLOC_APPROXIMATE:设置为 1 时,允许模糊的内存分配,减少频繁申请/释放内存
  • MLX_MAX_MAX_RAM:限制总内存占用
  • MLX_METRIC_RESERVE_MEMORY:设置为 1 时,MLX 会在每个推理 step 后积积极归还内存

在命令行中 export 上述变量值后,通过如下命令启动 lm

open -a "LM Studio"