兩個新 package,跟住 AnyLanguageModel 嘅思路行落去

Hugging Face 29 號宣佈推出兩個 Swift package:AnySpeechRecognizer 同 AnyDecisionModel,跟住 AnyLanguageModel 1.0 嘅路線,把 Apple 平台上嘅 SpeechAnalyzer 同決策 API 都改成「你揀引擎」。

AnySpeechRecognizer 跟住 macOS 26 同 iOS 26 嘅 SpeechAnalyzer 設計,保留原有 API,只係俾你換背後的引擎。你 import Speech 改做 import AnySpeechRecognizer,用嘅系同一套 SpeechTranscriber、DictationTranscriber、SpeechDetector、AssetInventory,Apple 嘅 Speech framework 係預設。想轉 Parakeet 就只改你點樣建 transcriber:

let transcriber = SpeechTranscriber(
    model: ParakeetSpeechModel(variant: .v3),
    transcriptionOptions: [],
    reportingOptions: [.volatileResults],
    attributeOptions: [.audioTimeRange]
)

Asset 安裝、analyzer 運行、讀 async 序列呢幾步係一樣。

背後可以行嘅語音模型有:

  • Parakeet v3(NVIDIA Parakeet TDT 0.6B v3):polyglot,識 25 種歐洲語,自動判斷語言,唔使 hand 你俾 locale。
  • Parakeet Ultra:Moondream 對 v3 做後訓練嘅版本,按 Hugging Face 嘅量度,大多數指標比 v3 準確。
  • Parakeet Unified:NVIDIA 嘅英語版 Parakeet。

以上三款走 Core ML runtime,支援檔案同 live input、volatile results、word timing 同 word confidence。

  • Qwen3-ASR:Alibaba 嘅語音模型,有 0.6B 同 1.7B 兩個尺,識 30 種語言同 22 種中文方言,包括國語、粵語、日語、韓語,係 Parakeet 冇覆罩嘅部分。自動偵測語言。

AnyDecisionModel 處理 yes-or-no、multiple-choice、rating-scale 類型嘅問題,輸出帶 type 同 probability 嘅結構化答案,唔係生文字,而係直接由模型概率派生。引擎可以是 MLX、Core AI、llama.cpp 嘅本地模型,或者 Jev、Ollama 提供嘅決策模型。兩個 package 都支援由 Hugging Face Hub 下載 open model,喺裝置上運行。

模姐驗嚇貨

Hugging Face 呢一年嘅套路已經好清楚:任何 Apple API,都拆返嚟俾你揀引擎。上頭 AnyLanguageModel,今次 Speech 同 Decision,下頭可能仲有視覺。呢個路徑對開發者係實打實利好,因為「你揸住邊個掣」呢個問題,答案從「全部喺 Apple」變成「你有得揀」。

但幾點要留意:

  1. Qwen3-ASR 嘅粵語辨識能力,係基於 Alibaba 嘅聲稱,佢話識 22 種中文方言;Parakeet 冇呢能力,所以如果你做粵語應用,呢個係實打實嘅差異。
  2. 呢度係 model choice,唔係「完全開源」。開放權重、授權、商用條件、可修改性係唔同嘅事,要個別核對。

對香港開發者嚟,呢個路徑嘅意義:本地行語音模型,唔使資料出鏡,同時唔綁死單一引擎。但模型授權、商用條款、地區限制、以及「呢啲模型本身係咪真係 open」,都要自行核對 Hugging Face Hub 嘅 model card。