常见问题

speech-swift 能在 iOS 上运行吗?

Kokoro TTS、Qwen3.5-Chat、Silero VAD、Parakeet ASR、DeepFilterNet3 和 WeSpeaker 都可以通过 CoreML 在 Neural Engine 上运行于 iOS 17+。基于 MLX 的模型(Qwen3-ASR、Qwen3-TTS、Qwen3.5-Chat MLX、PersonaPlex)需要 Apple Silicon 上的 macOS 14+

需要联网吗?

仅在首次从 HuggingFace 下载模型时需要(自动执行,缓存在 ~/Library/Caches/qwen3-speech/)。之后所有推理都完全离线运行,不访问网络。无需云端 API,也无需 API 密钥。

speech-swift 与 Whisper 相比如何?

Qwen3-ASR-0.6B 在 M2 Max 上达到 RTF 0.06——比通过 whisper.cpp 的 Whisper-large-v3(RTF 0.10)快 40%——在 52 种语言上精度相当。speech-swift 提供原生 Swift async/await API,而 whisper.cpp 需要 C++ 桥接层。

完整的 ASR 和 TTS 与 whisper.cpp、Apple SFSpeechRecognizer、AVSpeechSynthesizer 以及云端 API 的对比表见 对比表

支持哪些 Apple Silicon 芯片?

所有 M 系列芯片:M1、M2、M3、M4 及其 Pro/Max/Ultra 型号。需要 macOS 14+(Sonoma)或 iOS 17+。

可以在商业应用中使用吗?

可以。speech-swift 采用 Apache 2.0 许可证。底层模型权重有各自的许可证——请查阅每个模型在 HuggingFace 页面上的具体说明。

需要多少内存?

约 3 MB(Silero VAD)到 约 6.5 GB(PersonaPlex 7B)。典型用量:

可以同时运行多个模型吗?

可以。将 CoreML 模型放在 Neural Engine 上,同时把 MLX 模型放在 GPU 上,可以避免硬件争用——例如 Silero VAD(CoreML)+ Qwen3-ASR(MLX)+ Qwen3-TTS(MLX)。

有 REST API 吗?

有。audio-server 二进制通过 HTTP REST 和 WebSocket 端点暴露所有模型,包括一个兼容 OpenAI Realtime API 的 WebSocket 接口 /v1/realtime。服务器命令请参阅 CLI 参考

如何安装?

Homebrew:

brew tap soniqo/speech https://github.com/soniqo/speech-swift && brew install speech

Swift Package Manager:

.package(url: "https://github.com/soniqo/speech-swift", branch: "main")

完整说明见 快速开始指南。

提供哪些语音模型?

语音转文字:Qwen3-ASR(52 种语言,MLX)和 Parakeet TDT(25 种语言,CoreML)。

文本转语音:Qwen3-TTS(streaming,10 种语言)、CosyVoice3(声音克隆,9 种语言)以及 Kokoro-82M(iOS 就绪,50 种音色,10 种语言)。

语音到语音:PersonaPlex 7B(full-duplex 对话,18 种预设音色)。

音频分析:Silero + Pyannote VAD、说话人分离(Pyannote + Sortformer)、WeSpeaker 说话人 embedding 以及 DeepFilterNet3 降噪。

LLM:Qwen3.5-0.8B Chat(端侧,INT4 MLX + INT8 CoreML,流式 token)。

Soniqo 可以在 Android 上运行吗?

可以。speech-android SDK 提供 Kotlin API,使用 ONNX Runtime 与 NNAPI 硬件加速。在 Android 8+(API 26)上支持 arm64-v8a。模型首次使用时会自动从 HuggingFace 下载(约 1.2 GB)。安装说明见 快速开始 — Android

Soniqo 可以在 Linux 上运行吗?

可以。speech-android 项目包含面向嵌入式与车载 Linux(Yocto、边缘设备)的 C API。使用 ONNX Runtime,Qualcomm 硬件可选启用 QNN 加速。支持 ARM64 和 x86_64。安装说明见 快速开始 — Linux

可以在不同平台之间共享模型吗?

核心模型(Parakeet、Kokoro、Silero、DeepFilter)在 Android 和 Linux 上都使用 ONNX 格式。Apple 使用 CoreML/MLX 格式。底层权重相同,只是针对各平台硬件加速优化后的导出格式不同。