AI 新發佈 ·

AnySpeechRecognizer:功能、模型與使用指南

AnySpeechRecognizer 是一個開源 Swift 套件,利用 Core ML 將第三方語音識別模型和說話者分頁功能帶到 Apple 平台。它對標 Apple 的 Speech 框架,並讓開發者自由換用 NVIDIA Parakeet 和阿里巴巴 Qwen3-ASR 等模型。

重點
  • 其實現了 Apple 的 SpeechAnalyzer API,同時支援 Core ML 本地開源模型。
  • 支援的語音引擎包括 NVIDIA Parakeet 系列與阿里巴巴 Qwen3-ASR。
  • 內建說話者分頁功能,使用 NVIDIA Streaming Sortformer 追蹤最多四位說話者。
  • 模型可直接從 Hugging Face Hub 下載至本地標準快取區。
本文內容
  1. 什麼是 AnySpeechRecognizer?
  2. 支援的語音識別模型
  3. 使用 Sortformer 進行說話者分頁
  4. 如何設定與使用 AnySpeechRecognizer
  5. 限制與系統需求
  6. 常見問題

什麼是 AnySpeechRecognizer?

AnySpeechRecognizer 是由 Hugging Face 開發的 Swift 套件,其實現了 Apple 的語音轉文字 API,同時允許開發者選擇其他的識別引擎。它對標 macOS 26 和 iOS 26 中引入的 SpeechAnalyzer 框架,可以使用 Apple 的預設引擎或運行在 Core ML 上的本地模型。

該套件還引入了說話者分頁(speaker diarization)功能,能追蹤誰在何時說話。透過在裝置上運行開源模型,它讓開發者無需將資料傳送到外部雲端服務即可轉錄音訊。

AnySpeechRecognizer 一覽
開發者
Hugging Face
目標平台
macOS 26+、iOS 26+
語音模型
Apple Speech、NVIDIA Parakeet、阿里巴巴 Qwen3-ASR
說話者分頁模型
NVIDIA Streaming Sortformer (v2, v2.1)
運行時引擎
Core ML 與 GPU
套件語言
Swift

支援的語音識別模型

AnySpeechRecognizer 支援多個已轉換為 Core ML 格式並託管於 Hugging Face Hub 的開源語音轉文字模型。開發者可根據語言需求、時延需求以及可用儲存空間來選擇模型。

NVIDIA Parakeet v3 支援 25 種歐洲語言,具備自動語言檢測、即時臨時結果、詞級時間戳和詞級信心分數。Moondream 對 Parakeet Ultra 變體進行了後訓練以獲得更高準確率,而 Parakeet Unified EN 則僅針對英文。Parakeet 模型下載大小約為 600 MB,另外可選配 590 MB 的串流編碼器。

阿里巴巴 Qwen3-ASR 提供 0.6B 和 1.7B 參數版本,需要 0.9 GB 至 2.4 GB 的儲存空間。它支援 30 種語言和 22 種中文方言,包括粵語、普通話、日文和韓文,但它在 GPU 上運行,以長達 40 秒的片段區塊處理檔案,不支援詞級時間戳或即時串流臨時結果。

AnySpeechRecognizer 支援的模型比較
模型規模語言覆蓋範圍即時串流功能下載大小
Parakeet TDT v30.6B25 種歐洲語言詞級時間戳、信心分數、臨時結果~600 MB(+590 MB 即時編碼器)
Parakeet Ultra0.6B25 種歐洲語言詞級時間戳、信心分數、臨時結果~600 MB(+590 MB 即時編碼器)
Parakeet Unified EN0.6B僅限英文詞級時間戳、信心分數、臨時結果~600 MB(+590 MB 即時編碼器)
Qwen3-ASR0.6B, 1.7B30 種語言及 22 種中文方言每 40 秒片段輸出單一最終結果0.9 GB 至 2.4 GB
Streaming Sortformer未說明未說明最多支援 4 位同時說話者~250 MB

使用 Sortformer 進行說話者分頁

AnySpeechRecognizer 為 Apple 的 API 補充了說話者分頁功能,這是預設 Speech 框架所欠缺的能力。它整合了 NVIDIA 的 Streaming Sortformer 模型,以檢測對話期間是誰在說話。

