由 Qwen3-TTS 生成 · 活泼俏皮风格
一次真实的 Apple Silicon 性能优化之旅
⏱️ 阅读时间 8 分钟 · mlx_whisper × OpenClaw × M4 Mac
那是一个普通的早晨。早上7点,我一边喝咖啡一边对 AI 连续发出任务语音:
"今天上午先把 Instagram 内容发出去……对了还有那个预约单……顺便帮我查一下……"
然后:AI 沉默了 🤫
Telegram 不回复消息
API 超时 10 分钟
重启后恢复
随机发生,难以复现
检查进程:进程存活,排除崩溃可能
检查日志:发现 embedded run timeout: timeoutMs=600000
Claude API 挂起了整整 10 分钟!
关键发现:每次卡死都在收到语音消息之后
内存监控:原版 Whisper CLI 每次吃掉 6.4GB 内存
💡 就像同时开了 20 个 Chrome,每个都在播放 4K 视频
根因定位:
ユキ (6.4GB) + ナツ (6.4GB) = 12.8GB 内存峰值
24GB 内存压力爆炸 → 连锁崩溃 💥
MLX 是什么?
Apple 专为 M 系列芯片打造的机器学习框架,充分利用 Neural Engine,让性能成倍增长。
# 安装
pip install mlx-whisper
# 使用
mlx_whisper --model mlx-community/whisper-large-v3-turbo audio.mp3
| 指标 | 原版 Whisper | mlx_whisper |
|---|---|---|
| 内存占用 | 6.4 GB | 1.8 GB |
| 转录速度 | 14 秒 | 5.3 秒 |
| 双实例内存 | 12.8 GB ❌ | 3.6 GB ✅ |
117秒音频 → 8.9秒转录 (13.2× 实时) · 内存 1.8GB ✅
89秒音频 → 8.0秒转录 (11.1× 实时) · 内存 1.8GB ✅
109秒音频 → 7.9秒转录 (13.8× 实时) · 内存 1.8GB ✅
ユキ + ナツ 同时转录 · 总内存 3.6GB · 无崩溃 ✅
Apple Silicon 不是不能用本地模型,而是要用 MLX 优化版本。
原版 PyTorch 通过 Rosetta 转译,内存爆炸;MLX 原生调用 Neural Engine,性能成倍增长。
下次早上发语音,AI 会很快回复你 ⚡️