Apple SpeechAnalyzer 实测:本地 ASR 首次跟 Whisper 掰手腕

iOS 26 上线的 SpeechAnalyzer API 是苹果十年来第一次认真做端上语音识别,第三方基准测试显示它在英文场景已经能咬住 Whisper Large-v3,速度还快出一个数量级。
苹果这回是真的想抢 Whisper 的地盘
7 月上旬,一份来自 Inscribe 团队的基准测试报告在开发者社区里流传开来。他们把 iOS 26 / macOS 26 中新推出的 SpeechAnalyzer API 拉出来,跟 OpenAI 的 Whisper 系列、以及苹果自家上一代 SFSpeechRecognizer 做了一次同赛道对比——这是 SpeechAnalyzer 自 WWDC25 首次亮相以来,社区里最系统的一份第三方评测。
结论比预期更狠:在英文长音频转写这个 Whisper 最擅长的场景里,SpeechAnalyzer 的词错率(WER)已经能咬住 Whisper Large-v3,且推理速度快出接近一个数量级,还是纯本地跑的。对做语音笔记、会议记录、播客工具的开发者来说,这基本改写了「iOS 端上 ASR 选型」这道题的答案。

一个被冷落十年的 API 换代
先说清楚背景。苹果的 Speech 框架其实早在 iOS 10 就有了,SFSpeechRecognizer 是很多老资格 iOS 开发者的第一段 ASR 记忆。但这个 API 有几个陈年痛点:
- 早期是云端服务,得联网、有配额限制,隐私敏感场景基本没法用;
- 后来虽然靠
supportsOnDeviceRecognition加了端上模式,但模型效果和 Whisper 一比就露怯,尤其是对专有名词、口音、长句子; - API 本身是老派 Objective-C 风格,回调、delegate、状态机一大堆,跟现代 Swift 的异步范式格格不入。
结果就是过去两三年,稍微认真做语音功能的 iOS 应用几乎都跑去集成 Whisper.cpp、MLX-Whisper、或者直接调 OpenAI 的 /audio/transcriptions。苹果自家的 Speech 框架在开发者心里长期是「能用但没人想用」的状态。
WWDC25 上,苹果宣布用 SpeechAnalyzer 全面替代旧 API,并且直接把它塞进了系统级的备忘录、语音备忘录、手记这些应用背后——这是一个很明显的信号,苹果自己也知道,如果端上 AI 这场仗打不好,Vision Pro 上的实时字幕、AirPods Live Translation、Apple Intelligence 的语音入口这些故事就都撑不起来。
API 长什么样:Swift-first,模块化,AsyncSequence
从代码手感上看,SpeechAnalyzer 是彻底的现代 Swift API。整个数据流围绕 AsyncSequence 展开,识别过程被拆成可组合的 SpeechModule——SpeechTranscriber 负责转写,SpeechDetector 负责端点检测,未来还能挂载别的分析模块(比如说话人分离、情绪判断,虽然目前没正式开放)。
一个最小可用的转写流程大致是这样的:
import Speech
func setUpTranscriber() async throws {
let transcriber = SpeechTranscriber(
locale: Locale(identifier: "zh-CN"),
preset: .progressiveTranscription
)
// 确保模型已下载到设备
guard await SpeechTranscriber.supported(locale: transcriber.locale) else {
throw TranscriptionError.unsupportedLocale
}
if await !SpeechTranscriber.installed(locale: transcriber.locale) {
try await AssetInventory.download(for: [transcriber])
}
let analyzer = SpeechAnalyzer(modules: [transcriber])
let (inputStream, continuation) = AsyncStream.makeStream(of: AnalyzerInput.self)
try await analyzer.start(inputSequence: inputStream)
// 消费转写结果
for try await result in transcriber.results {
print(result.text, result.isFinal)
}
}
几个值得注意的细节:
- 模型不再打包进系统,而是按语言按需下载,通过
AssetInventory管理。这跟 Whisper 那种「一个多语言模型走天下」的思路正好相反,苹果选择了每种语言一个专用模型,包体小、加载快。 AnalysisContext可以注入领域词汇,比如医疗术语、人名、代码片段,等价于 Whisper 的initial_prompt,但接口更结构化。- 实时和批量共用一套接口,
analyzeSequence吃一个AVAudioFile是批处理,喂一个AsyncStream就是实时流式。旧 API 里那种「实时和离线两套调用方式」的分裂彻底没了。
基准测试细节:不是全面碾压,但性价比惊人
回到那份 Inscribe 的对比测试。他们用 LibriSpeech test-clean 和一批真实会议音频做了跨模型对比,几个关键数据点值得单独拎出来:
- 英文 WER:SpeechAnalyzer 在 test-clean 上做到 ~3.2%,Whisper Large-v3 是 ~2.8%,Whisper Small 是 ~4.5%。也就是说,苹果的这颗端上模型效果介于 Whisper Small 和 Large 之间,更接近 Large 一侧。
- 速度:M2 MacBook Air 上转写一段 60 秒音频,SpeechAnalyzer 大约 0.8 秒,Whisper Large-v3(MLX 版本)大约 6 秒,差了 7 倍以上。iPhone 15 Pro 上的差距更夸张。
- 内存:SpeechAnalyzer 峰值内存不到 500MB,Whisper Large 光模型权重就 3GB 起步。
- 老 API 对比:
SFSpeechRecognizer端上模式的 WER 在 8% 左右,被新 API 甩开一大截。

