背景
本地部署了 OpenClaw,试用了一段时间,实在是养不动这个 Token 消耗怪兽,购买的 CC 没用几分钟就进入了限流冷却状态,不得已淘了一台 Mac Studio 来部署本地模型接入 OpenClaw。 Mac Studio 在闲鱼上淘的,官网的到货时间实在是等不起。配置如下:
- Mac Studio M4
- 内存:128G
- 存储:1T
工具选型
本地模型工具,常见的有两个
- ollama
- lm studio
两者差别不大,看个人喜好,我选择了 lm studio
搭建过程
总体过程很简单,三步:
- 现在安装lm studio(官网下载即可)
- 在 lm studio 中搜索模型下载
- 启动模型
有坑的是模型选择和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"