
MLX-Audio 实战M 芯片上跑通本地语音合成与转写的最短路径【免费下载链接】mlx-audioA text-to-speech (TTS), speech-to-text (STT) and speech-to-speech (STS) library built on Apples MLX framework, providing efficient speech analysis on Apple Silicon.项目地址: https://gitcode.com/GitHub_Trending/ml/mlx-audio给 macOS 应用加语音功能却不想依赖云端 TTS API每次调用都要走外网费用按字数计长文本批量生成又慢又贵。反过来两小时的会议录音属于敏感数据也不方便直接丢给在线转写接口。MLX-Audio 是构建在 Apple MLX 框架上的语音 AI 库文本转语音、语音转文本、语音转语音都直接在 M1–M4 芯片上本地运行。从 pip 安装到第一条声音30 秒安装只要一行CLI 自带--play开关生成完直接出声不用管文件路径pip install mlx-audio mlx_audio.tts.generate \ --model mlx-community/Qwen3-TTS-12Hz-0.6B-CustomVoice-8bit \ --text 你好这是本地运行的 MLX-Audio \ --voice Vivian --play--voice只对带预设音色的模型生效如上例的 Qwen3-TTS CustomVoice 版Base 版没有预设音色需要传参考音频或用 csm-1b 这类克隆模型。模型首次运行会从模型仓库自动下载CLI 与 Python 共用同一份缓存。完整参数见 CLI 快速上手文档。模型能力地图TTS、STT、STS 各选谁仓库内置 20 多个 TTS 模型、20 个 STT 模型和 7 个 STS 模型不必全懂先看这张表能力代表模型语言覆盖备注文本转语音 TTSKokoro-82M、Qwen3-TTS、Higgs Audio v3、OmniVoice、CSM、Chatterbox、Voxtral TTS、VoxCPM2英、中、日、韩及 20 余种欧洲语言OmniVoice 覆盖 600语速调节、音色预设、零样本声音克隆语音转文本 STTWhisper、Parakeet、Qwen3-ASR、VibeVoice-ASR、Voxtral Realtime99 种Whisper、25 种欧洲语言Parakeet v3流式转写、热词、说话人标签语音转语音 STSSAM-Audio、DialogueSidon、MossFormer2、DeepFilterNet、NemotronLabs VoiceChat与语言无关音源分离、降噪、实时语音对话语音活动检测 VADSilero VAD、Sortformer与语言无关流式端点检测、说话人分离音乐生成MiniMax Music 3多语言歌词44.1 kHz 立体声输出输出格式方面WAV 开箱即用MP3/FLAC/OGG/Opus 依赖系统里的 ffmpeg。平台限定 Apple SiliconM1–M4Python 3.10iOS/macOS 端另有 mlx-audio-swift Swift 包可做端上集成。深挖一用 transcription_delay_ms 做流式转写会议字幕、语音助手这类场景等不了整段结果。MLX-Audio 的 STT 侧有三类支持流式的模型Voxtral Realtime 面向低延迟Nemotron 3.5 ASR 走 cache-aware 流式VibeVoice-ASR 用 chunk 切分处理长音频。用法统一给generate()传streamTruefrom mlx_audio.stt.utils import load model load(mlx-community/Voxtral-Mini-4B-Realtime-2602-4bit) for chunk in model.generate(audio.wav, streamTrue): print(chunk, end, flushTrue)Voxtral Realtime 还有一个transcription_delay_ms参数直接权衡延迟与准确率值越低越快但错误率更高默认约 240ms。做实时字幕的话先调这个值。仓库的examples/streaming_transcription.py是完整的流式 demo跑一遍就能看到效果。深挖二4-bit 量化让内存占用降到四分之一7B 参数的模型以 bfloat16 加载要吃掉约 17GB 内存README 以 KugelAudio 为例低配 MacBook 直接装不下。MLX-Audio 自带量化转换工具转完之后load_model就能直接加载 4bit 版本python -m mlx_audio.convert --hf-path HF 仓库 --mlx-path 输出目录 --quantize --q-bits 4支持affine2/3/4/6/8 bit、mxfp4、mxfp8、nvfp4等模式。TTS 场景下 8bit 与 bf16 的听感差异基本不可闻上文示例里的 0.6B 模型就是现成的 8bit 版低内存机器建议直接从这类量化版起步。接入路径CLI、Python 包与 OpenAI 兼容 API命令行mlx_audio.tts.generate合成和python -m mlx_audio.stt.generate转写上文示例就是完整形态。Python 集成只需一行from mlx_audio.tts.utils import load_model波形以result.audiomx.array返回自行落盘或交给播放器都行。要给前端或其他设备提供服务启动 API 服务器mlx_audio.server --host 0.0.0.0 --port 8000。最常用的两个端点POST /v1/audio/speech做文本转语音请求格式与 OpenAI 兼容现有 SDK 客户端改一下 base_url 就能接上POST /v1/audio/transcriptions做语音转文本。Web UI 需要先克隆仓库git clone https://gitcode.com/GitHub_Trending/ml/mlx-audio用pip install -e .[dev, server]装依赖再到mlx_audio/ui/目录执行npm install npm run dev即可看到带 3D 音频可视化的界面。examples/bible-audiobook/里还有一个批量生成有声书的例子展示了长文本切分后批量调用 Kokoro 的流程。踩坑与调优ffmpeg、内存、音色预设保存 MP3 报错→ 系统缺 ffmpeg。WAV 不依赖它但 MP3/FLAC/OGG/Opus 都要。解法brew install ffmpeg。模型加载 OOM 或明显偏慢→ bf16 大模型超出内存。换成-8bit/-4bit后缀的版本或改用更小的模型Kokoro-82M 只有几百 MB日常音色足够快。Kokoro 生成中文或日文报缺文本处理器→ 缺 misaki 依赖。解法pip install misaki中文还需misaki[zh]。一句话带走记住这几点就够了pip install mlx-audio一行搞定安装模型首次运行从仓库下载CLI 与 Python 共用缓存。选型轻量音色用 Kokoro-82M中英混排用 Qwen3-TTS CustomVoice声音克隆用 csm-1b高准确率转写用 Parakeet v3 或 Whisper实时字幕用 Voxtral Realtime。低内存机器从 8bit/4bit 量化版起步听感几乎无损内存占用降为四分之一。API 服务器是 OpenAI 兼容的现有客户端改 base_url 即可不用重写对接代码。【免费下载链接】mlx-audioA text-to-speech (TTS), speech-to-text (STT) and speech-to-speech (STS) library built on Apples MLX framework, providing efficient speech analysis on Apple Silicon.项目地址: https://gitcode.com/GitHub_Trending/ml/mlx-audio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考