【Mac M系列养虾人专属福利】本地Qwen3-TTS强兼OpenAI端点!
QuasarRyan
2026年03月12日 04:38

大家好!我最近基于 mlx-audio 这个 python 库,vibe coding 出来一个纯本地 TTS 项目——mlx-audio-bridge(GitHub: https://github.com/QuasarRyan/mlx-audio-bridge),专为 Apple Silicon Mac(M1/M2/M3/M4/M5)打造。

它是基于 MLX 框架的音频库 mlx-audio 接入 Qwen3-TTS(阿里最新开源TTS模型)的一个实现,能把本地音频推理桥接成完整兼容 OpenAI 的 /v1/audio/speech 端点!

现在 OpenClaw 官方已原生支持自定义 OpenAI-compatible baseUrl(详见官方TTS文档:https://docs.openclaw.ai/tts),所以我们 Mac 养虾人终于可以抛弃云端 API,实现完全离线、超低功耗的 TTS 语音回复了!

效果有多强?

  • 中文发音自然度拉满,支持 voice clone/voice design

  • M1 即可快速生成(1.7B-8bit 量化)

  • 直接丢进 OpenClaw 的 messages.tts.openai.baseUrl,自动走本地服务

  • 完全免费、无 API 限额、无网络依赖

下面是完整傻瓜式教程,复制粘贴就能跑!(亲测 M1 + OpenClaw 最新版通过)

第一步:准备环境(2分钟)

  1. 确保 Mac 是 Apple Silicon 版(Intel版用户抱歉,MLX 只支持M系列)

  2. 安装 Homebrew(如果没有):

代码块
Shell
自动换行
复制代码
bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
复制成功

3. 安装核心工具:

代码块
Shell
自动换行
复制代码
brew install uv ffmpeg
复制成功

第二步:安装 mlx-audio-bridge(1分钟)

代码块
Shell
自动换行
复制代码
cd /opt && sudo git clone https://github.com/QuasarRyan/mlx-audio-bridge.git
复制成功
代码块
Shell
自动换行
复制代码
sudo chown -R $(whoami):staff /opt/mlx-audio-bridge && cd mlx-audio-bridge
复制成功

创建虚拟环境并安装

代码块
Shell
自动换行
复制代码
UV_CACHE_DIR=.uv-cache UV_PROJECT_ENVIRONMENT=.venv uv sync --python 3.13 --extra dev
复制成功

第三步:下载 Qwen3-TTS 模型(5-10分钟)

项目不会自动下载,需要手动从 Hugging Face mlx-community 集合获取:

推荐 6bit 量化起步(速度/质量平衡最好),实测 M1 跑 1.7B-8bit 几乎可以达到实时1x速率生成:

  • 去 https://huggingface.co/collections/mlx-community/qwen3-tts

  • Base/CustomVoice/VoiceDesign 分别各下载一个(建议先下 0.6B 轻量版测试)

下载完整个文件夹(包含 safetensors、config.json、speech_tokenizer 文件夹等),放到下述目录里:

代码块
PlainText
自动换行
复制代码
/opt/mlx-audio-bridge/models
复制成功

文件结构应类似下面这样:

代码块
PlainText
自动换行
复制代码
# 示例
/opt/mlx-audio-bridge/models/
├── Qwen3-TTS-12Hz-Base-0.6B-8bit/
├── Qwen3-TTS-12Hz-Base-0.6B-4bit/
└── Qwen3-ASR-0.6B-8bit/
复制成功

(服务器会自动按 8bit→6bit→4bit 顺序选最优模型)

第四步:启动本地 TTS 服务(30秒)

代码块
Shell
自动换行
复制代码
export QWEN_MODEL_DIR=/opt/mlx-audio-bridge/models
复制成功
代码块
Shell
自动换行
复制代码
export API_KEY=local-dev-key  # 请将 local-dev-key 替换成自定义密钥,OpenClaw要用
复制成功
代码块
Shell
自动换行
复制代码
export PORT=8008 # 默认端口
复制成功

(可选)如果要在局域网/公网上使用

代码块
Shell
自动换行
复制代码
export BIND_ADDRESS=0.0.0.0
复制成功

启动(推荐用 tmux 或 launchd 后台跑,详见GitHub仓库README.md)

代码块
Shell
自动换行
复制代码
mlx-audio-bridge-server
复制成功

看到 Listening on http://127.0.0.1:8008 或者是 Listening on http://0.0.0.0:8008 就成功了!

测试一下(终端curl):

代码块
Shell
自动换行
复制代码
curl http://127.0.0.1:8008/v1/audio/speech \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o-mini-tts",
    "input": "养虾人你好,这里是本地Qwen3-TTS在为你服务!",
    "voice": "alloy",
    "response_format": "wav"
  }' --output ~/Downloads/test.wav
复制成功

在下载文件夹中打开 test.wav 听听,中文超自然对吧?

第五步:接入OpenClaw(关键配置!1分钟)

打开你的 openclaw.json(或对应配置文件),在 messages.tts 字段里加入响应配置,示例如下:

代码块
JSON
自动换行
复制代码
{
  "messages": {
    "tts": {
      "auto": "always",              // 或 "inbound" / "tagged"
      "provider": "openai",
      "openai": {
        "baseUrl": "http://127.0.0.1:8008", // 或者把127.0.0.1换成mac所在的内网IP地址
        "apiKey": "local-dev-key",   // 必须和上面export一致
        "model": "gpt-4o-mini-tts",  // 支持OpenAI所有别名
        "voice": "alloy"             // alloy/echo/fable等映射到Qwen声音
      },
      "edge": {
        "enabled": false,            // 禁用默认的edge tts
      },
      "maxTextLength": 500           // 最大上传500个字
      "timeoutMs": 120000            // 最大120秒超时
    }
  }
}
复制成功

保存后重启 OpenClaw(或用 /tts status 检查)。

搞定!以后所有回复都会走本地 Qwen3-TTS 生成语音,直接在 Telegram 里变语音气泡~

进阶玩法

  • 语音克隆/微调参数:配置 voices.json(项目deploy文件夹有示例),输入参考音频就能永久克隆你的声音

  • 后台常驻:用 launchd 一键开机自启(项目 deploy 文件夹有plist模板)

  • 多语言:自动识别中文/英文,日语韩语也支持

常见问题排查

  • 端口冲突?改 PORT=8009 并同步改baseUrl

  • 模型加载失败?检查文件夹名是否精确匹配 Qwen3-TTS-12Hz-xxx

  • OpenClaw报错401?密钥不一致

代码块
PlainText
自动换行
复制代码
想切换模型?设置export QWEN_TTS_MODEL_NAME=你的模型文件夹名
复制成功

为什么推荐本地跑 TTS 服务?

  • OpenClaw 官方原生支持自定义 baseUrl(最近才完善)

  • MLX 原生加速,功耗更低,速度更快(当前场景比torch-audio快数倍)

  • Qwen3-TTS 2026最新开源,中文表现吊打老模型

  • 完全本地,隐私安全,永不掉线,只付电费,更省钱

现在就去试试吧!跑通后把你的语音效果截图发出来,我们一起在 OpenClaw小站 交流~

养虾人冲!本地 TTS 时代来了!🚀

项目地址:https://github.com/QuasarRyan/mlx-audio-bridge

官方TTS接入文档:https://docs.openclaw.ai/tts