弱点也很明显。中文、日文、以及部分小语种上的表现还没到 Whisper Large 的水平,尤其是带口音、多说话人的复杂场景。另外,SpeechAnalyzer 目前不做翻译(Whisper 支持任意语言 → 英文的直接翻译),也没有暴露时间戳级别的置信度,做字幕对齐还得自己想办法。
判断:这次不是刷榜,是场景匹配
苹果这一步走得挺聪明。它没打算跟 Whisper 拼「所有语言、所有场景、最高精度」,而是死死盯住端上、低延迟、常见语言这个具体象限——恰好是 iPhone / iPad / Mac 上原生应用最需要的组合。
对开发者来说,选型逻辑基本可以重写:
- 做iOS/macOS 原生应用、只要覆盖英语 + 几种主流欧洲语言,SpeechAnalyzer 是新的默认选项。零成本、零网络、零隐私顾虑,效果够用。
- 做跨平台(Web、Android、桌面)或者需要极高精度、多语言、翻译,Whisper 或者云端 ASR 仍然是刚需。
- 做中文重度场景,暂时别指望 SpeechAnalyzer 一步到位,本地跑个 Whisper Large-v3、或者接一个云端识别服务(火山、讯飞、云端 Whisper 都行)依然更稳。
值得留意的是,SpeechAnalyzer 和 Foundation Models framework(也是 iOS 26 的新东西)是配套设计的。语音进来先由 SpeechAnalyzer 转文本,再直接扔给端上的 Apple Intelligence 模型做摘要、改写、意图识别——整条 pipeline 一次都不出芯片。这套「本地 ASR + 本地 LLM」组合拳,可能是苹果今年在开发者层面最实用的一次更新,比那些还没交付的 Siri 新体验实际得多。
和云端 ASR 的另一场竞争
往外一层看,SpeechAnalyzer 的进步也在挤压云端 ASR 的市场。之前很多产品选云端识别,原因就是「本地跑不动、跑不好」,现在这个前提在苹果生态里被削弱了。
当然,云端仍有它的优势场景:跨平台一致体验、超大模型带来的极端精度、跟 LLM 的紧耦合调用。做产品的团队现在的常见做法是混合部署——本地能扛就本地扛,扛不住的语言、扛不住的复杂音频回落到云端。对这类混合方案,一个统一的 API 网关能省掉不少工程量:像 OpenAI Hub 这类聚合平台,同一个 Key 就能调 Whisper、GPT、Claude、Gemini 各家的语音和文本接口,国内直连、兼容 OpenAI 格式,作为端上模型的「兜底通道」是个比较务实的选择。
一些还没解答的问题
目前社区里悬而未决的几个点,值得后续关注:
- 中文模型什么时候能追上?苹果 WWDC25 上没给时间表,但从备忘录中文实时转写的效果来看,内部版本可能比公开 API 更强。
- 说话人分离(Diarization):
SpeechModule协议明显是为多模块留了口子,第三方能不能自己实现一个 diarization module 挂进去,官方文档没说死。 - 隐私和企业合规:完全端上跑意味着音频不出设备,对医疗、法律、金融这些行业是个大卖点。但企业分发的应用能不能预装模型、绕过用户手动下载,还需要看后续 MDM 层面的支持。
对做 iOS 语音类工具的团队来说,接下来两三个月大概率会看到一波「切换到 SpeechAnalyzer」的产品更新。老牌工具比如 Just Press Record、AudioPen、以及各种 AI 会议助手——谁先切完谁先享受电池和体验红利。而对 Whisper 阵营来说,这不是终结,但确实是一个信号:端侧 ASR 这块,苹果终于回来了。
参考来源
- huggingface.co/openai/whisper-large-v3 — Whisper Large-v3 官方模型卡,本文对比的基准之一
- github.com/openai/whisper — Whisper 官方仓库,用于复现基准测试的参考实现
- github.com/ml-explore/mlx-examples — Apple MLX 的 Whisper 示例,Mac 端 Whisper 性能对比的基础