該分頁器可同時追蹤最多四位不同的說話者,即使他們的聲音重疊亦然。名為 SpeakerTimeline 的組件會將分頁器的輸出與轉錄器的詞級時間戳對齊,使應用程式能夠顯示按說話者輪次分段的格式化逐字稿。

該套件預設使用 Sortformer v2,並提供 Sortformer v2.1 作為可選項。Hugging Face 指出,Sortformer v2.1 在額外的會議音訊上進行過訓練,在會議測試中展現出更高的準確率。

如何設定與使用 AnySpeechRecognizer

AnySpeechRecognizer 旨在作為 Swift 中 Apple SpeechAnalyzer 框架的直接替代方案。開發者可透過更新框架匯入並初始化自訂模型設定,來替換 Apple 的原生引擎。

  1. 將 AnySpeechRecognizer 套件新增至你的 Swift 專案中,並在原始碼檔案中匯入 Speech 和 AnySpeechRecognizer。
  2. 使用你選擇的模型設定初始化 SpeechTranscriber,例如 ParakeetSpeechModel(variant: .v3) 或 QwenSpeechModel。
  3. (可選)使用 SortformerDiarizationModel() 初始化 SpeakerDiarizer 以追蹤說話者輪次。
  4. 傳入你的模組並呼叫 AssetInventory.assetInstallationRequest,然後等待 downloadAndInstall() 從 Hugging Face Hub 下載 Core ML 模型權重。
  5. 使用你的轉錄器和分頁器模組初始化 SpeechAnalyzer,然後傳入音訊檔案或即時音訊串流緩衝區以接收轉錄序列。
貼士

在 App Store 沙盒之外運行的 Mac 應用程式會將下載的權重儲存在標準 Hugging Face 快取資料夾中,從而允許與本地 Python 腳本直接共用模型。

限制與系統需求

AnySpeechRecognizer 需要支援 SpeechAnalyzer 的 Apple 作業系統版本,具體為 macOS 26 或 iOS 26 及更高版本。該套件由 Hugging Face 在搭載 M4 Max 的 Mac Studio 上使用 macOS 27.0.1 進行了基準測試。

硬體需求因模型而異。Qwen3-ASR 在 GPU 上執行,速度明顯慢於 Parakeet,因此在實時麥克風轉錄中的實用性較低。它亦缺乏對部分臨時結果、詞級時間戳和信心分數的支援。

Parakeet 提供更快的處理速度,但需要額外的 8 秒即時編碼器模組來降低即時延遲。Hugging Face 報告指出,雖然此即時編碼器將分析時間縮短了約三分之一,但會導致詞錯率(WER)略為上升。

常見問題

什麼是 AnySpeechRecognizer?
AnySpeechRecognizer 是由 Hugging Face 開發的開源 Swift 函式庫。其實現了 Apple 的 SpeechAnalyzer API,同時允許開發者在裝置上運行 Parakeet 和 Qwen3-ASR 等開源 Core ML 模型。
AnySpeechRecognizer 支援哪些語言?
語言支援取決於所選的引擎。NVIDIA Parakeet 支援 25 種歐洲語言,而阿里巴巴 Qwen3-ASR 支援 30 種語言及 22 種中文方言,包括粵語、普通話、日文和韓文。
AnySpeechRecognizer 是否包含說話者分頁功能?
是的,AnySpeechRecognizer 包含由 NVIDIA Streaming Sortformer 驅動的 SpeakerDiarizer 模組。它可以在與逐字稿相同的時間軸上同時區分和追蹤最多四位說話者。
我可以向 AnySpeechRecognizer 新增自訂語音模型嗎?
是的,開發者可以將自訂語音引擎連接至 AnySpeechRecognizer。該套件透過實現用於設定的 SpeechRecognitionModel 協定和用於對話執行的 SpeechRecognitionExecutor 協定來實現此功能。
AnySpeechRecognizer 的模型檔案儲存在哪裡?
AnySpeechRecognizer 的模型資產會根據需要從 Hugging Face Hub 儲存庫下載。在沒有應用程式沙盒限制的 macOS 上,檔案會儲存在標準 Hugging Face 快取目錄中。

資料來源:Hugging Face

想 AI 給出的答案是你的品牌?

免費檢查你的網站對 ChatGPT、Gemini 與 Perplexity 準備得有多好,約十秒完成。

延伸閱讀:原生應用程式,還是網頁應用程式?2026 年怎樣選